Я недавно установил Ubuntu 12.10, и для загрузки требуется пароль (я установил его с зашифрованной файловой системой).
Нужно ли переустанавливать, чтобы перейти на стандартную незашифрованную файловую систему?
Я недавно установил Ubuntu 12.10, и для загрузки требуется пароль (я установил его с зашифрованной файловой системой).
Нужно ли переустанавливать, чтобы перейти на стандартную незашифрованную файловую систему?
Ответы:
Если Ubuntu запрашивает парольную фразу шифрования во время загрузки (т. Е. В текстовой консоли перед отображением экрана входа в систему), это означает, что использовался метод полного шифрования диска. (Есть несколько способов сделать это, но я оставлю общий ответ.) Шифрование обрабатывается дополнительным программным уровнем между файловой системой и физическим жестким диском, а не самой файловой системой.
Нет простого метода или инструмента, чтобы отменить это. С некоторыми знаниями о том, как работают системы Linux, это можно сделать. Вам придется переместить всю файловую систему (или все файлы) в другой раздел (с достаточным количеством свободного места) или внешний жесткий диск. Затем удалите зашифрованный контейнер и заново создайте файловую систему без шифрования. Наконец, убедитесь, что новая файловая система правильно распознается загрузчиком и mount -a
перед перезагрузкой.
Если возможно, лучше избегать этой трудоемкой и подверженной ошибкам процедуры. Просто сделайте новую установку. Для новых пользователей это самый быстрый и безопасный вариант.
PS: Скорее всего, вы можете изменить кодовую фразу шифрования, возможно, на пустую строку. Тогда для расшифровки требуется только нажать Enter. Может быть, вы можете пойти дальше и подавить (теперь бесполезно) приглашение пароля. Однако это не отключает шифрование. Данные все равно будут зашифрованы, хотя шифрование будет бесполезным, так как ключ может быть тривиально угадан.
dd
и базовые драйверы не пишут, пока они не закончат чтение каждого блока (вероятно, есть флаги и настройки, чтобы гарантировать это) 2. чтение / запись блоки не перекрывают края блоков шифрования (могут быть проверены, могут потребоваться некоторые математические операции) 3. важная информация заголовка, необходимая для расшифровки, не перезаписывается до завершения (проверьте базовый формат шифрования, возможно, процесс от начала до конца). Я думаю, что это возможно, но потребуется более тщательная настройка и анализ.
Ниже это мое решение, которое сработало. Имейте в виду, что я не специалист по Linux, так что это может быть не лучшим решением. Не могу найти лучшего в любом случае.
ПРИМЕЧАНИЕ : всякий раз, когда я говорю, я имею в виду
/dev/sda1 - boot partition
/dev/sda5 - encrypted partition
/dev/sda3 - clean non-encrypted EXT4 partition
/dev/sda2 - my newly created swap partition
Загрузиться с живого CD. Я использовал Ubuntu 13.10 32-битный рабочий стол ISO.
Смонтируйте свой раздел:
sudo cryptsetup luksOpen /dev/sda5 crypt1
Скопируйте исходные данные в целевой раздел и сохраните dd PID в переменную pid:
sudo dd if=/dev/ubuntu-vg/root of=/dev/sda3 bs=1M & pid=$!
Это будет проверять каждый второй процесс dd с сигналом USR1 и статусом результатов dd:
while sudo kill -USR $pid; do sleep 1; done
Если вам не нравится вышеприведенный метод while, вы можете использовать часы. Откройте другое окно терминала и получите PID:
pgrep -l '^dd$' | awk '{ print $1 }'
Замените на ваш идентификатор процесса:
watch kill -USR1 <pid>
Вы должны видеть вывод в вашем терминале дд каждые 2 с.
Когда это будет сделано, вы можете смонтировать раздел без шифрования, чтобы убедиться, что все в порядке:
sudo mount /dev/sda3 /mnt
После этого размонтируйте ваш раздел:
sudo umount /dev/sda3
Освободить раздел склепа:
sudo cryptsetup luksClose /dev/sda5
Запустите gparted. Удалите свой раздел LUKS (как расширенный, так и логический). Измените размер вашего / dev / sda3 и двигайтесь влево. Создать раздел подкачки.
Примечание: перемещение вашего / dev / sda3 влево может занять много времени. Для меня это заняло 30 минут на 120GB раздел и SSD диск. Если у вас есть 500 ГБ + жесткий диск, будьте готовы к нескольким часам ожидания. Возможно, вы захотите создать swap перед вашим разделом вместо того, чтобы перемещать ваш / dev / sda3.
Создайте новую файловую систему подкачки в вашем разделе подкачки:
sudo mkswap /dev/sda2
и хранить где-нибудь UUID.
Получите UUID вашего корневого раздела:
sudo blkid /dev/sda3
Редактировать fstab:
sudo nano /etc/fstab
Удалите или закомментируйте строки overlayfs и tmpfs.
Добавьте замену строки на результат blkid:
UUID=<uuid_root> / ext4 errors=remount-ro 0 1
UUID=<uuid_swap> none swap sw 0 0
Удалить файл:
rm /etc/crypttab
Обновите ваши initramfs, чтобы избежать ошибок типа «cryptsetup: evms_activate is not available»:
sudo -i
mount /dev/sda3 /mnt
mount -t proc none /mnt/proc
mount -o bind /sys /mnt/sys
mount -o bind /dev /mnt/dev
mount /dev/sda1 /mnt/boot
chroot /mnt /bin/bash
apt-get remove --purge cryptsetup
update-initramfs -u -k all
Это сработало для меня, однако есть шанс, что выполнение вышеописанного шага может не сработать для вас. До того, как я понял метод update-initramfs, я несколько раз переустанавливал ядро, а также модифицировал grub. Однако это не должно быть дело для вас. Помните, что приведенные выше инструкции могут удалить ваши данные, поэтому будьте осторожны и делайте BACKUP , ДО того, как продолжить.
На всякий случай, если у вас проблемы с ядром (chrooted и / boot смонтированы):
uname -r
sudo apt-get install --reinstall linux-image-3.X.Y-ZZ-generic
Конечно, замените linux-image-3.XY-ZZ на дату вашего ядра от uname.
или GRUB (вне chroot):
sudo add-apt-repository ppa:yannubuntu/boot-repair && sudo apt-get update
sudo apt-get install -y boot-repair && (boot-repair &)
Более подробная информация: https://help.ubuntu.com/community/Boot-Repair
Удачи
/etc/initramfs-tools/conf.d/resume
вручную, и я бы рекомендовал копировать содержимое файловой системы с cp -a
или, rsync -a
как это было бы быстрее в целом и безопаснее для твердотельных накопителей.
dd
копирует весь раздел, даже блоки, которые должны быть пустыми, что вызывает ненужные записи на SSD (а на некоторых это даже вредит производительности записи почти во все ячейки). Несколько лет назад я и некоторые другие также обнаружили, что копирование с помощью dd
и активация TRIM (опция сброса EXT4) приведет к тому, что TRIM удалит блоки, которые, по его мнению, пусты, и через несколько часов оставит вас с нарушенной установкой.
В случае, если все в порядке, чтобы сохранить шифрование, но отключить запрос пароля, гораздо более простой подход состоит в том, чтобы просто установить тривиальный пароль, такой как «пароль», и затем сохранить этот тривиальный пароль в initramfs в открытом тексте. Отключите пароль шифрования LUKS .
По сути, добавьте скрипт-ловушку, который, в свою очередь, добавляет «ключ скрипта» к initramfs. Обычно эти сценарии используются для получения пароля через Bletooth, с USB-накопителя и т. Д., Но в этом случае просто заставьте его напечатать простой пароль.