Відповіді:
Я б радив не одразу встановлювати якусь утиліту. По суті, ваш найбільший ворог тут - дискові записи. Ви хочете уникнути їх будь-якою ціною прямо зараз.
Ваша найкраща ставка - це автоматичне резервне копіювання, створене вашим редактором - якщо воно існує. Якщо ні, я б спробував наступний трюк за допомогою grep, якщо ви пам'ятаєте якусь унікальну рядок у вашому .tex-файлі:
$sudo grep -i -a -B100 -A100 'string' /dev/sda1 > file.txt
Замініть /dev/sda1
пристрій, на якому був файл, і замініть 'string'
унікальним рядком у вашому файлі. Це може зайняти деякий час. Але в основному, це робиться, це пошук рядка на пристрої, а потім повертає 100 рядків до і після цього рядка і ставить його file.txt
. Якщо вам потрібно більше рядків, що повертаються, просто відрегулюйте параметри -B
та -A
, відповідно, параметри. Можливо, ви отримаєте купу зайвого сміття, але ви зможете повернути текст.
Удачі.
-B100 -A100
можна замінити на еквівалент -C100
(C для "контексту"). І я б точно не користувався, -i
якби це було можливо, але мав -F
на своєму місці.
Можливо, це буде просто клопоту.
ОНОВЛЕННЯ: перш ніж спробувати цей метод, будь ласка, подивіться на відповідь Стівена .
Вам знадобиться пакет testdisk , багато місця на диску і багато часу.
PhotoRec, що входить до складу TestDisk, може відновлювати файли практично з будь-якого диска. PhotoRec підтримує пошук .tex
файлів.
Спочатку встановіть testdisk , запустивши
yum install testdisk
Примітка: Вам знадобиться багато вільного місця на іншому диску, де ви можете зберігати відновлені файли.
Відновіть усі видалені файли на диску, запустівши photorec
на вільному місці диска.
sudo photorec
і дотримуйтесь інструкцій ... (не забудьте не зберігати файли на тому самому диску, з якого ви відновлюєтесь)
Після завершення процесу всі відновлені файли повинні знаходитися в одному каталозі, де слід запустити:
find -name '*.tex' > filelist
Це виведе список файлів, який може бути тим, що ви втратили. Вам доведеться перевірити їх усі, оскільки імена файлів будуть втрачені.
Є й інші інструменти відновлення даних і найбільш ефективними є в першу чергу , PhotoRec , скальпель і магія порятунок . (Я припускаю, що викладений тут трюк "греп" недостатній) Тут ви можете знайти підручники щодо їх використання:
http://www.howtogeek.com/howto/15761/recover-data-like-a-forensics-expert-using-an-ubuntu-live-cd/
У будь-якому випадку я перестану працювати над тим, щоб якомога швидше використовувати пристрій, щоб уникнути запису диска, і завантажуватися у спеціалізовану ОС для відновлення, як-от SystemRescueCd , яка є Live-CD, щоб ви змогли встановити свій диск лише для читання в щоб запобігти подальшій втраті даних.
Ці дистрибутиви включають багато інструментів відновлення, згаданих іншими, і ви можете встановити більшість відсутніх.
Я завжди схильний мати компакт-диск із останньою версією SystemRescueCd у своєму зовнішньому USB-рідері.
ПРИМІТКА. Цю відповідь я додав стосовно якогось іншого питання щодо видалених файлів баз даних (MySQL-сервер), який було закрито, і вказав на цей. Я вважаю, що він може бути корисним і в інших подібних ситуаціях (якщо деякі процеси все ще тримають дескриптори файлів відкритими).
Якщо ваш процес все ще запущений, ви можете знайти свої файли /proc/<pid>fd/
і просто скопіювати їх. Надіслати SIGSTOP
спочатку групі процесу. Скопіюйте файли. Створіть новий екземпляр на боці та зупиніть цей або зупиніть kill -9
його та поставте файли на свої місця. InnoDB відновиться самостійно під час запуску, але якщо був якийсь MyISAM, вам доведеться це робити вручну.
У мене була така ж проблема два роки тому, і я спробував багато програм, таких як налагодження, фотореклама, ext3grep і extundelete. ext3grep була найкращою програмою для відновлення файлів. Синтаксис дуже простий:
ext3grep image.img --restore-all
або:
ext3grep /dev/sda3 --restore-all --after date -d '2015-01-01 00:00:00' '+%s' --before `date -d ‘2015-01-02 00:00:00’ ‘+%s’
Це відео - міні-підручник, який може вам допомогти.
Якщо у вас немає резервної копії, сторонній інструмент відновлення диска може відновити деякі або всі дані, але зараз ви повинні припинити використання машини. Знищені файли тепер доступні для вашої системи для їх перезапису. Після їх перезапису відновити дані надзвичайно дорого. Я мав успіх у використанні відновлення даних uflysoft (є й інші додатки для відновлення даних Mac OS) - у вас повинен бути "диск відновлення" (не ваш основний диск або диск, який ви шукаєте), на якому можна зберегти відновлені дані. Ви завантажуєтеся з диска відновлення даних (система)