Предположим, что установка Debian нестабильна, с использованием systemd для init, с двумя разделами файловой системы, /
и /home
. Предположим далее , что, по причинам , чтобы сделать с физическими дисками, я переместил содержимое /var
в /home/var
и заменить /var
каталог с соответствующим линке. (Пожалуйста, не пытайтесь отговорить меня от перехода /var
в /home
раздел или превратите это в аргумент systemd ;-)
При такой конфигурации необходимо сообщить systemd, что любой модуль, которому требуется что-либо, /var
не может быть запущен до тех пор, пока не /home
будет смонтирован. Я знаю, что он поврежден (так как он пытается получить доступ к файлу на /var/lib
очень ранней стадии загрузки) systemd-random-seed.service
, но может легко быть любое количество других, которые я еще не заметил.
Каков наилучший способ настроить общее правило , согласно которому «что-либо, требующее чего-либо, /var
не может быть запущено до тех пор, пока не /home
будет смонтировано»? Я приму ответ в форме «добавить Requires=
и After=
директивы к каждому затронутому файлу модуля» только в том случае, если вы сможете продемонстрировать, что не существует превосходной альтернативы.
Версия systemd, в настоящее время нестабильная в Debian, - 224.
Спустя более года с версией systemd (229), поставляемой сейчас с ubuntu 16.04, в fstab есть поддержка для монтирования зависимостей, подобного этой.
так что это так же просто, как сделать это.
получил идею из этого поста https://copyninja.info/blog/systemd_automount_entry.html
источник