Το xinit είναι το πρόγραμμμα που χρησιμοποιείται για την εκκίνηση του
εξυπηρετητή (Xserver) του X Window System μαζί με το πρώτο τους
πρόγραμμα-πελάτη, το οποίο είναι συνήθως ένα παράθυρο-τερματικό (terminal
emulator). Oσο τρέχει το πρόγραμμα αυτό θα λειτουργεί και ο εξυπηρετητής. Με
την έξοδο του προγράμματος θα κλείσουν και τα X Windows. Το
xinit
βρίσκεται όπως και τα υπόλοιπα προγράμματα των X Windows
στο directory /usr/bin/X11
.
Η σύνταξη του xinit
ειναι η εξής:
xinit [[client] client-options [-- [server] [display] server-options]]όπου client είναι το πρόγραμμα-πελάτης των X Windows που θα πρέπει να τρέξει πρώτο ο εξυπηρετητής. Ακολουθούν οι παράμετροι (client-options) που θέλουμε το
xinit
να περάσει στο πρόγραμμα. Αν δεν ορίσουμε κάποιο
συγκεκριμένο πελάτη το xinit
θα κοιτάξει στο home directory του
χρήστη για το αρχείο .xinitrc
και θα το τρέξει. Το
.xinitrc
είναι ένα shell script
, δηλαδή ένα αρχείο
που περιέχει μία σειρά από εντολές του shell. Ειδικότερα περιέχει τα
προγράμματα πελάτες που ο χρήστης θέλει να τρέχουν εξ αρχής κάθε φορά που
ξεκινά τα X Windows. Τα προγράμματα αυτά θα πρέπει να τρέχουν στο
background, δηλαδή να αποδεσμεύονται αμέσως από το shell, έτσι ώστε να μην
εμποδίζουν τα προγράμματα που ακολουθούν να ξεκινήσουν. Το τελευταίο όμως
πρόγραμμα στο αρχείο .xinitrc
δεν θα πρέπει να τρέξει στο
background έτσι ώστε να εμποδίσει το .xinitrc
να τερματίσει.
Και αυτό γιατί ο τερματισμός της εκτέλεσης του αρχείου .xinitrc
είναι και το σήμα για τα X Windows να σταματήσουν και αυτά. Το πρόγραμμα που
μπαίνει συνήθως στο τέλος του .xinitrc
είναι ο διαχειριστής των
παραθύρων (window manager) ή κάποιο παράθυρο τερματικό (xterm
).
Σημειώνουμε ότι για να τρέξει ένα πρόγραμμα στο background θέτουμε στο τέλος
της γραμμής εισαγωγής (μετά το όνομα του προγράμματος και τις παραμέτρους
του) το σύμβολο "&", π.χ:
xterm -display icaros:0.0 &Το αρχείο
.xinitrc
δίνει την δυνατότητα στο χρήστη να καθορίσει, ανάλογα με
τις ανάγκες, πως θα πρέπει να είναι τα X Windows όταν ξεκινούν και τον
διευκολύνει εκτελώντας αυτομάτα μία συγκεκριμένη ακολουθία εντολών κάθε
φορά. Για παράδειγμα το xinitrc
μπορεί να έχει την μορφή:
# το πρόγραμμα xrdb ξεκινά, κάνει την δουλεία του και στην συνέχεια # σταματά,οπότε και δεν ενοχλεί τα προγράμματα που ακολουθούν. xrdb .Xdefaults # τα προγράμματα xsetroot,xclock,xload και xterm όμως ξεκινούν και # μένουν στην οθόνη των X Windows ώσπου να τα σταματήσει ο χρήστης # γι' αυτό και τα τρέχουμε με το σύμβολο "&" στο τελος. xsetroot -solid gray & xclock -geometry 50x50 -0 +0 -bw 0 & xload -geometry 50x50 -0 +0 -bw 0 & # ξεκινούμε και δύο παράθυρα τερματικά για να εισάγουμε τις εντολές μας xterm -geometry 80x24 -0 +0 -n Console & xterm -geometry 80x24 -0 +0 -n Working_Window & # τέλος ξεκινάμε και τον διαχειριστή των παραθύρων (twm) χωρίς όμως το # σύμβολο "&". 'Eτσι για να τερματίσουμε το .xinitrc και κατ' επέκταση να # βγούμε από τα X Windows θα πρέπει να σταματήσουμε τον twm. twmΣε περίπτωση που δεν υπάρχει το αρχείο
.xinitrc
το xinit
εξ ορισμού θα
ξεκινήσει ένα παράθυρο τερματικό (xterm)
με την ακόλουθη σύνταξη:
xterm -geometry +1 +1 -n login -display :0Ο χρήστης για να τερματίσει τα X Windows θα πρέπει να σταματήσει το παράθυρο τερματικό δίνοντας την εντολή
"exit"
.
Στη σύνταξη του xinit
μετά το πρόγραμμα πελάτη (client) και τις
παραμέτρους του (client-options) ακολουθούν δύο παύλες (--)
και
το όνομα του προγράμματος εξυπηρετητή (server) των X Windows. Ακολουθεί,
προαιρετικά, το display στο οποίο θα ξεκινήσει ο εξυπηρετητής και οι
παράμετροι του. Σε περίπτωση που ο χρήστης δεν ορίσει το όνομα του
εξυπηρετητή το xinit
θα κοιτάξει πάλι στο home
directory
του χρήστη για το αρχείο με το όνομα
.xserverrc ,το οποίο όπως και το .xinitrc
είναι
ένα shell script, και θα το εκτελέσει. Το αρχείο .xserverrc
ξεκινά τον εξυπηρετητή και εκτελεί αν χρειάζεται και κάποιες άλλες σχετικές
εντολές. Σε αντίθεση με το αρχείο .xinitrc
το
.xserverrc
δεν ενδείκνυται για πειραματισμούς και
μετατροπές,όπως άλλωστε και ό,τι άλλο έχει σχέση με τον εξυπηρετητή
(server). Τέλος, αν το xinit
δεν βρεί ούτε το αρχείο
.xserverrc
θα χρησιμοποιήσει εξ ορισμού τον εξυπηρετητή με την
ακολουθη σύνταξη:
X :0Η πιο απλή, και συνηθισμένη περίπτωση, είναι να έχουμε στο
home
directory
μας το δικό μας αρχείο .xinitrc
- και το
.xserverrc
αν μας έχει δοθεί - και να τρέχουμε το
xinit
χωρίς ορίσματα, απλώς με το όνομά του:
xinit