почему systemd cryptsetup пытается перемонтировать уже установленный корневой раздел?

У меня есть / etc / crypttab следующим образом:

sda7_crypt UUID=<...> /dev/sda8:/keyfile luks,discard,keyscript=/lib/esi/tpm_key_pass 

sda7_crypt – моя корневая файловая система, поэтому я использую update-initramfs чтобы расшифровать ее с самого раннего времени (иначе я не смог продолжить загрузку).

Тем не менее systemd автоматически создает блок systemd-cryptsetup@sda7_crypt.service , который зависит от dev-sda8:-keyfile.device , время от времени. В конечном итоге это не удастся, но это замедляет время загрузки и создает сообщения об ошибках.

Как я могу указать, что это уже установлено initram и не нужно монтировать с помощью systemd? Я думал о опции noauto в crypttab, но был обеспокоен тем, что это может помешать ей загрузиться в ini tram?

ОБНОВИТЬ:

Я попробовал noauto , это не сработало. Все еще монтируется в initram, но также продолжает загружаться. crypttab теперь выглядит так:

 sda7_crypt UUID=<...> /dev/sda8:/keyfile luks,discard,keyscript=/lib/esi/tpm_key_pass,noauto 

Что я могу сделать, чтобы очистить это?

  • Как получить сообщение об ошибке в journald
  • Ядро init без параметра «root =»
  • Показать пользовательское загрузочное сообщение
  • Мне нужно запустить сценарий запуска одной строки под gnome и systemd
  • Какие процессы не нужны для загрузки?
  • `systemd` сообщения после входа в систему
  • Как работает опция монтирования _netdev в / etc / fstab?
  • systemd service: возможно ли получить имя пользователя, вызвавшего событие power?
  • One Solution collect form web for “почему systemd cryptsetup пытается перемонтировать уже установленный корневой раздел?”

    Оказывается, это две отдельные проблемы systemd, в частности, как работает systemd-cryptsetup-generator .

    1. Он не распознает параметр keyscript=... , поэтому он зажимает ключи, которые действительны для passdev например /dev/sda8:/keyfile .
    2. systemd-cryptsetup-generator systemd, автоматически созданные systemd-cryptsetup-generator , недостаточно интеллектуальны, чтобы распознать, что элемент уже установлен, и поэтому пытается снова установить его.

    Для получения дополнительной информации см. Этот отчет об ошибке Debian https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=618862

    Согласно отчету об ошибке, вы можете остановить его от создания системных единиц, передав параметры ядра luks=no , но это предотвратит автоматическую установку crypttab. Это нормально, если все, что у вас есть, – это зашифрованный корень, но если есть отдельные отдельные разделы, то они не монтируются.

    Interesting Posts

    Поиск Grep, возвращающий другую строку

    Можно ли использовать последующие серверы имен, определенные в файле /etc/resolv.conf, если предыдущие серверы имен не могут быть разрешены?

    Bash сбой при запуске общих команд

    2 IP-адреса на 1 адаптер Ethernet

    Перемещение книг Орды, RoundCube и SquirrelMail

    Трейлинг двоеточий и встроенная тестовая команда

    Раздражающее сообщение на каждом открытии терминала в новой учетной записи пользователя

    Системные вызовы Ext3 во время создания и изменения файла

    iptables: «сценарий» или «фильтр, правила, COMMIT»?

    Перемещение кнопок Chrome Window налево

    Увеличьте скорость слежения за клавиатурой ThinkPad Compact USB

    Как можно сделать ноутбук оставающимся pingable и продолжать запускать его демоны даже после закрытия крышки?

    Есть ли какая-либо команда Linux для создания нового файла в папке и автоматического создания этой папки, если она не существует?

    GRUB2 с файловой системой FAT32 на внешнем жестком диске? Какие-либо другие параметры файловой системы?

    В черном списке modprobe.d всегда нужен префикс «черный список»?

    Linux и Unix - лучшая ОС в мире.