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 sessio 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ää kaksi 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äytölle" (englanniksi DISPLAY) :0 ja virtuaalikonsolille vt7. Jos käytössä on graafinen kirjautumisohjelma, nämä ovat luultavasti jo sen käytössä, joten startx-komento on tässä tilanteessa esimerkiksi startx -- :1 vt8. Lisäksi palvelimen ei pitäisi kuunnella verkkoa, joten koko komento on
startx -- :1 vt8 -nolisten tcp
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 oletussessio (tiedoston /etc/X11/xinit/xinitrc ja sen kutsumien skriptien määrittelemänä) tai päätemulaattori xterm. Järjestelmän oletussessio voi olla explisiitisti määritelty asetustiedostossa /etc/sysconfig/desktop tms. (näin usein on jos jokin työpöytäjärjestelmä asennettuna) tai järjestelmä kokeilee muutamia vaihtoehtoja, kunnes löytää toimivan. Riippuen asetuksista oletussession saa vaihdettua myös luomalla tiedosto ~/.xsession ja määrittelemällä siihen käynnistettävät ohjelmat.
Käynnistettäviä ohjelmia voi määritellä joko session nimellä (usein vaihtoehtoina on 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 ikkunointiohjelma, jonka asetustiedostossa määritellään muut käynnistettävät ohjelmat) tai $HOME/.xsession, jos haluttu sessio 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 sessiosta xtermistä käsin.
Esimerkkejä
Käynnistä järjestelmän määrittelemä virheensietosessio, yleensä pelkkä xterm, DISPLAY-määritteellä :0 ja oletuksen mukaiselle virtuaalikonsolille:
startx failsafe
Käynnistä tiedostossa ~/.xsession2 määritelty sessio:
startx $HOME/.xsession2
Käynnistä järjestelmän oletussessio toisen session oheen:
startx -- :1 vt8 -nolisten tcp
Käynnistä vastaavasti ikkunointiohjelma fvwm:
startx /usr/bin/fvwm -- :1 vt8 -nolisten tcp
Käynnistä gnome-session toisella koneella ssh:n kautta koneelta, jossa melkein vain ssh ja X-palvelin:
startx /usr/bin/ssh tunnus@toinenkone gnome-session