Для юнитов systemd --user именно здесь начинается время. Весь менеджер --user запускается поздно в процессе загрузки - это системный сервис (user @ .service), который запускается systemd-logind, который всегда запускается во время поздней загрузки.
Чтобы заказать услугу для более ранних модулей (например, remote-fs.target), вам необходимо преобразовать ее в системный сервис. Тогда ваши единицы .mount (или ваши записи в fstab) смогут также указать зависимости от вашего сервиса.
Обратите внимание, что WantedBy = не определяет, когда ваш юнит будет поставлен в очередь (в некотором смысле он делает противоположное). Вместо этого это определяется (неявным и явным) параметрами Before = / After =. Совершенно возможно и обычно иметь модуль с «WantedBy = multi-user.target», но также с «DefaultDependencies = no» и «Before = remote-fs.target».
Как примечание, не запускайте демонов, таких как krenew -K
через ExecStartPost =. Единственное место, которое «официально» разрешает длительные процессы (и предоставляет такие функции, как Restart =), - это главный ExecStart =, поэтому, если вы хотите периодическое обновление, поместите его krenew -K
туда.
Вы можете запустить kinit в качестве второго ExecStartPre = или использовать его, k5start -K
чтобы избежать необходимости вручную kinit.
ExecStart=/usr/bin/k5start -L -b -K 30 -f %h/client.keytab -k /tmp/krb5cc_%U -u %i@EXAMPLE.COM