Startx hangi masaüstü ortamını çalıştırır ve nasıl değiştirebilirim?


18

Birçok startxdokümanda, Raspbian OS'de LXDE'yi başlatan bir kitap okudum . Biraz kafam karıştı.

Her zaman startxLXDE GUI çalıştıracak mı?

Ayrıca startlxdekomut kullanarak örnek gördüm . Bu nasıl komut farklı ve neden startxve startlxdeaynı GUI (LXDE) koşuyoruz? Ya da belki varsayılan GUI olduğu için çalıştırır?

Birden fazla arayüzüm varsa varsayılan GUI'yi nasıl seçebilirim?

Linux sistemlerinde GUI hakkında daha fazla ayrıntı açıklayabilir misiniz?

Yanıtlar:


27

startxxinitbir X sunucusu ve bir istemci oturumu başlatan çalışır . İstemci oturumu ~/.xinitrcvarsa ve başka şekilde yapılır /etc/X11/xinit/xinitrc(konum dağılımlar arasında değişebilir). Bu komut dosyasının ne yaptığı dağıtımlara göre değişir. Debian'da (örneğin, Raspbian olarak türevleri de dahil olmak üzere) /etc/X11/xinit/xinitrcçalışır /etc/X11/Xsessionda içinde çalışır komut /etc/X11/Xsession.d. Debian komut dosyaları diğer dosyalarda bir kullanıcı oturumu için bakmak ( ~/.xsession, ~/.xsessionrc, ~/.Xsession) ve bir kullanıcı ayarı uygulanabilir ise, ishal x-session-manager(geri düşen x-window-manager, hiçbir [oturum yöneticisi] yüklüyse için geri düşen x-terminal-emulatorhiçbir pencere yöneticisidir olası durumda Kurulmuş).

Neyin yürütüldüğünü kontrol etmek istiyorsanız, ~/.xsessionveya kullanıcı dosyalarından birini oluşturabilirsiniz ~/.xinitrc. Dosya ~/.xsessionayrıca bir görüntüleme yöneticisinde oturum açarsanız da kullanılır (ör. Parolanızı bir GUI penceresine yazarsanız). Dosya ~/.xinitrcözgüdür xinitve startx. Kullanmak ~/.xsession, /etc/X11/Xsessiongiriş yöntemleri, kaynaklar, parola aracıları, vb. Gibi şeyleri .xinitrcayarlayacak şekilde geçer. Bir kez daha, Debian'ı burada anlatıyorum, diğer Unix varyantları işleri farklı ayarlayabilir. ~/.xinitrcÇalıştırdığınızda startxveya xinitevrensel olduğunda neyin yürütüleceğini belirtmek için kullanımı .

