Sistem kullanıcının oturum açmaya hazır olduğunda Ubuntu 17.10'da davul rulo sesi nasıl geri getirilir


12

Ubuntu 16.04'te, bilgisayarımı açtığımda, davul rulosu sesi, Giriş arayüzüyle karşılaşılmadan hemen önce çalınacaktı. Ubuntu 17.10'a yükselttikten sonra bateri rulosu sesi artık çalmıyor. Web üzerinde biraz araştırma yaptım ve davul rulosu sesinin çalınmasını sağlayan ancak sadece giriş yaptıktan sonra aşağıdakileri denedim.

Başlangıç ​​Uygulamaları Tercihlerini başlattım ve aşağıdakileri içeren bir öğe ekledim.

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

Ancak bu, yalnızca önceden giriş yaptıktan sonra sesin çalınmasını sağladı.

Ben de denedim

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

Ancak bu, diğer girişim ile aynı etkiye sahipti; davul çalma sesi yalnızca giriş yaptıktan sonra çaldı.

Bu yüzden, kullanıcı oturum açmadan önce, kullanıcı oturum açmadan önce davul rulo sesini çalmak için bir yol bulup bulamadığını soruyorum.

Ben de davul rulo sesi çok daha önce getirmişti --id = "sistem-bootup" denedim. Ancak bu ayarla bile davul çalma sesi, giriş yaptıktan sonra çalınmadı.


Gdm3'ten lightdm'ye geçmek bunu çözebilir. Gerçi ekran 17.04- gibi görünecek. apt lightdm yükleyin. dpkg-reconfigure lightdm
Artyom

Eğer lightdm'yi kuracak ve kullanacak olsaydık ve işe yaramazsa ve gdm3'e geri dönmek isteseydik bunu nasıl yapardık? Davul rulosunda gördüğümüz sorunun 17.10 ile (nispeten küçük) bir hata olduğundan şüpheleniyorum (kanıtsız)
Richard Fuhr

apt purge lightdm, dpkg-reconfigure gdm3
Artyom

lightdm, xwayland'dan uzaklaştırılması gereken bir grup pakete bağlıdır, örneğin xserver-xorg *, birlik *, vb. Gdm adamları ne yapıyor?
funicorn

Lütfen cevabın sizin için işe yarayıp yaramadığını bize söyleyin Richard, böylece bu ödülün üzerine koyabilirim! ;-)

Yanıtlar:


11

İşte gdm kullanıcısının ana dizininden çalışan bir systemd kullanıcı birimi kullanmanın bir yolu.

  • Aşağıdaki dosyayı farklı kaydedin /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
    

Yukarıdaki systemd birimi pulseaudio'nun gdm kullanıcı bağlamında başlatıldığından emin olmalı ve paplaykomutu çalıştırmalıdır (denemedim canberra-gtk-play, ama aynı zamanda işe yaradığını düşünürüm).

After=systemd-user-sessions.servicehizmeti ancak sistem kullanıcı oturum açmaya hazır olduktan sonra başlatır. (bkz. http://manpages.ubuntu.com/manpages/artful/man8/systemd-user-sessions.service.8.html )

  • Sonra yürütün:

    $ 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}
    

Bu son komutlar, gdm kullanıcısının systemd oturumu başlatıldığında ünitenin otomatik olarak başlatılmasını sağlar.

  • Test etmek için yeniden başlatın.

Hataları kontrol etmek biraz zordur, çünkü systemctl sistem oturumuna veya arayan kullanıcının oturumuna bağlanma kısıtlamasına sahiptir . Gdm'yi arayan kullanıcı sudo ile kolaydır, ancak sistemd kullanıcı oturumuna bağlanmayı mümkün kılmak için bazı ortamların ayarlanması gerekir:

$ 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)

Bunu 17.10, ancak 18.04 ile denemedim, ancak 17.10'da işe yaramayacağı için bir neden göremiyorum.


Benden daha hızlı! 1!
Fabby

Ayrıca 17.10 ile çalışacağından da eminim. Önümüzdeki ay modası geçmiş, bu yüzden OP zaten yakında 18.04'e yükseltilecek. +1.
WinEunuuchs2Unix
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.