Lancer X au démarrage
From ArchWiki
i18n |
---|
English |
Français |
Русский |
Português do Brasil |
ไทย |
简体中文 |
Contents |
Méthode 1: /etc/inittab
C'est le principale fichier de configuration pour le progamme init
. Éditez le fichier /etc/inittab
.
La première ligne non commenté devrait être :
id:3:initdefault:
Elle indique le niveau de lancement (ndt: runlevel) à 3 pour le mode multi-utilisateur.<ref>C'est à dire le mode de lancement par défaut du système si l'on ne passe pas le paramètre single
au noyau via le chargeur d'amorçage</ref>
Modifier la ligne pour obtenir:
id:5:initdefault:
Cela paramétra le système pour démarrer jusqu'au niveau 5; X11.
Vous voudrez peut être également changer la dernière ligne de /etc/inittab
pour ajouter gdm ou kdm à la place de xdm.
Method 2: /etc/rc.conf
Un autre moyen d'arriver au même résultat est de démarrer le gestionnaire d'affichage (gdm
, kdm
,slim
, ou xdm
) en tant que daemon. Éditez le tableau des DAEMONS dans /etc/rc.conf
, par exemple:
DAEMONS=(syslog-ng network hal fam gdm)
Method 3: ~/.bash_profile
Une alternative est d'ajouter des commandes comme celles ci-dessous dans le fichier de configuration de votre shell (par exemple ~/.bash_profile
ou ~/.zshrc
):
if [[ -z "$DISPLAY" ]] && [[ $(tty) = /dev/vc/1 ]]; then startx logout fi
ou
if [[ -z "$DISPLAY" ]] && [[ $(tty) = /dev/vc/1 ]]; then xinit logout fi
En utilisant cette méthode X est automatiquement démarré quand vous vous identifié dans la première console. De plus l'utilisateur sera déconnecté à l'arret de X. La prochaine fois que vous vous identifierez, X se lancera automatiquement, et si vous avez suivi les instructions pour automatiquement ouvrir des sessions dans des consoles virtuelles au démarrage vous obtiendrez automatiquement une session X prête à l'emploi.
En plus des lignes ci-dessus, vous pouvez ajouterhere, you can instead add:
[ -f ~/.bash_login ] && . ~/.bash_login
à la fin de votre ~/.bash_profile
. Puis dans votre ~/.bash_login
(si ~/.bash_login n'existe pas vous pouvez le créer), ajoutez:
startx
Notez que ~/.bash_login
peut être utilisé pour lancer plus de commandes que simplement "startx" au moment de l'identification dans votre console de démmarage (par exemple, si vous utilisez smbnetfs pour monter des partages Windows, vous pouvez ajouter "smbnetfs /chemin/où/monter/").
Démarrer X avec son utilisateur favoris sans phase d'identification
Une manière de se passer de gestionnaire d'affichage et démarrer directement avec votre gestionnaire de fenêtre où votre environnement de bureau favoris est la suivante :
Dans /etc/inittab
modifiez:
id:3:initdefault: [...] x:5:respawn:/usr/bin/xdm -nodaemon
vers
id:5:initdefault: [...] x:5:once:/bin/su PREFERED_USER -l -c "/bin/bash --login -c startx >/dev/null 2>&1"
où PREFERED_USER est le compte utilisateur de votre choix
Vous pouvez bien entendu mettre n'importe quoi à la place de startx
. Startx lancera votre script ~/.xinitrc, l'éditer est donc un moyen facile de démarrer le gestionnaire de fichier de votre choix.
Démarrer X de façon semi automatique à l'identification
Vous pouvez ajouter les lignes suivantes dans le fichier de configuration de votre shell :
# Recupere un caractere unique getc () { stty raw -echo tmp=`dd bs=1 count=1 2>/dev/null` eval $1='$tmp' stty cooked } # Si on est dans une console vc, et qu'aucune # instance de X n'est détecté, demander si # startx doit être lancé if [ -n `tty | grep '/dev/vc/'` ] && [ -z "`ps aux|grep "start[x]"`" ];then echo "Aucune session X11 détecté, voulez vous en lancer une ? [O|n]" getc start_x if [ `echo "$start_x" | grep "n"` ];then echo "X11 ne sera pas lancé." else startx fi fi
Si aucune session X n'est démarré, il vous sera alors proposer d'en lancer une lorsque vous vous identifié. Saisissez «n» pour empêcher cela, ou appuyez sur n'importe quel autre touche sinon.