Если вы помните конкретную строку, вы можете выполнить поиск данных по всему устройству при условии, что никакие другие данные не перезаписали их. Это работает для любого файла.
grep -a -B100 -A100 "command/you remember" /dev/sda1 > /tmp/cron.ressurected
Отрегулируйте -B (перед )и -A (после )в соответствии с размером вашего файла, но 100 строк вокруг должно быть достаточно для файла cron. Параметр -необходим, чтобы заставить grep рассматривать ваше устройство как текст.
Затем вам придется убрать двоичный беспорядок до и после ваших данных в результирующем файле.
И это занимает много времени. Удачи.
Вы также можете обратиться к этому ответу:Восстановление/восстановление удаленных файлов | Обмен стеками Unix и Linux
rsync -a -T tmpdir /foo/bar/ /foo2/bar
(Обратите внимание, что /
в конце /foo/bar/
имеет значение.)
Утилита rsync
будет записывать файлы в tmpdir
перед тем, как переместить их в правильное имя в /foo2/bar
. Вы можете, например, использовать скрытый каталог в /foo2/bar
для хранения транзитных файлов в -:
mkdir -p /foo2/bar/.tmp
rsync -a -T /foo2/bar/.tmp /foo/bar/ /foo2/bar
См. также руководство rsync
, особенно раздел об опции -T
.
Приведенная выше команда рекурсивно скопирует /foo/bar
в /foo2/bar
. Чтобы отключить рекурсивность, используйте rsync -a --no-recursive...
(. Параметр -a
включает рекурсию, а также синхронизацию метаданных файла, а --no-recursion
отключает только аспект рекурсии-a
).