Відповіді:
gpg-agentКоманда запускає демон, але програми , які використовують його очікують деякі змінні оточення ( GPG_AGENT_INFOі GPG_TTY) повинні бути встановлені так , що вони знають , як спілкуватися з агентом. Ви повинні якимось чином поширювати їх зі службового сценарію на ваші оболонки. Сторінка gpg-agentMAN містить фрагмент, який запускає демон і записує фрагмент коду оболонки у файл у домі користувача
gpg-agent --daemon --write-env-file "${HOME}/.gpg-agent-info"
Ви можете помістити цей рядок у скрипт оболонки і викликати її з вашого службового файлу
[Service]
Type=forking
ExecStart=script-file.sh
<...>
.gpg-agent-infoФайл повинен бути отриманий з будь-якої оболонки. Сторінка MAN рекомендує
if [ -f "${HOME}/.gpg-agent-info" ]; then
. "${HOME}/.gpg-agent-info"
export GPG_AGENT_INFO
fi
GPG_TTY=$(tty)
export GPG_TTY
у .profileфайлі, щоб зробити це. Відомості про те, як писати файли служб systemd, можна знайти на сторінці MAND.
gpg-agentроботу, щоб її змінні середовища входили до сеансу входу?