Вы можете жестко указать PATH в службе systemd:
[Service]
Environment=PATH=/home/someUser/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
Более гибким будет PAM.
Создайте новую конфигурацию PAM в /etc/pam.d (скажем /etc/pam.d/foo) и добавьте:
session required pam_env.so user_envfile=some-file user_readenv=1
bash -c '....', но вы можете сделать это с помощью PAM. ] И в /home/someUser/some-file добавьте:
PATH DEFAULT=/home/someUser/bin:${PATH}
Конечно, вы можете настроить имя some-file на нечто более разумное, но путь в user_envfile должен быть относительно домашний каталог пользователя (пользователь, который вы установили в User= в службе).
Затем в служебном файле в секции [Service] добавьте (foo в файл в /etc/pam.d ], созданный ранее):
PAMName=foo
Теперь, когда вы запустите службу (после перезагрузки и т. д.), будут запущены модули session в /etc/pam.d/foo, которые в этом случае будут просто [ f18]. pam_env загрузит переменные среды из /etc/environment с ограничениями в /etc/security/pam_env.conf, а затем пользовательскую среду из ~/some-file. Поскольку PATH установлено в значение по умолчанию в /etc/environment, пользовательская среда добавляет к этому значению по умолчанию.
Здесь значением по умолчанию user_envfile является .pam_environment, которое также считывается конфигурацию PAM для других вещей, таких как SSH или LightDM, и т. д. Здесь я использовал другой файл, если вы не хотите влиять на эти вещи. Вы можете удалить user_envfile=... и использовать значение по умолчанию ~/.pam_environment. вы также можете просто использовать существующую конфигурацию PAM в /etc/pam.d, которая имеет user_readenv=1, но другие модули PAM могут вызывать нежелательные побочные эффекты.
После учебника из вашей ссылки (также показано на видео)
The microSDHC may be presented on any /dev/sdX so use the command lsblk to check.
Просто используйте имя устройства, а не раздел. Так что просто
/dev/mmcblk0
После учебника из вашей ссылки (также показано на видео)
The microSDHC may be presented on any /dev/sdX so use the command lsblk to check.
Просто используйте имя устройства, а не раздел. Так что просто
/dev/mmcblk0
После учебника из вашей ссылки (также показано на видео)
The microSDHC may be presented on any /dev/sdX so use the command lsblk to check.
Просто используйте имя устройства, а не раздел. Так что просто
/dev/mmcblk0