D.12. /etc/rc.d/init.d/console
# / Bin / sh
################################################ ######################
# Konsole starten
#
# / Bin / sh
################################################ ######################
# Konsole starten
#
# Beschreibung: Legt die Tastaturbelegung und die Bildschirmschriftart fest
#
# Autoren: Gerard Beekmans - [E-Mail geschützt]
# Alexander E. Patrakov
#DJ Lucas - [E-Mail geschützt]
# Update: Bruce Dubbs - [E-Mail geschützt]
#
# Version: LFS 7.0
#
################################################ ######################
### BEGIN INIT INFO
# Bietet: Konsole
# Erforderlicher Start:
# Sollte starten: $local_fs
# Erforderlicher Stopp:
# Sollte aufhören:
# Standard-Start: S
# Standard-Stopp:
# Kurzbeschreibung: Richtet eine lokalisierte Konsole ein.
# Beschreibung: Richtet Schriftarten und Spracheinstellungen für den Benutzer ein
# lokal wie in /etc/sysconfig/console definiert.
# X-LFS-Bereitgestellt von: LFS
### END INIT INFO
. /lib/lsb/init-funktionen
# Englischsprachige Muttersprachler haben /etc/sysconfig/console wahrscheinlich überhaupt nicht [ -r /etc/sysconfig/console ] && . /etc/sysconfig/console
ist wahr()
{
[ "$1" = "1" ] || [ "$1" = "ja" ] || [ "$1" = "wahr" ]
}
fehlgeschlagen=0
Fall "${1}" am Anfang)
# Sehen Sie, ob wir etwas tun müssen
if [ -z "${KEYMAP}" ] && [ -z "${KEYMAP_CORRECTIONS}" ] && [ -z "${FONT}" ] && [ -z "${LEGACY_CHARSET}" ] &&
! is_true "${UNICODE}"; dann beenden 0
fi
# Unterhalb dieser Zeile sollten keine falschen Fehler auftreten! log_info_msg "Linux-Konsole wird eingerichtet ..."
# Herausfinden, ob eine Framebuffer-Konsole verwendet wird
[ -d /sys/class/graphics/fb0 ] && use_fb=1 || use_fb=0
# Finden Sie den Befehl heraus, um die Konsole in den
# gewünschter Modus
is_true "${UNICODE}" &&
MODE_COMMAND="echo -en '\033%G' && kbd_mode -u" || MODE_COMMAND="echo -en '\033%@\033(K' && kbd_mode -a"
# Auf Framebuffer-Konsolen muss die Schriftart für jedes VT in
# UTF-8-Modus. Dies schadet auch im Nicht-UTF-8-Modus nicht.
! ist_wahr "${use_fb}" || [ -z "${FONT}" ] || MODE_COMMAND="${MODE_COMMAND} && setfont ${FONT}"
# Wenden Sie diesen Befehl auf alle Konsolen an, die in
# /etc/inittab. Wichtig: Im UTF-8-Modus sollte dies
# vor dem Setzen der Schriftart geschehen, sonst wird ein Kernel-Fehler
# angezeigt und die Unicode-Karte der Schriftart wird nicht
# gebraucht.
für TTY in `grep '^[^#].*respawn:/sbin/agetty' /etc/inittab | grep -o '\btty[[:digit:]]*\b'`
do
openvt -f -w -c ${TTY#tty} -- \
/bin/sh -c "${MODE_COMMAND}" || fehlgeschlagen=1
erledigt
# Legen Sie die Schriftart (falls nicht bereits oben festgelegt) und die Tastaturbelegung fest
[ "${use_fb}" == "1" ] || [ -z "${FONT}" ] || Schriftart $FONT festlegen || fehlgeschlagen=1
[ -z "${KEYMAP}" ] ||
Schlüssel laden ${KEYMAP} >/dev/null 2>&1 || fehlgeschlagen=1
[ -z "${KEYMAP_CORRECTIONS}" ] ||
Schlüssel laden ${KEYMAP_CORRECTIONS} >/dev/null 2>&1 || fehlgeschlagen=1
# Konvertieren Sie die Tastenbelegung von $LEGACY_CHARSET in UTF-8 [ -z "$LEGACY_CHARSET" ] ||
dumpkeys -c "$LEGACY_CHARSET" | loadkeys -u >/dev/null 2>&1 || fehlgeschlagen=1
# Wenn einer der oben genannten Befehle fehlgeschlagen ist, wird die Falle am
# top würde $failed auf 1 setzen ( exit $failed ) evaluate_retval
Ausfahrt $fehlgeschlagen
;;
*)
esac
echo "Verwendung: ${0} {start}" exit 1
;;
# Konsole beenden