Kullanmak İster ~/.xinitrcveya ~/.xsessionhazırlanacak gereken neyse hazırlamalısınız, bu dosyayı (genellikle bir shell script, ama sen gerçekten başka kullanım şey istiyorsanız bu olmak zorunda değildir) (örn klavye ayarları, kaynaklar, applet'ler başlamış olmadığını pencere yöneticisi vb. tarafından) ve ardından oturumu yöneten programı çalıştırın. Komut dosyası sona erdiğinde, oturum sonlandırılır. Genellikle, execkomut dosyasının sonunda, komut dosyasını oturum yöneticisi veya pencere yöneticisi ile değiştirmek için kullanılır.

Sisteminizde muhtemelen /usr/bin/startlxdesistem genelinde varsayılan oturum yöneticisi olarak bulunur. Debian ve türevlerinde, mevcut oturum yöneticilerini

update-alternatives --list x-session-manager

veya hangisinin geçerli olduğunu gösteren daha ayrıntılı bir açıklama edinin

update-alternatives --display x-session-manager

LXDE sistem genelinde varsayılan değilse ve bunu hesabınız için varsayılan yapmak istiyorsanız, aşağıdaki ~/.xsessiondosyayı kullanabilirsiniz :

#!/bin/sh
exec startlxde

Bazı Unix varyantlarında, yalnızca grafiksel girişler için değil startx, aynı şekilde çalışır; bu nedenle aynı şeyi oluşturmanız gerekir ~/.xinitrc. (Ya da aynı değil: içinde ~/.xsession, başka şeyler yapmak isteyebilirsiniz, çünkü grafiksel oturumda yürütülen ilk dosya budur; örneğin . ~/.profile, bazı ortam değişkenlerini ayarlamak için en üste koyabilirsiniz .)

Diğer ortamları bir defaya mahsus olarak denemek istiyorsanız, komut satırında çalışacak farklı bir program belirtebilirsiniz startx. startxProgram cilvesi: Programa tam yolunu kullanmak gerekir.

startx /usr/bin/startkde

startxKomut ayrıca sunucuya geçirmek için argümanlar belirlemenizi sağlar. Örneğin, aynı anda birden fazla GUI oturumu çalıştırmak istiyorsanız, her seferinde farklı bir ekran numarası geçirebilirsiniz. --Komut satırından sonra sunucu bağımsız değişkenlerini iletin startx.

startx /usr/bin/startkde -- :1

Debian 9'dayım. Makinem tty1'e açılıyor. Oturum startxaçtığımda, varsayılan Xfce4 oturumu başlar. Karımın tty1 veya tty2 kullanıcı girişinden. Onun startxkomut Tarçın (belirtilen çalışacak şekilde ayarlandı ~/.xsession). İkinci X sunucusu $DISPLAYiçin cevabınızın son kısmında belirtildiği gibi belirtmek zorunda değilim . Bu kesinlikle işe yarıyor olsa da. Otomatik olarak ikinci $DISPLAYvb yapar . Kurulum olsa harika. Grafik oturumuna giriş ve çıkış yok, sadece kullanıcı profillerini değiştirmek için bir klavye kısayolu var. Bu yararlı cevap için teşekkürler!
jbrock

10

Hayır: startxyapılandırılabilir. Göre manuel sayfa :

Çalıştırılacak istemciyi belirlemek için, startxönce .xinitrckullanıcının ana dizininde çağrılan bir dosyayı arar . O bulunmazsa, bu dosyayı kullanır xinitrciçinde xinitkütüphane dizinine.

startxX'i başlatmanın tek yolu (gördüğünüz gibi startlxde) değildir. startxManuel sayfa tekrar yardımcı olur:

Startx betiği, X Pencere Sisteminin tek bir oturumunu çalıştırmak için biraz daha hoş bir kullanıcı arabirimi sağlayan xinit (1) için bir ön uçtur . Genellikle argüman olmadan çalıştırılır.

Öte yandan, bir GUI (LXDE, KDE, vb.) Seçmek istiyorsanız xdmve farklı masaüstü türlerini seçmek için kdm, gdmveya gibi benzerler LightDMkullanılır. Debian'da genellikle kullanıyorum kdm, çünkü bu farklı masaüstü türlerine izin veriyor. gdmMasaüstü türlerinin çoğuna izin vermeyen paketler , ihtiyaçlarıma uygun değil.

xdmörneğin komut dizinizi sistem komut dosyalarıyla birlikte başlatmak için farklı bir komut dizisi seti kullanır ~/.xsession. Benzerler bunu görmezden gelebilir ve kendi komut dosyalarını kullanabilir. Ancak bu bir başlangıç ​​noktasıdır.


Peki, conf dosyalarında bir yerde örneğin LXDE çalıştırmak için yazılmıştır?
CuriousGuy

.xinitrcyapılandırılabilir kılan bir betiktir. Bunu yapmak için kodlanırsa doğrudan LXDE çalıştırabilir.
Thomas Dickey

1
startlxdexinit için bir ön uç değil, LXDE oturum yöneticisi için bir başlatıcı. Bunun yerine startxgeçemez, uygulayabileceğiniz bir şeydir ~/.xinitrc.
Gilles 'SO- kötü olmayı bırak'

Sonra bazı belgelere ihtiyacı var. Cidden, iyi bir cevap OP'yi yeniden anlatmaya çalışmak yerine dokümantasyon yönünde işaret eder (eğer dokümantasyon üzerinde daha iyi bir anlam vermek için bir yorum yapmadıkça).
Thomas Dickey
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.