Linux'ta Wayland altında uzak masaüstü: ekran görünüyor ama fare neden hiçbir şey yapmıyor

Bir Linux makineye ekranı kusursuz gösteren ama her tıklamayı yok sayan bir uzak oturum, ağınızda ya da aracınızın ayarlarında bir hata değildir. Wayland tam olarak tasarlandığı şeyi yapıyor — ve çözüm, işin hangi yarısının reddedildiğini anlamaya bağlı.

Güncellendi:

X11 her programın her şeyi görmesine izin veriyordu

Linux masaüstü onlarca yıl X11 üzerinde çalıştı. X11'de ekrana bağlı herhangi bir program tüm ekranı okuyabilir ve herhangi bir pencereye tuş ve fare hareketi gönderebilirdi. Linux'ta uzak masaüstünü kolaylaştıran buydu: araç ekranı X11'den ister ve girdiyi, xdotool gibi otomasyon araçlarının yaptığı şekilde enjekte ederdi.

X11'i güvenlik sorunu yapan da buydu. Çalıştırdığınız herhangi bir program — bir oyun, bir tarayıcı eklentisi yardımcısı, herhangi bir şey — diğer tüm pencerelere yazdığınız her tuşu kaydedebilirdi. Artık büyük dağıtımların çoğunda GNOME ve KDE Plasma'nın varsayılan oturumu olan Wayland, bu kapıyı kapatmak için yapıldı.

Wayland neyi değiştiriyor

Wayland altında her uygulama yalnızca kendi pencerelerini görür. Ekranın geri kalanını okuyamaz ve diğer uygulamalara girdi gönderemez. Uzaktan erişim bunun yerine iki ayrı, açıkça izin verilen kanaldan geçmek zorundadır:

Belirtinin bu kadar belirgin olmasının sebebi bu ayrım. Wayland yakalamayı destekleyen ama girdiyi hâlâ X11 yöntemiyle enjekte eden bir araç ekranınızı doğru gösterir; tıklamalarınız ise yalnızca hâlâ XWayland — X11 uyumluluk katmanı — altında çalışan birkaç pencereye ulaşır, yerel Wayland pencereleri onları yok sayar.

BelirtiEn olası sebep
Siyah ekran ya da host'ta her seferinde paylaşım penceresiYakalama portaldan geçiyor; host'ta birinin onaylaması gerekiyor
Ekran görünüyor, hiçbir yerde tıklama ya da tuş çalışmıyorWayland oturumunda girdi X11 yöntemiyle enjekte ediliyor
Tıklamalar bazı uygulamalarda çalışıyor, bazılarında çalışmıyorO uygulamalar XWayland altında; diğerleri yerel Wayland
Oturum açınca her şey çalışıyor, giriş ekranında hiçbir şeyGiriş ekranı, aracın bağlı olmadığı ayrı bir oturum
Reklam

Hangi oturumda olduğunuzu kontrol edin

Host'ta bir terminal açıp echo $XDG_SESSION_TYPE komutunu çalıştırın. wayland ya da x11 yazar. Bu tek cevap Linux uzaktan erişim sorunlarının çoğunu açıklar ve başka bir şeyi değiştirmeden önce bakmaya değer.

Çözümler, zahmet sırasına göre

  1. Masaüstünüz hâlâ sunuyorsa X11 oturumuna giriş yapın. Giriş ekranında kullanıcınızı seçtikten sonra bir dişli ya da oturum menüsü genelde "GNOME on Xorg" ya da "Plasma (X11)" gibi seçenekler listeler. Bir kez seçin; çoğu masaüstü hatırlar. Ekran yakalama ve girdi o zaman eski yöntemle çalışır.
  2. Yerel Wayland girdi desteği olan bir araç kullanın. Bazı uzaktan erişim araçları girdiyi artık RemoteDesktop portalı üzerinden uyguluyor; bu portal host'taki kullanıcıdan makineyi kontrol etme izni ister. Her şeyin gittiği yön bu.
  3. Masaüstünüzün yerleşik uzak masaüstünü kullanın. Yeni GNOME ve KDE sürümleri, Wayland'i yerel olarak konuşan kendi uzak masaüstü sunucularını içerir. İnternet üzerinden bir makineye ulaşmak için değil, yerel ağ ya da VPN kullanımı için tasarlanmışlardır — onlara port yönlendirmeden önce bkz. RDP'yi neden internete açmamalı.

Wayland altında başında kimse olmadan erişim daha zor

Portal pencereleri Wayland tasarımının amacıdır: makinenin başındaki bir kişi paylaşımı onaylar. Bu, bilgisayarının başında oturan birine yardım etmek için tam doğru, başında kimse yokken kendi makinenize ulaşmak için ise tam yanlıştır. Bazı masaüstleri onayın hatırlanmasına izin verir; diğerleri her yeniden başlatmadan sonra tekrar sorar. Amaç başında kimse olmadan erişimse, host'u yeniden başlatıp dokunmadan bağlanarak test edin — bir bilgisayarı uzaktan yeniden başlatmak rehberinde anlatılan testin aynısı.

Diğer rehberler

RemoteFrames'ı deneyin

Erişmek istediğiniz bilgisayara host uygulamasını kurun, gösterdiği 6 haneli kodu herhangi bir tarayıcıya girin. Hesap yok — günde iki adet 10 dakikalık ücretsiz oturum.

RemoteFrames'ı deneyin