Файл, отсутствующий после fsck

Это не может быть идеальным решением, но оно будет работать.

Во-первых, для обхождения проблемы полномочий, su root.Далее exec login - причина этого в конце man login:

Рекурсивный вход в систему, как используется быть возможным в добрые старые времена, больше не работает; в большинстве целей su (1) удовлетворительная замена. Действительно, из соображений безопасности, вход в систему делает vhangup () системный вызов для удаления любых возможных процессов слушания на tty. Это должно избежать сниффинга пароля. Если Вы используете вход в систему команды, то окружающая оболочка уничтожается vhangup (), потому что это больше не истинный владелец tty. Этого можно избежать при помощи исполнительного входа в систему в оболочке верхнего уровня или xterm.

Вы можете затем быть подвешены:

Cannot make/remove an entry for the specified session

Это будет отражено в системных журналах наряду с:

login: pam_loginuid(login:session): set_loginuid failed

Вероятно, также связанный с рекурсией и что Ваш uid не соответствует Вашему имени пользователя: session opened for user golidlocks by golilocks(uid=0) (потому что goldilocksuid в su сессия была установлена на 0).

Можно обойти это путем комментирования следующей строки временно в /etc/pam.d/login:

session    required     pam_loginuid.so

Обратите внимание, что для доступа к GUI, необходимо будет, вероятно, использовать a --display (например, --display :0) аргумент Вашему приложению, как Вы были бы от консоли VT.

2
14.05.2014, 11:07
3 ответа

Попытка #1:

Возможно, он уже есть, только его имя изменилось на, например, /lost+found/#3456254 и тому подобное. Вместо вас я сделал рекурсивный file -szL для всего, что находится в /lost+found, и выполнил поиск по innodb:

find /lost+found -type f|xargs -P 1 -n 500 file -szL|grep -i innodb

Если база данных innodb еще существует, у вас есть данные для сохранения. Удачи!

Попытка №2:

Если в вашей базе данных много текстовых данных, то вам также может помочь секториальный поиск по гексе.

2
27.01.2020, 22:06

Думаю, вам не повезло.Единственный вариант, который у вас есть, - это пройти через каталог lost + found и визуально проверить каждый файл в поисках ключей к его исходной идентификации.

В будущем

В блоге есть сообщение под названием: Обновлено: Автоматически восстанавливать файлы из утерянных + найденных , в котором обсуждаются 2 инструмента, которые помогли бы в этом сценарии.

  • make-lsLR.sh - вызывайте его регулярно (cron) для создания необходимых файлов, которые хранятся в / root /. Конечно, вы можете легко изменить местоположение и исключить другие каталоги из сканирования.

  • check_lost + found.py - Второй сценарий должен запускаться, когда вашему fsck удалось испортить ваши файлы и сохранить их в каталоге lost + found. Требуется 3 аргумента: 1) исходный каталог, в котором находится ваш испорченный каталог lost + found, 2) целевой каталог, в котором будут сохранены данные, и 3) переключатель, чтобы это действительно произошло, а не пробный прогон.

Два сценария работают вместе, первый нужно запускать периодически, чтобы создать реестр файлов, которые присутствуют в вашей системе. Второй сценарий может затем использовать эту инвентаризацию в случае, если вам нужно восстановить файлы из каталога lost + found .

0
27.01.2020, 22:06

Возможно, файл (ы), о котором идет речь, не удалось восстановить с помощью fsck, поскольку они были удалены. Программа fsck пытается только восстановить и изо всех сил пытается восстановить файлы, насколько это возможно. Однако это ни в коем случае не резервное копирование. Любое действие, выполняемое fsck, в принципе необратимо.

Я был бы очень осторожен, пытаясь использовать части базы данных MySQL, содержащиеся в каталоге lost + found, поскольку база данных содержится не в одном файле, а во многих файлах, которые должны быть "синхронизированы", чтобы иметь хоть какую-то надежду на базу данных. восстановление в режиме любой надежности или целостности данных.

Что касается восстановления файлов, извините, вам придется вернуться к резервным копиям, которые вы предположительно создавали, так как данные были важны. В противном случае вам действительно не повезло.

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

1
27.01.2020, 22:06

Теги

Похожие вопросы