Чи можливо відновити файли / каталоги, які видаляються з терміналу за допомогою rm
і rm -r
?. Якщо файл видалено з графічного інтерфейсу, його можна буде відновити зі сміття, але як відновити файл, якщо його видалити за допомогою утиліти rm ?.
Чи можливо відновити файли / каталоги, які видаляються з терміналу за допомогою rm
і rm -r
?. Якщо файл видалено з графічного інтерфейсу, його можна буде відновити зі сміття, але як відновити файл, якщо його видалити за допомогою утиліти rm ?.
Відповіді:
Для цього я використовую trash-cli
пакунок і наступний псевдонім у своєму~/.bashrc
alias rm=trash
І trash-cli
пакет може бути встановлений з допомогою команди followoing: sudo apt-get install trash-cli
.
Видалені файли будуть переміщені в кошик, і ви можете побачити їх у кошику nautilus.
Ви завжди можете отримати доступ до реального rm
, скориставшись одним із наступних методів:
command rm something
'rm' something
\rm something
Є також команди для доступу до смітнику від терміналу trash-list
, restore-trash
(або trash-restore
), trash-empty
що встановлюється з пакета трешу-клі (то побачити їх сторінку людини).
Останнє зауваження, такий псевдонім не бажано використовувати для суперкористувача, оскільки він може перешкоджати роботі системи.
Видалення його з терміналу видаляє його назавжди - відновлення дуже важке, а іноді й неможливе.
Якщо ваш тип розділу ext3
(перевірити це за допомогою System->Administration->Disk Utility
), подивіться на ext3undel .
Якщо це не так (якщо ви встановили Ubuntu з налаштуваннями за замовчуванням ), спробуйте extundelete
програму.
Немає гарантій, що ви відновите що-небудь.
Ви шукаєте: extundelete - утиліта для відновлення видалених файлів з розділу ext3 / ext4
Щоб знайти такий пакет, ви можете спробувати: apt-cache search undelete
Щоб скористатися утилітою, встановіть її за допомогою: sudo apt-get install extundelete
Після установки викликайте man extundelete
і уважно вивчайте його.
Як альтернатива, якщо ви конкретно знаєте, який тип файлу це ...
sudo apt-get install foremost
Тепер відкрийте, /etc/foremost.conf
і ви побачите довгий список коментованих рядків. Якщо тип вашого файлу існує, коментуйте рядок (ви також можете видалити неактуальні рядки).
Якщо тип файлу не існує, додайте власний рядок. Скажіть, я хочу відновити .css файл, і я знаю його близько 40K. Я можу додати це:
css n 40000 Theme\sName: Plugin\sFixes
2-й стовпець стосується чутливості до регістру, третій стовпець посилається на верхню межу розміру, 4-й стовпець - як починається файл (не забудьте використовувати символи, що увійшли), а останній - як зазвичай закінчується файл.
Скористайтеся наступною командою (відредагуйте диск відповідно. Можна перевірити за допомогою df
команди)
foremost -v -T -c /etc/foremost.conf -i /dev/sda -o output
Що буде далі - це передусім створити папку під назвою вихід та скинути всі відновлені дані (у даному випадку) у папку. Звідти ви можете скористатись diff
або meld
порівняти відновлені "файли" та побачити, які є найбільш сучасними.
php
вихідний файл, використовуючи rm -fr php/
2 php
файли. Менш ніж за 2 хвилини вони були відновлені ідеально. У .conf
файл я додав:php n 40000 <?php ?> ASCII
Якщо говорити найбільш абстрактними термінами, щоразу, коли ви видаляєте файл із графічного інтерфейсу, файл "переміщується" до спеціального "буфера", що називається каталогом trash
. Ви можете знайти його в home
каталозі ~/.local/share/Trash/
. Файли, "видалені" з цього каталогу, будуть дійсно видалені. Це справжнє видалення - це те, що відбувається при використанні rm
файлу.
Відновити видалені файли надзвичайно важко. Файли у файловій системі представлені у вигляді вузлів на B-дереві тощо. Коли файл видаляється за допомогою rm
, дерево оновлюється, кількість жорстких посилань зменшується, відповідний запис у списку каталогів видаляється. Якщо взагалі у вашому файлі було міцне посилання, ваш файл абсолютно безпечний. Ви можете зробити file / -samefile filename
. Ви можете шукати файл, якщо пам’ятаєте і його номер inode (навряд чи це так).
Інший випадок, коли жодна з перерахованих вище можливостей не відповідає дійсності. Щоразу, коли ви rm
створюєте файл, запис файлу в каталозі видаляється, зменшуючи кількість жорстких посилань на одиницю. І якщо кількість жорстких посилань опуститься до нуля, то вказівник на файл в inode опускається або позначається видаленим. У будь-якому випадку ваш файл "все ще" знаходиться на жорсткому диску. Файл фактично стирається з жорсткого диска лише після наступного перезавантаження. Відновлення файлів у такий час надзвичайно важке, передбачає перехід дерева файлової системи та вкладок, що представляють фактичні місця дискового блоку. Є популярний інструмент, про який я чув, але ніколи його не використовував extundelete
. Хоча гарантії немає, варто спробувати.
Після успішного відновлення файлів чи ні, поспішайте робити регулярні резервні копії. На Ubuntu це надзвичайно просто.
Вибачте, але файли, видалені з командного рядка з "rm" та "rm -f", обходять "Trashcan", який у вас є на робочому столі Gnome.
Ви також можете запитати, чи існують інструменти для відновлення файлів extfs, як наприклад, для FAT та NTFS. (Я не знаю жодного, але я був би здивований, якби їх не було.)
використовуйте утиліту " rm-trash ", яка обробляє, переносить їх у кошик для подальшого пошуку та підтримує всі параметри команди "rm".
sudo add-apt-repository ppa:nateshmbhat/rm-trash
sudo apt-get update
sudo apt-get install rm-trash
"rm-trash" є
rm