
У меня есть сервер Debian без головы, который я использую для музыки. Он подключен к некоторым динамикам, и я настроил его так, чтобы я мог проигрывать музыку с моего телефона на сервере через сопряжение по Bluetooth.
Однако я обнаружил, что мне нужно, чтобы пользователь вошел в систему, чтобы я мог запустить агента Bluetooth и сервер PulseAudio. В итоге я вхожу в систему через ssh и запускаю, pulseaudio -D
а затем bt-agent -d
. Это позволяет мне подключить телефон к серверу и воспроизводить музыку с телефона. Проблема в том, что мне нужно, чтобы пользователь оставался в системе и работал, иначе все перестает работать.
Как мне автоматически запускать эти демоны при загрузке, чтобы они сохранялись?
решение1
Предполагая,системдвы можете создать два модуля systemd, показанных ниже, включить их systemctl --user enable bt-agent-d.service; systemctl --user enable pulseaudio-d.service
и, наконец, включитьзатяжнойчтобы запустить их при загрузке и не останавливать, если пользователь выходит из системы с помощью loginctl enable-linger username
.
P.S. «Имя пользователя» в последней команде — это заполнитель длядействительныйимя пользователя и последняя команда требуют прав root для успешного выполнения.
~/.config/systemd/user/bt-agent-d.service
:
[Unit]
Description=Bt-agent-d service
[Service]
ExecStart=/bin/bt-agent -d
[Install]
WantedBy=default.target
~/.config/systemd/user/pulseaudio-d.service
:
[Unit]
Description=Pulseaudio-d service
[Service]
ExecStart=/bin/pulseaudio -D
[Install]
WantedBy=default.target