Startx
startx on komento, jolla tavallisena käyttäjänä voi käynnistää X-palvelimen. Näin voidaan joko välttää graafisen kirjautumisohjelman käynnistäminen tai luoda uusi istunto automaattisesti käynnistyvän (tai käynnistyvien) rinnalle.
Itse asiassa startx on skripti (katso bash-skriptaus), joka (muutamien järjestelyiden lisäksi) parsii komentorivin ja kutsuu ohjelmaa xinit sopivilla parametreillä. Startx-skripti ja etenkin xinitin käynnistämät X:n alustusskriptit ovat monimutkaisia ja eroavat jakelusta toiseen, tässä kuitenkin pääpiirteet:
Startx käyttää kahta parametrijoukkoa, jälkimmäinen välitetään X-palvelimelle, edellinen koskee X:n ohella käynnistettäviä ohjelmia. Nämä kaksi erotetaan kahdella tavuviivalla ("--"). Jommankumman tai molemmat voi jättää pois.
X-palvelinta koskevat parametrit
Oletuksena startx käynnistää X-palvelimen X:n "näytölle" (englanniksi display) :0 ja ensimmäiselle vapaalle virtuaalikonsolille, joka yleensä on vt7. Jos käytössä on graafinen kirjautumisohjelma, on :0-display luultavasti jo sen käytössä, joten startx-komento on tässä tilanteessa esimerkiksi
startx -- :1
Jos lisäksi halutaan määrittää virtuaalikonsoli sekä estää palvelinta kuuntelemasta verkkoa, olisi komento muotoa
startx -- :1 vt8 -nolisten tcp
Viimeksi mainittu on tosin useimmissa jakeluissa turhaa, sillä verkon kuuntelu on tyypillisesti oletuksena pois päältä käytettäessä xinitiä X:n käynnistämiseen. Lisäksi useimmat palomuurit on muutenkin asetettu estämään tämänkaltaiset verkosta tulevat pyynnöt.
Erikoistilanteita varten löytyy joukko muita valitsimia, katso esimerkiksi man-sivua Xserver(1). Jos ensimmäinen parametri alkaa /:llä, se tulkitaan komennoksi, jolla X-palvelin käynnistetään, ja loput komentorivistä tämän komennon parametreiksi. X-palvelimen oletusasetuksia voi myös muuttaa luomalla tiedosto ~/.xserverrc ja määrittelemällä siihen X:n käynnistävän oletuskomentorivin.
Ajettavia ohjelmia koskevat parametrit
Jollei startx-komennossa määritellä käynnistettäviä ohjelmia, oletuksena käynnistetään tiedostossa ~/.xinitrc tai ~/.Xclients määritellyt ohjelmat, järjestelmän oletusistunto (tiedoston /etc/X11/xinit/xinitrc ja sen kutsumien skriptien määrittelemänä) tai päätemulaattori xterm. Järjestelmän oletusistunto voi olla explisiitisti määritelty esimerkiksi asetustiedostossa /etc/sysconfig/desktop tai linkkinä /etc/alternatives/x-session-manager. (näin on usein jos jokin työpöytäympäristö asennettuna) tai järjestelmä kokeilee muutamia vaihtoehtoja, kunnes löytää toimivan. Riippuen asetuksista oletusistunnon saa vaihdettua myös luomalla tiedoston ~/.xsession ja määrittelemällä siihen käynnistettävät ohjelmat.
Käynnistettäviä ohjelmia voi määritellä joko istunnon nimellä (usein vaihtoehtoina ovat asennetut työpöytäympäristöt sekä "failsafe") tai muut ohjelmat käynnistävän komennon koko polulla, esimerkiksi startx /usr/bin/fvwm (jossa fvwm on ikkunointiohjelma, jonka asetustiedostossa määritellään muut käynnistettävät ohjelmat) tai $HOME/.xsession, jos haluttu istunto on määritelty tässä tiedostossa. Komennolle voi antaa parametrejä.
Kolmas mahdollisuus on määritellä pelkästään ohjelmalle xterm annettavat parametrit ja käynnistää loput istunnosta (ikkunamanageri mukaanlukien) xtermistä käsin.
Esimerkkejä
Käynnistä järjestelmän määrittelemä vikasietoistunto, yleensä pelkkä xterm, DISPLAY-määritteellä :0 ja oletuksen mukaiselle virtuaalikonsolille:
startx failsafe
Käynnistä tiedostossa ~/.xsession2 määritelty istunto:
startx $HOME/.xsession2
Käynnistä järjestelmän oletusistunto toisen istunnon oheen:
startx -- :1 vt8
Käynnistä vastaavasti ikkunointiohjelma fvwm:
startx /usr/bin/fvwm -- :1 vt8
Käynnistä GNOME (gnome-session) toisella koneella ssh:n kautta koneelta, jossa melkein vain ssh ja X-palvelin:
startx /usr/bin/ssh tunnus@toinenkone gnome-session