Мне нужно работать на сервере с файловой системой ZFS, чтобы восстановить имена удаленных файлов или восстановить реальные файлы. У меня очень базовые знания о ZFS, и я не мог найти простого способа добиться этого. Мне просто интересно, есть ли инструменты, которые делают это, или даже просто команды zfs, которые могут помочь.
Это зависит от того, включены ли (и были ли созданы) моментальные снимки для рассматриваемой файловой системы ZFS. Вы можете перечислить их с zfs list -r -t snapshot yourPool/intermediateFs/yourFs
(рекурсивно, только снимки).
Если у вас есть пригодные для использования снимки, вы можете просматривать их содержимое, ls /yourPool/intermediateFs/yourFs/.zfs/snapshot/snapshotName
и скопируйте данные оттуда (только для чтения).
Если у вас нет снимков, это сложнее: есть zdb
, отладчик ZFS, но он не так полезен, если вы не знаете, что именно хотите делать. Хорошим руководством для начала будет это Сообщение блога.
В любом случае я настоятельно рекомендую включить моментальные снимки, а также регулярное резервное копирование всех файловых систем, которые вы не можете позволить себе потерять. Резервное копирование со снимками и zfs send/recv
намного проще / быстрее, чем в других файловых системах, но работа по настоящему восстановлению файлов без резервного копирования сложнее и требует больше времени, чем в простых файловых системах.