Случайно удаляющие решающие библиотеки

Как упоминалось в комментарии, вы используете зашифрованный домашний каталог и, вероятно, используете pam_mount для его монтирования.
pam_mount монтирует раздел, используя пароль, полученный при входе в систему. Поскольку вы пытаетесь войти в систему через открытые ключи ssh, возникают 2 проблемы:

  1. Во время аутентификации с открытым ключом пароль не отправляется, поэтому он не может смонтировать ваш домашний каталог с его помощью.
  2. При использовании pam_mount ваш домашний каталог монтируется после входа в систему, но sshd должен получить ваш файл authorized_keys перед входом , и поэтому он не установлен.

Одной из этих проблем достаточно, чтобы она не работала.

Единственное решение - получить ваши открытые ключи из домашнего каталога. На самом деле это довольно просто.

Сначала скопируйте файл authorized_keys из домашнего каталога:

cp -a /home/$USER/.ssh/authorized_keys /home/$USER-authorized_keys

Затем скажите sshd использовать этот файл, добавив следующее в / etc / ssh / sshd_config (замените существующую запись, если она есть):

AuthorizedKeysFile .ssh/authorized_keys /home/%u-authorized_keys

И bounce sshd .

Обратите внимание, однако, что это не приведет к монтированию вашего домашнего каталога. Ваш домашний каталог по-прежнему требует вашего пароля для расшифровки. В зависимости от того, как вы настроили pam_mount, он может запросить у вас пароль или просто сбросить вас в оболочку с размонтированным домом.

1
21.03.2014, 00:59
3 ответа
[118467] Если вы удалите [119161]/usr/lib[119162], вы убьете свою систему, так как в этом каталоге находятся очень важные библиотеки. Как и библиотека LibC, которая используется всеми двоичными файлами. Поэтому маловероятно, что вы сможете что-то сделать. (Если вам повезло и вы прервали команду с быстрым CTRL+C до комлекции, может быть удалены только подпапки, а LibC все еще там)[12467]Если система полностью заблокирована (вход невозможен, загрузка невозможна, ... ), будем надеяться, что у вас есть Live CD того же самого дистрибутива и та же самая версия под рукой.[12468]Загрузитесь с этого CD, смонтируйте файловую систему жесткого диска и скопируйте [119163]/usr/lib[119164] с Live-системы на ту, что на жестком диске.[118472].
0
27.01.2020, 23:52
[12458] extundelete --restore-all [119150] при монтировании файловой системы только для чтения. (Убедитесь, что у вас есть расширенная файловая система.)[12459]! [119151]Убедитесь, что[119152] не устанавливается на устройство, которое вы хотите восстановить![118450].
1
27.01.2020, 23:52

В некоторых случаях можно попытаться обновить или переустановить пакет. Например, если вы удалите или испортите файл libpthread.so внутри/usr/lib ,вы можете переустановить верхний уровень и пакет контейнера, напримерglibc , чтобы восстановить файл. Эта процедура будет выполняться библиотекой зависимостей и проверкой файлов во время переустановки или обновления.

Например, попробуйте:

# to recover and take libpthread.so back.
sudo yum install glibc   
0
27.01.2020, 23:52

Теги

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