На этот вопрос уже есть ответ здесь:
Я по ошибке удалил файл через при подключении ssh. Как я могу восстановить этот файл или, если в ubuntu есть что-то вроде корзины для мусора?
Существует особый случай, куда можно вернуть удаленный файл - когда это все еще открыто в некоторой программе. Просто необходимо выяснить, какая программа использует его.
я сохранил этот ответ Patrick от Exchange Стопки Unix и Linux, но не ссылку на оригинал.
Восстановление удаленного файла, если файл все еще открыт в программе.
, Если файл все еще открыт, можно вернуть его путем движения в/proc/PID/fd, где PID является изодромной с предварением из программы, которая имеет файл, все еще открываются. Этот каталог содержит все открытые дескрипторы файлов программы, и можно получить доступ к ним точно так же, как нормальные файлы, таким образом, Вы могли скопировать файл от/proc. †“Patrick 18 декабря в 4:44 и †“camh 19 декабря в 7:12 - Unix и Linux stackexchange
rm
по сравнению с удалением из GUIЕсли Вы использовали команду rm
, Вы действительно удаляли файл. Данные больше не достижимы от файловой системы - кроме была другая жесткая ссылка на (необычный) файл, или Вы удалили символьную ссылку.
Фактические данные могут быть все еще на диске, на дисковых блоках файловая система принимает, чтобы быть неиспользованной. Это Вы хотите восстановить его, Вы не должны писать в диск, потому что это могло снова использовать дисковое пространство, содержащее Вас данные. Вы могли попробовать регулярное восстановление данных на файле с инструментами, подходящими для файловой системы, которую Вы использовали.
Для значения по умолчанию ext4 файловая система, см.: действительно ли там какое-либо программное обеспечение восстановления доступно для ext4? и большинство ответов по вопросу, связанному ниже.
Возможно использовать корзину из командной строки, но это не настраивается по умолчанию. Пакет trash-cli
содержит инструменты командной строки для использования корзины настольной среды.
Существуют команды как trash-put
, trash-list
и т.д.;
Имена довольно длинны - Вы могли определить псевдонимы оболочки как
alias tp='trash-put'
или
alias del='trash-put'
и затем используйте del
вместо rm
удалить файлы или каталоги более безопасным способом.
Как это предположено в ответе, связанном ниже, возможно использовать имя псевдонима rm
, замена фактического rm
команда с trash-put
, но существует несколько причин не сделать это; некоторые из них:
trash-put
намного менее хорошо протестирован это rm
от 'GNU coreutils' в Ubuntu, например.rm
все не поддерживаются trash-put
rm
команда, технически.rm
требуетсяОднако см., что ответ @enzotib на файлах/каталогах Банки, удаленных с комнатой, восстанавливается? о том, как настроить псевдоним.