У меня есть одна конкретная папка ( /home/sam/officedocuments
), которая имеет сотни папок и файлов. Я думаю, что я удалил некоторые файлы и папки по ошибке, но я не уверен.
Как найти, какие файлы / папки были:
- недавно удалил в линуксе?
- недавно меняли в линуксе?
Я просто хочу знать, какие файлы и папки были удалены. Восстановление этих удаленных файлов и папок для меня не важно.
ОС: CentOS
ext3grep
утилиту для поиска информации об удаленных файлах. С некоторыми сценариями должно быть возможно собрать простое приложение, которое выводит список удаленных файлов на основе определенного каталога. Однако этим утилитам необходим необработанный доступ к диску, и поэтому они крайне опасны, если не используются должным образом ( неблокирующие операции только для чтения должны быть полностью безопасными, если вы помните, что одновременная запись на диск может привести к тому, что текущая операция вернет поврежденные / неверные данные ).Ответы:
Используйте
find
для поиска по времени модификации. Например, чтобы найти файлы, к которым обращались за последние 3 дня:find /home/sam/officedocuments -mtime -3
Для «старше 3 дней» используйте
+3
.Практически невозможно. Когда файл удален, он просто исчез. На большинстве систем это нигде не регистрируется.
источник
3
... что мне нужно использовать в последние30
минуты?ext3
файловой системы является файловая система. ext3grep может помочь при поиске. Я получил superuser.com/a/433785/132604, в котором есть некоторая информация и ссылки на утилиты, которые можно использовать для поиска ( возможно, восстановления ) удаленных файлов и информации о них. Когда вы удаляете файл, в большинстве файловых систем он фактически не удаляется, а помечается как пространство, которое может быть перезаписано по требованию.Вы, вероятно, должны установить Inotify Tools . затем вы можете использовать
inotifywait
команду для прослушивания событий, происходящих для указанного каталога.В частности, если вы хотите следить за удаленными файлами и папками, используйте это
и записать этот вывод в некоторый файл.
Надеюсь, что это решит вашу проблему
источник
/
корне, принимая во внимание монтирование / размонтирование дисков? Я полагаю, что в этом случае единственной вещью, пригодной для ведения журнала удаления, будет модуль ядра, к которому можно подключитьсяunlink
(см. Stackoverflow.com/questions/8588386/… ); такжеman inotifywait
гласит: "--recursive: Warning: ... эта опция при просмотре ... большого дерева может занять некоторое время. Кроме того, ... будет достигнуто максимальное количество часов inotify на пользователя. максимальное значение по умолчанию - 8192; "dmesg [| tail]
должен показать вам [последние] монтирования / размонтирования, если вы об этом.Linux обычно не запрашивает подтверждения перед удалением файлов, если вы используете его
rm
из командной строки.Чтобы найти файлы, измененные за последние 30 минут, используйте
touch --date="HH:MM" /tmp/reference
для создания файл с именем reference с отметкой времени 30 минут назад (где HH: MM соответствует 30 минутам назад). Затем используйтеfind /home/sam/officedocuments -newer /tmp/reference
для поиска файлов новее, чем ссылка.Если вы удалили файлы с помощью инструмента с графическим интерфейсом, они все еще могут находиться в «мусорном ведре». Это зависит от того, что вы используете для рабочего стола. Если вы использовали
rm
из командной строки, попробуйте одну из утилит, упомянутых в этом ответе . (Шляпа для @Sampo по этой ссылке.)источник