Я пытаюсь сделать что-то, что кажется очевидным, но никто больше, кажется, не делает. Я хочу сохранить свой корневой каталог на зашифрованной Карте памяти, быть включенным и отключенным "сверху" ванильного корневого каталога на ванильной установке Ubuntu.
Это действительно работает, вид. Мой текущий рабочий процесс:
ctrl+alt+f2
к новому TTY. Войдите в систему как корень (устанавливавший пароль root для разрешения этого). Смонтируйте encryped объем в /home/me
ctrl+alt+f2
назад к терминалу, войдите в систему как корень и размонтирование /home/me
Но на шаге 3, при попытке размонтировать мой корневой каталог я добираюсь Device busy
, и выполнение lsof
показывает сотни процессов с помощью него. Кажется, что это вызвано тем, что Ubuntu не регистрирует Вас, когда Вы "Выходите из системы" на экран входа в систему. Так вместо этого я просто закрываюсь непосредственно, не размонтировавшись сначала. Кажется не очень чистым.
NB: у меня есть аппаратная проблема, которая делает мою машину неприменимой, если я изменяю grub
сконфигурируйтесь для начальной загрузки к приглашению оболочки. И так или иначе, который является, предположительно, не Ubuntu путь.
Но должен быть лучший способ сделать это. Идея?
Существует теперь systemd
модуль, названный systemd-homed
в работах для решения этой самой проблемы!
Тем временем, вот решение. Используемый каждый день без проблемы.
Первый, скопируйте содержание /home/you
к корню LUKS-зашифрованной Карты памяти. Принятие никакого другого USBs присутствует, lsblk
будет всегда показывать диск /dev/sda
, и зашифрованный раздел будет /dev/sda1
.
Следующий гарантируют что, если Карта памяти будет включена, то зашифрованный раздел будет доступен как виртуальное блочное устройство. Подсказка пароля появится во время начальной загрузки. В /etc/crypttab
:
encryptedhome /dev/sda1 none luks,noauto
Теперь, заставьте это виртуальное устройство смонтироваться при наличии. Если это не будет включено, то будет короткое ожидание тайм-аута, но начальная загрузка затем продолжится как нормальная. В /etc/fstab
:
/dev/mapper/encryptedhome /home/you ext4 defaults,nofail 0 2
Ваш внешний корневой каталог будет смонтирован сверху существующего ванильного. Монтирование вещей сверху существующих каталогов как это просто делает существующее недоступным продолжительности монтирования. Все данные в нем остаются безопасными.
Первоначально, можно сделать это, чтобы смонтировать и скопировать корневой каталог:
смонтируйте диск: mount -o uid=user /dev/sdbx /temphomedir
Файлы копии: mount --bind /temphomedir /home/user
Это принимает это /dev/sdbx
Ваша Карта памяти и /home/user
Ваш корневой каталог.
Примечание: удостоверьтесь что Ваш /home/user
каталог пуст перед монтированием диска.
Согласно этому вопросу можно использовать команду crontab -e
для редактирования крона затем можно добавить следующую строку @reboot /mount.sh
. Теперь, когда мы сделали это, мы должны создать mount.sh
сценарий. Можно сделать это путем ввода sudo nano /mount.sh
. Это откроет нано текстовый редактор. Затем только мимо следующего:
#!/bin/bash
mount --bind /dev/sdbx /home/user
То, что это сделает, является монтированием USB к Вашему корневому каталогу каждый раз, когда Вы загружаете свой компьютер. Удостовериться /dev/sdbx
и /home/user
корректны, затем вводят CTR+X, чтобы сохранить и выйти из нано.
при перезагрузке компьютера, это должно работать. Следует иметь в виду, что я на самом деле не протестировал это, таким образом, это не может работать.
Надеюсь, это поможет!