시스템에 로그인 할 준비가되었을 때 우분투 17.10에서 드럼 롤 사운드를 되 찾는 방법


12

Ubuntu 16.04에서 컴퓨터의 전원을 켜면 로그인 인터페이스가 표시되기 직전에 드럼 롤 사운드가 재생됩니다. Ubuntu 17.10으로 업그레이드 한 후 드럼 롤 사운드가 더 이상 재생되지 않습니다. 웹에서 약간의 연구를 수행 한 결과 드럼 롤 사운드를 재생할 수 있었지만 로그인 한 후에 만 ​​다음을 시도했습니다.

시작 응용 프로그램 환경 설정을 시작하고 다음을 포함하는 항목을 추가했습니다.

/usr/bin/canberra-gtk-play --id="desktop-login" -f /usr/share/sounds/ubuntu/stereo/system-ready.ogg

그러나 이것은 이미 로그인 한 후에 만 ​​사운드를 재생할 수있게했습니다.

나는 또한 시도했다

/usr/bin/canberra-gtk-play --id="system-ready" -f /usr/share/sounds/ubuntu/stereo/system-ready.ogg

그러나 그것은 다른 시도와 같은 효과를 가졌습니다. 드럼 롤 사운드는 로그인 한 후에 만 ​​재생되었습니다.

따라서 사용자에게 로그인 대화 상자가 표시되면 사용자가 로그인하기 전에 드럼 롤 사운드를 재생할 수있는 방법을 찾은 사람이 있는지 묻습니다.

또한 드럼 롤 사운드를 훨씬 일찍 가져 왔어 야하는 --id = "system-bootup"을 시도했습니다. 그러나이 설정을 사용하더라도 로그인 한 후에야 드럼 롤 사운드가 재생되지 않았습니다.


gdm3에서 lightdm으로 변경하면 문제가 해결 될 수 있습니다. 로깅 화면은 17.04-와 비슷합니다. apt 설치 lightdm. dpkg-reconfig lightdm
Artyom

lightdm을 설치하고 사용해야하는데 작동하지 않고 gdm3으로 돌아가려면 어떻게해야합니까? 나는 17.10와 버그 우리가 드럼 롤 지금보고있는 문제가 (상대적으로 작은) 인 것을 (증거없이) 의심
리처드 FUHR

apt purge lightdm, dpkg-gdm3 재구성
Artyom

lightdm은 xwayland에서 밀어 내야하는 패키지 (예 : xserver-xorg *, unity * 등)에 따라 다릅니다. gdm 담당자는 무엇을하고 있습니까?
funicorn

답변이 Richard에게 도움이 되었으면 알려주십시오. 그러면이 현상금을 넣을 수 있습니다! ;-)

답변:


11

다음은 gdm 사용자의 홈 디렉토리에서 실행되는 시스템 사용자 단위를 사용하는 방법입니다.

  • 다음 파일을 다음과 같이 저장하십시오 /var/lib/gdm3/.config/systemd/user/drumroll.service.

    [Unit]
    Description=Drumroll
    Requires=pulseaudio.socket
    After=systemd-user-sessions.service
    
    [Service]
    Type=simple
    Restart=no
    ExecStart=/usr/bin/paplay /usr/share/sounds/ubuntu/stereo/system-ready.ogg
    
    [Install]
    WantedBy=default.target
    

위의 시스템 단위는 gdm 사용자 컨텍스트에서 pulseaudio가 시작되었는지 확인하고 paplay명령을 실행해야합니다 (시도하지 canberra-gtk-play않았지만 제대로 작동한다고 생각합니다).

After=systemd-user-sessions.service시스템이 사용자 로그인을 준비한 후에 만 ​​서비스를 시작합니다. ( http://manpages.ubuntu.com/manpages/artful/man8/systemd-user-sessions.service.8.html 참조 )

  • 그런 다음 다음을 실행하십시오.

    $ sudo mkdir -p /var/lib/gdm3/.config/systemd/user/default.target.wants
    $ sudo ln -s /var/lib/gdm3/.config/systemd/user/drumroll.service /var/lib/gdm3/.config/systemd/user/default.target.wants/drumroll.service
    $ sudo chown gdm:gdm /var/lib/gdm3/.config/systemd/user/{drumroll.service,default.target.wants}
    

이러한 마지막 명령은 gdm 사용자의 시스템 세션이 시작될 때 장치가 자동으로 시작되도록합니다.

  • 테스트를 위해 재부팅하십시오.

systemctl은 시스템 세션 또는 호출 사용자 세션에 연결하는 데 제한이 있기 때문에 오류를 확인하는 것은 약간 까다 롭습니다 . sudo를 사용하여 gdm을 호출하는 사용자를 쉽게 만들려면 시스템 환경의 사용자 세션에 연결할 수 있도록 일부 환경을 설정해야합니다.

$ sudo -u gdm XDG_RUNTIME_DIR="/run/user/$(id -u gdm)" DBUS_SESSION_BUS_ADDRESS="unix:path=${XDG_RUNTIME_DIR}/bus" systemctl --user status drumroll
● drumroll.service - Drumroll
   Loaded: loaded (/var/lib/gdm3/.config/systemd/user/drumroll.service; enabled; vendor preset: enabled)
   Active: inactive (dead) since Tue 2018-06-26 23:35:05 CEST; 36min ago
  Process: 1238 ExecStart=/usr/bin/paplay /usr/share/sounds/ubuntu/stereo/system-ready.ogg (code=exited, status=0/SUCCES
 Main PID: 1238 (code=exited, status=0/SUCCESS)

17.10에서 18.04로 시도하지는 않았지만 17.10에서 제대로 작동하지 않는 이유는 알 수 없습니다.


나보다 빨리! +1!
Fabby

또한 17.10과 함께 작동 할 것이라고 확신합니다. 다음 달에는 더 이상 사용되지 않으므로 OP는 곧 18.04로 업그레이드됩니다. +1.
WinEunuuchs2Unix
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.