Lancer X au démarrage

From ArchWiki

Jump to: navigation, search


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.

Voir le sujet dans le forum

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.

Personal tools