
나는 음악에 사용하는 헤드리스 데비안 서버를 가지고 있습니다. 일부 스피커에 연결되어 있으며 블루투스 페어링을 통해 휴대폰에서 서버로 음악을 재생할 수 있도록 설정했습니다.
그러나 블루투스 에이전트와 펄스오디오 서버를 시작하려면 사용자가 로그인해야 한다는 사실을 발견했습니다. 내가 결국 하는 일은 ssh를 통해 로그인하고 실행 pulseaudio -D
한 다음 bt-agent -d
. 이를 통해 휴대폰을 서버에 페어링하고 휴대폰에서 음악을 재생할 수 있습니다. 문제는 사용자를 로그인 상태로 유지하고 실행해야 한다는 것입니다. 그렇지 않으면 작동이 중지됩니다.
부팅 시 지속되는 이러한 데몬을 자동으로 시작하려면 어떻게 해야 합니까?
답변1
가정체계화된아래에 표시된 두 개의 시스템 단위를 생성하고 이를 활성화한 후 systemctl --user enable bt-agent-d.service; systemctl --user enable pulseaudio-d.service
마지막으로 활성화할 수 있습니다.오래 끄는부팅 시 시작하고 사용자가 loginctl enable-linger username
.
PS 마지막 명령의 'username'은실제사용자 이름과 마지막 명령이 성공하려면 루트 권한이 필요합니다.
~/.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