Как восстановить удаленный crontab

Как восстановить удаленный crontab

Я пытался редактировать crontab в терминале и случайно набрал crontab -rвместо crontab -e. Кто бы мог подумать, что такая опасная команда будет стоять прямо рядом с буквой для редактирования crontab? Более того, я все еще пытаюсь понять, как crontab -rне спросить у вас подтверждения?

Несмотря на то, что я не совсем понимаю, как это возможно, у меня возник вопрос: смогу ли я восстановить утерянный файл crontab?

решение1

Вы можете найти свои задания cron в журнале, если они уже выполнялись. Проверьте /var/log/cron.

У вас нет других вариантов восстановления, кроме сторонних инструментов восстановления.

решение2

Если вы помните определенную строку, вы можете выполнить grep по всему устройству, чтобы найти свои данные, при условии, что никакие другие данные не перезаписали их. Это работает для любого файла.

grep -a -B100 -A100 "command/you remember" /dev/sda1 > /tmp/cron.ressurected

Отрегулируйте -B(efore) и -A(after) в соответствии с размером вашего файла, но 100 строк вокруг должно быть достаточно для файла cron. Параметр -a необходим, чтобы заставить grep рассматривать ваше устройство как текст.

Затем вам придется очистить двоичный мусор до и после ваших данных в полученном файле.

И это занимает много времени. Удачи.

Вы также можете сослаться на этот ответ:Восстановление удаленных файлов | Unix & Linux Stack Exchange

решение3

Я не уверен, можно ли восстановить crontabфайл без резервной копии. Но я почти уверен, что вы можете восстановить свой crontabфайл из cronжурналов. Насколько я помню, там быстро каждая команда указана с пользователем.

Связанный контент