Ubuntu: Как расшифровать домашний каталог, поменять местами (в основном все) без переустановки?
Я только что столкнулся с проблемой с зашифрованным домашним каталогом в Ubuntu Server 10.04.
Хотя я знаю обходной путь, я хочу просто полностью удалить шифрование со всего.
Любые советы, как это сделать без полного резервного копирования и переустановки?
3 ответа
Это руководство является довольно серьезной операцией, следуйте ему, только если вы уверены в командной строке - несколько ошибок могут привести к потере всех ваших данных.
Вам нужно будет скопировать все файлы из вашего домашнего каталога в другое место, а затем скопировать их обратно, как только вы отключите шифрование, но вам не нужно переустанавливать. Допустим, у вас есть внешний диск на /media/disk-1
, Вы можете поддержать
$ cp -a /home/user /media/disk-1/
-a
делает рекурсивный и немного больше. Обязательно сделайте резервную копию всех пользователей, так как мы удалим зашифрованные копии позже.
Затем вам нужно размонтировать монтирование ecryptfs, удалить все зашифрованные файлы, остановить автоматическое монтирование и скопировать все ваши файлы обратно. Это может привести к хаосу, если вы вошли в систему с графическим интерфейсом, поэтому я либо выйду из системы и войду в систему на одной из консолей (нажмите Ctrl-Alt-F1, чтобы получить доступ к ней), либо я загружусь с живого CD/ Флешка для этого. В любом случае убедитесь, что ваши резервные копии в безопасности.
Если вы используете live CD, вам необходимо смонтировать диск, и пути в следующих командах будут соответственно изменены.
Итак, размонтируйте монтирование ecryptfs. (Если вы работаете с живым CD, вам не нужно делать этот шаг).
$ ecryptfs-umount-private
Затем освободите место на диске, удалив все старые зашифрованные файлы. Убедитесь, что ваши резервные копии в безопасности, прежде чем сделать это. И если у вас есть более половины свободного диска, вы можете оставить этот шаг, пока не убедитесь, что новая версия работает. Но если у вас есть только немного свободного места на диске, то вам нужно будет сделать это перед копированием файлов обратно.
$ sudo rm -rf /home/.ecryptfs
Далее нам нужно остановить авто-монтаж. Так что редактируйте файлы
/etc/pam.d/common-auth
/etc/pam.d/common-password
/etc/pam.d/common-session
/etc/pam.d/common-session-noninteractive
и закомментируйте строку, которая упоминает pam_ecryptfs
положив #
в начале строки. Так, например, common-session
теперь будет содержать
#session optional pam_ecryptfs.so unwrap
Теперь вы можете скопировать все свои файлы обратно
$ cp -a /media/disk-1/user /home
Затем выполните перезагрузку, и вы должны быть без зашифрованных папок и иметь возможность автоматического входа в систему. Если вы не удалили /home/.ecryptfs
ранее, вы должны сделать это, как только вы уверены, что все работает, как ожидалось.
Проблема в том, что файловая система зашифрована. Когда вы расшифровываете область диска, вы не делаете один файл за раз. - Поэтому невозможно просто "отключить" шифрование без резервного копирования файлов и восстановления.
Читая о, я придумал другую стратегию, которая может работать для вас, в зависимости от вашей проблемы. Если проблема заключается в том, что вам (как root) необходимо получить доступ к файлам пользователей, пока они не вошли в систему, тогда вы можете остановить отключение зашифрованных файлов при выходе из системы.
ecryptfs использует файлы в /home/.ecryptfs/user/.ecryptfs/
контролировать операции. Вы увидите, если содержит файлы auto-mount
а также auto-umount
, Они оба нулевого размера. Я уверен, что если ты
$ sudo rm /home/.ecryptfs/*/.ecryptfs/auto-umount
Тогда пользовательские каталоги не будут размонтированы при выходе из системы и останутся доступными. Однако формат на диске все равно будет зашифрован, так что вам не придется беспокоиться о том, что старые диски попадут в чужие руки (при условии безопасного удаления /home/.ecryptfs/*/.ecryptfs/*
) (а также /tmp
а также /var/
и поменять...)