6.5 xdm

Καθώς το Linux γίνετε όλο και ποιο χρήσιμο σαν λειτουργικό σύστημα για προσωπικούς υπολογιστές, σε πολλούς χρήστες είναι επιθυμητό να εκκινεί το μηχάνημα τους κατευθείαν σε ένα γραφικό περιβάλλον. Για αυτό, πρέπει να πείτε στο Slackware να εκκινεί μέσα στο X, και να δώσετε έναν διαχειριστή σύνδεσης (login manager). Το Slackware έρχεται με τρία γραφικά εργαλεία σύνδεσης, xdm(1), kdm, και gdm(1).

Το xdm είναι ένας διαχειριστής σύνδεσης που έρχεται μαζί με το σύστημα X.org. Είναι “πανταχού παρών” αλλά όχι τόσο λειτουργικός όσο οι εναλλακτικοί του. Το kdm είναι ένας διαχειριστής σύνδεσης που έρχεται μαζί με το KDE, το K Desktop Environment. Τέλος, το gdm ναι ένας διαχειριστής σύνδεσης που έρχεται μαζί με το GNOME. Οποιοδήποτε από τις επιλογές θα σας επιτρέψει να συνδέεστε με όποιον χρήστη θέλετε, και να επιλέγετε τι γραφικό περιβάλλον επιθυμείτε να χρησιμοποιήσετε.

Δυστυχώς, το Slackware δεν διαθέτει ένα ωραίο πρόγραμμα σαν το xwmconfig για την επιλογή του διαχειριστή σύνδεσης, έτσι εάν έχουν εγκατασταθεί και οι τρεις μπορεί να χρειαστεί να κάνετε κάποια επεξεργασία για να επιλέξτε αυτόν της προτίμησης σας. Αλλά πρώτα, θα περιγράψουμε το πως να εκκινήσετε σε γραφικό περιβάλλον.

Προκειμένου να εκκινήσετε το X κατά την εκκίνηση, πρέπει να εκκινήσετε στο run-level 4. Τα run-levels είναι απλά ένας τρόπος να λέμε στο init(8) να κάνει κάτι διαφορετικό όταν ξεκινά το λειτουργικό σύστημα. Το κάνουμε αυτό με την επεξεργασία του αρχείου διαμόρφωσης για το init, το /etc/inittab.

# These are the default runlevels in Slackware:
# 0 = halt
# 1 = single user mode
# 2 = unused (but configured the same as runlevel 3)
# 3 = multiuser mode (default Slackware runlevel)
# 4 = X11 with KDM/GDM/XDM (session managers)
# 5 = unused (but configured the same as runlevel 3)
# 6 = reboot

# Default runlevel. (Do not set to 0 or 6)
id:3:initdefault:

Για να κάνουμε το Slackware να εκκινεί σε γραφικό περιβάλλον, απλά αλλάζουμε το 3 σε 4.

  # Default runlevel. (Do not set to 0 or 6)
id:4:initdefault:

Τώρα το Slackware θα εκκινεί στο runlevel 4 και θα εκτελεί το /etc/rc.d/rc.4. Αυτό το αρχείο ξεκινά το X και καλεί οποινδήποτε διαχειριστή σύνδεσης έχετε επιλέξει. Λοιπόν, πως επιλέγουμε διαχειριστές συνδέσεων; Υπάρχουν λίγοι τρόποι για να το κάνεις αυτό, θα τους εξηγήσω αφού πρώτα δούμε το rc.4.

  # Try to use GNOME's gdm session manager:
if [ -x /usr/bin/gdm ]; then
exec /usr/bin/gdm -nodaemon
fi

# Not there? OK, try to use KDE's kdm session manager:
if [ -x /opt/kde/bin/kdm ]; then
exec /opt/kde/bin/kdm -nodaemon
fi

# If all you have is XDM, I guess it will have to do:
if [ -x /usr/X11R6/bin/xdm ]; then
exec /usr/X11R6/bin/xdm -nodaemon
fi

Όπως μπορείτε να δείτε εδώ, το rc.4, πρώτα ελέγχει εάν το gdm είναι εκτελέσιμο, και εάν είναι τότε το τρέχει. Το δεύτερο στη λίστα είναι το kdm, και τέλος το xdm. Μία λύση για την επιλογή ενός διαχειριστή σύνδεσης είναι να αφαιρέσετε αυτούς που δεν επιθυμείτε με τη χρηση της εντολής removepkg. Μπορείτε να μάθετε περισσότερα για την removepkg στο Κεφάλαιο 18.

Επιλεκτικά, μπορείτε να αφαιρέσετε τα δικαιώματα εκτέλεσης από τα αρχεία αυτά που δεν θέλετε να χρησιμοποιήσετε. Περιγράφουμε την chmod στο Κεφάλαιο 9.

# chmod -x /usr/bin/gdm
      

Τέλος, μπορείτε απλά να βάλετε σε σχόλια τις γραμμές για τους διαχειριστές σύνδεσης που δεν θέλετε να χρησιμοποιήσετε.use.
  # Try to use GNOME's gdm session manager:
# if [ -x /usr/bin/gdm ]; then
# exec /usr/bin/gdm -nodaemon
# fi

# Not there? OK, try to use KDE's kdm session manager:
if [ -x /opt/kde/bin/kdm ]; then
exec /opt/kde/bin/kdm -nodaemon
fi

# If all you have is XDM, I guess it will have to do:
if [ -x /usr/X11R6/bin/xdm ]; then
exec /usr/X11R6/bin/xdm -nodaemon
fi

Όποιες γραμμές έχουν μπροστά το σύμβολο (#) θεωρούνται σχόλια και ο φλοιός ήσυχα τις αποφεύγει. Έτσι, ακόμα και εάν το gdm είναι εγκατεστημένο και εκτελέσιμο, ο φλοιός (σε αυτή την περίπτωση bash) δεν θα ασχοληθεί με το να ψάξει για αυτό.