7.2. Монтирование шифрованных томов

Если вы создали шифрованные тома во время установки и назначили им точки монтирования, то во время загрузки машины вас попросят ввести ключевую фразу на каждый том. В процедуре ввода для dm-crypt и loop-AES есть некоторые различия.

7.2.1. dm-crypt

Для разделов, зашифрованных dm-crypt, во время загрузки вы увидите следующее сообщение:

Starting early crypto disks... part_crypt(starting)
Enter LUKS passphrase:

В первой строке приглашения, вместо part будет указано название используемого раздела, например sda2 или md0. Вы, вероятно, задумаетесь: для какого тома нужно вводить ключевую фразу? Для /home? Или для /var? Естественно, если у вас только один шифрованный том, это легко и вы можете просто ввести ключевую фразу, которую задали при настройке тома. Если же у вас несколько шифрованных томов, то пригодятся заметки, которые вы сделали на последнем этапе Раздел 6.3.3.6, «Настройка шифрованных томов». Если вы ранее не записали соответствие между part_crypt и точкой монтирования, то можете выяснить это в файлах /etc/crypttab и /etc/fstab на новой системе.

При монтировании зашифрованного корневого раздела приглашение может выглядеть несколько иначе. Это зависит от генератора initramfs, который использовался при создании initrd для загрузки системы. Пример для initrd, созданного с помощью initramfs-tools:

Begin: Mounting root file system... ...
Begin: Running /scripts/local-top ...
Enter LUKS passphrase:

Во время ввода ключевой фразы символы не отображаются (даже звёздочками). Если вы введёте неверную ключевую фразу, то у вас ещё есть две попытки. После третьей попытки процесс загрузки пропустит этот том и начнётся монтирование следующей файловой системы. Подробней смотрите в Раздел 7.2.3, «Устранение неполадок».

После ввода всех ключевых фраз загрузка продолжится как обычно.

7.2.2. loop-AES

Для разделов, зашифрованных loop-AES, во время загрузки вы увидите следующее приглашение:

Checking loop-encrypted file systems.
Setting up /dev/loopX (/mountpoint)
Password:

Во время ввода ключевой фразы символы не отображаются (даже звёздочками). Если вы введёте неверную ключевую фразу, то у вас ещё есть две попытки. После третьей попытки процесс загрузки пропустит этот том и начнётся монтирование следующей файловой системы. Подробней смотрите в Раздел 7.2.3, «Устранение неполадок».

После ввода всех ключевых фраз загрузка продолжится как обычно.

7.2.3. Устранение неполадок

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

  • Первый случай касается корневого раздела. Если он не смонтирован, то процесс загрузки остановится, а вам придётся перезагрузить компьютер чтобы попробовать ещё раз.

  • Простейший случай — шифрованные тома с данными типа /home или /srv. Вы можете просто смонтировать их после загрузки. Для loop-AES это делается в одно действие:

    # mount /точка_монтирования
    Password:
    

    , где /точку_монтирования нужно заменить именем каталога (например, /home). Отличие от обычной операции монтирования только в запросе ключевой фразы для этого тома.

    Для dm-crypt немного сложнее. Во-первых вам нужно зарегистрировать тома с помощью device mapperвыполнив:

    # /etc/init.d/cryptdisks start
    

    Эта операция просканирует все тома указанные в /etc/crypttab и создаст соответствующие устройства в каталоге /dev после ввода правильных ключевых фраз. (Тома зарегистрированные ранее будут пропущены, поэтому вы можете спокойно запускать эту команду несколько раз.) После успешной регистрации вы можете смонтировать тома как обычно:

    # mount /точка_монтирования
    

  • Если на любых несмонтированных томах содержатся некритичные системные файлы (/usr или /var), система должна загрузиться и вы сможете смонтировать тома вручную как в предыдущем случае. Однако, может потребоваться (пере)запуск каждого сервиса, который обычно запускается на уровне выполнения по умолчанию, так как скорее всего они не смогли запуститься. Самый простой способ сделать это — перейти на первый уровень выполнения и вернуться назад с помощью запуска

    # init 1
    

    в оболочке и нажать Control+D когда попросят ввести пароль суперпользователя.