# Autostartx après autologin

**URL:** <https://www.debian-fr.org/t/autostartx-apres-autologin/24471>\
**Category:** Trucs et Astuces\
**Created:** [Février 20, 2016, 9:24 UTC](https://www.debian-fr.org/t/autostartx-apres-autologin/24471 "2016-02-20T21:24:12Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![thuban](https://www.debian-fr.org/user_avatar/www.debian-fr.org/thuban/32/4177_2.png) [@thuban](https://www.debian-fr.org/u/thuban)\
**Post date:** [Février 20, 2016, 9:24 UTC](https://www.debian-fr.org/t/autostartx-apres-autologin/24471/1 "2016-02-20T21:24:12Z")

</div>

**Attention, cette manipulation laisse un libre accès sur votre machine!**

Il existe différentes méthode pour faire ça. Cependant, celle-ci a l’avantage de ne pas nécessiter de programmes annexes, ni de mingetty.  
Voici la procédure :  
Il faut éditer le fichier /etc/inittab (cela se fera avec les droits administrateur).  
Dans ce fichier, on changera ou commentera la ligne :

```auto
1:2345:respawn:/sbin/getty 38400 tty1

```

Par celle-ci :

```auto
1:2345:respawn:/bin/login -f YOUR_USER_NAME tty1 </dev/tty1 >/dev/tty1 2>&1

```

Maintenant, dans votre dossier home, vous trouverez un fichier nommé .profile (s’il n’existe pas, il faut le créer).  
Dans ce fichier, on ajoutera les lignes suivantes :

```auto
if [`tty` = "/dev/tty1"] ; then
startx
fi

```

Pour choisir la session qui démarrera, cela se gèrera dans le fichier .xinitrc. Ajoutez alors par exemple :

```auto
xmodmap
xbindeys &
...
autres programmes à démarrer &
exec gnome
#ou alors sous la forme
# exec votre_session
# par exemple : 
# exec openbox-session

```

---

<div class="post-metadata">

**Author:** ![Knucky](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/k/71e660/32.png) [@Knucky](https://www.debian-fr.org/u/Knucky)\
**Post date:** [Février 20, 2016, 9:24 UTC](https://www.debian-fr.org/t/autostartx-apres-autologin/24471/2 "2016-02-20T21:24:19Z")

</div>

> [@](#):
>
> `xbindkeys &`

Attention à ca: [bugs.debian.org/cgi-bin/bugreport.cgi?bug=447026](http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=447026)

Ca vient de m’arriver et c’est particulièrement ch… ![:smt005](https://www.debian-fr.org/uploads/default/original/1X/cdd45e7dd754015ac5291329b843a2851a0d4fe8.gif)

---

<div class="post-metadata">

**Author:** ![thuban](https://www.debian-fr.org/user_avatar/www.debian-fr.org/thuban/32/4177_2.png) [@thuban](https://www.debian-fr.org/u/thuban)\
**Post date:** [Février 20, 2016, 9:24 UTC](https://www.debian-fr.org/t/autostartx-apres-autologin/24471/3 "2016-02-20T21:24:25Z")

</div>

gênant, en effet, surtout sur un paquet stable.  
Il semblerait u’il faille lancer xmodmap avant xbindkeys?

---

<div class="post-metadata">

**Author:** ![Knucky](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/k/71e660/32.png) [@Knucky](https://www.debian-fr.org/u/Knucky)\
**Post date:** [Février 20, 2016, 9:24 UTC](https://www.debian-fr.org/t/autostartx-apres-autologin/24471/4 "2016-02-20T21:24:25Z")

</div>

[quote=“thuban”]gênant, en effet, surtout sur un paquet stable.  
Il semblerait u’il faille lancer xmodmap avant xbindkeys?[/quote]

Oui, et ne pas lancer en parallèle surtout !

Un exemple:

```auto
xmodmap ~/.Xmodmap
xrdb -load ~/.Xdefaults # pour plus de sureté...
numlockx
xbindkeys
xsetroot -solid black &
iceweasel &
x-terminal-emulator -g "102x38+1+1" -e screen -x -p 2 & 
sylpheed &
exec evilwm
```

---

<div class="post-metadata">

**Author:** ![ggoodluck47](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/g/c67d28/32.png) [@ggoodluck47](https://www.debian-fr.org/u/ggoodluck47)\
**Post date:** [Février 20, 2016, 9:24 UTC](https://www.debian-fr.org/t/autostartx-apres-autologin/24471/5 "2016-02-20T21:24:26Z")

</div>

Salut,

Question de néophyte ?

Tout ceci ayant pour but dès la mise sous tension de se retrouver sous X dans sa session ?

---

<div class="post-metadata">

**Author:** ![Knucky](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/k/71e660/32.png) [@Knucky](https://www.debian-fr.org/u/Knucky)\
**Post date:** [Février 20, 2016, 9:24 UTC](https://www.debian-fr.org/t/autostartx-apres-autologin/24471/6 "2016-02-20T21:24:27Z")

</div>

Salut,

[quote=“ggoodluck47”]  
Tout ceci ayant pour but dès la mise sous tension de se retrouver sous X dans sa session ?[/quote]  
Oui.

(Il y avait un autre texte à la place, mais c’était à coté de la plaque 😆 )

---

<div class="post-metadata">

**Author:** ![ggoodluck47](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/g/c67d28/32.png) [@ggoodluck47](https://www.debian-fr.org/u/ggoodluck47)\
**Post date:** [Février 20, 2016, 9:24 UTC](https://www.debian-fr.org/t/autostartx-apres-autologin/24471/7 "2016-02-20T21:24:27Z")

</div>

Salut  
Veillez à mettre un avertissement en début de ce post car il nuit gravement à la sécurité.  
Ce système est ouvert à tout vent.

---

<div class="post-metadata">

**Author:** ![fran.b](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/f/d78d45/32.png) [@fran.b](https://www.debian-fr.org/u/fran.b)\
**Post date:** [Février 20, 2016, 9:24 UTC](https://www.debian-fr.org/t/autostartx-apres-autologin/24471/8 "2016-02-20T21:24:29Z")

</div>

Le but ici serait de faire une borne automatique d’accès par exemple. La sécurité n’est pas compromise suivant les droits qu’a l’utilisateur connecté. Il convient donc de vérifier ces droits attentivement si la machine est destiné au public.

Cependant il y a un souci, avec ce système, si on lance une console, ça va gueuler, une méthode serait de changer le startx en

`if [`tty` = "/dev/tty1"] ; then
startx
fi
`

---

<div class="post-metadata">

**Author:** ![thuban](https://www.debian-fr.org/user_avatar/www.debian-fr.org/thuban/32/4177_2.png) [@thuban](https://www.debian-fr.org/u/thuban)\
**Post date:** [Février 20, 2016, 9:24 UTC](https://www.debian-fr.org/t/autostartx-apres-autologin/24471/9 "2016-02-20T21:24:33Z")

</div>

En effet, il ne faut pas lancer xmodmap en parallèle, merci de la précison.  
Oui, c’est vraiment mieux comme ça fran.b, je change tout de suite le post, et je rajoute l’avertissement!

---

<div class="post-metadata">

**Author:** ![fran.b](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/f/d78d45/32.png) [@fran.b](https://www.debian-fr.org/u/fran.b)\
**Post date:** [Février 20, 2016, 9:24 UTC](https://www.debian-fr.org/t/autostartx-apres-autologin/24471/10 "2016-02-20T21:24:35Z")

</div>

En fait d’ailleurs, le fichier .bashrc est plus judicieux pour ça mais bon ça n’est qu’un détail. Pour compléter, il faudrait vraiment indiquer comment vérifier qu’un utilisateur a des droits _très_ limité, la remarque de ggoodluck est quand même pertinente, ça compléterait bien l’astuce dans ce cas.

---

<div class="post-metadata">

**Author:** ![thuban](https://www.debian-fr.org/user_avatar/www.debian-fr.org/thuban/32/4177_2.png) [@thuban](https://www.debian-fr.org/u/thuban)\
**Post date:** [Février 20, 2016, 9:24 UTC](https://www.debian-fr.org/t/autostartx-apres-autologin/24471/11 "2016-02-20T21:24:35Z")

</div>

… Je crois que je ne comprends pas ce que vous voulez dire… 😊

---

<div class="post-metadata">

**Author:** ![fran.b](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/f/d78d45/32.png) [@fran.b](https://www.debian-fr.org/u/fran.b)\
**Post date:** [Février 20, 2016, 9:24 UTC](https://www.debian-fr.org/t/autostartx-apres-autologin/24471/12 "2016-02-20T21:24:39Z")

</div>

Voilà une machine qui dès qu’on l’allume se retrouve immédiatement sur un compte. C’est précieux pour des stations publics par exemple. Mais pour cela il faudrait indiquer ce qu’on doit vérifier pour minimiser les risques qu’un individu prenne tous les droits sur cette machine:

- Le noyau doit être à jour
- Droits ou non de mettre des périphériques amovibles, si oui il est impératifs que les périphériques soient montés en noexec.
- Droits restreints de lecture des logs
- mot de passe sur shadow  
etc.

Afin qu’une personne loguée n’ait pas de moyens simples de devenir root.

---

<div class="post-metadata">

**Author:** ![thuban](https://www.debian-fr.org/user_avatar/www.debian-fr.org/thuban/32/4177_2.png) [@thuban](https://www.debian-fr.org/u/thuban)\
**Post date:** [Février 20, 2016, 9:24 UTC](https://www.debian-fr.org/t/autostartx-apres-autologin/24471/13 "2016-02-20T21:24:39Z")

</div>

D’accord, je vois mieux. Cependant, il me faudrait un coup de main pour bien expliquer cela. Tout ce que je sais, c’est que cela peut notamment se gérer via le fichier /etc/group , mais pas beaucoup plus. J’édite le permier post à la demande 🙂

---

<div class="post-metadata">

**Author:** ![ggoodluck47](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/g/c67d28/32.png) [@ggoodluck47](https://www.debian-fr.org/u/ggoodluck47)\
**Post date:** [Février 20, 2016, 9:24 UTC](https://www.debian-fr.org/t/autostartx-apres-autologin/24471/14 "2016-02-20T21:24:39Z")

</div>

Re,

Après tout cela je souhaite pour toi que tmp & var soit séparé du / car il suffit de lancer une impression “récurrente” ou des espaces tmp pour planter par déni de service 🙂🙂🙂🙂 ![:smt006](https://www.debian-fr.org/uploads/default/original/1X/924eb3db8bedad6a0d333b02031d3c6a9af9d9c5.gif)

---

<div class="post-metadata">

**Author:** ![fran.b](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/f/d78d45/32.png) [@fran.b](https://www.debian-fr.org/u/fran.b)\
**Post date:** [Février 20, 2016, 9:24 UTC](https://www.debian-fr.org/t/autostartx-apres-autologin/24471/15 "2016-02-20T21:24:39Z")

</div>

Effectivement. Un parefeu soigné peut être aussi utilisé pour que la machine fasse des choses très précises. Un quota éventuel aussi, mais l’idée de partitions dédiées est la meilleure (/tmp , /var/log (remplissage de logs), /var/tmp (accessible en écriture) sont sur le même plan). Amusant comme pbm, je suis sur qu’on oublie des trucs.

---

<div class="post-metadata">

**Author:** ![thuban](https://www.debian-fr.org/user_avatar/www.debian-fr.org/thuban/32/4177_2.png) [@thuban](https://www.debian-fr.org/u/thuban)\
**Post date:** [Février 20, 2016, 9:24 UTC](https://www.debian-fr.org/t/autostartx-apres-autologin/24471/16 "2016-02-20T21:24:40Z")

</div>

Là, il en retourne de la sécurité de la machine. La méthode proposée ci-dessus est avant tout pour ceux désirant se passer de gdm,kdm,slim et accélérer le boot, ou libérer de la mémoire.

Cependant, toutes vos remarques semblent plus qu’édifiantes!

---

<div class="post-metadata">

**Author:** ![ggoodluck47](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/g/c67d28/32.png) [@ggoodluck47](https://www.debian-fr.org/u/ggoodluck47)\
**Post date:** [Février 20, 2016, 9:24 UTC](https://www.debian-fr.org/t/autostartx-apres-autologin/24471/17 "2016-02-20T21:24:44Z")

</div>

Salut,

Et c’est pourquoi j’ai connu des distributions où ces options amenait l’ecran en rouge vif (insoutenable) 🙂

---

<div class="post-metadata">

**Author:** ![MisterFreez](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/m/bb73d2/32.png) [@MisterFreez](https://www.debian-fr.org/u/MisterFreez)\
**Post date:** [Février 20, 2016, 9:25 UTC](https://www.debian-fr.org/t/autostartx-apres-autologin/24471/18 "2016-02-20T21:25:08Z")

</div>

Il existe des gens biens (même des gens très biens) qui n’utilisent pas bash (si si ça existe). À fin de rendre l’astuce plus portable il me semble dond mieux de placer le startx dans $HOME/.profile (il me semble que c’est bien lui), ça auras deux avantages :  
[ul][li]ce n’est fait que dans un login shell[/li]  
[li]ça marche avec des truc comme tcsh (si je me suis pas trompé dans le nom du fichier)[/li][/ul]

Sinon l’option noexec, pas sur /home, ni sur /tmp, etc… Ne pas monter /boot et monter les autres en lecture seule. Désactiver les tty en plus et empêcher de tuer le serveur X. Utiliser rbash peut être comme login shell (s’il limite pas trop).

---

<div class="post-metadata">

**Author:** ![Knucky](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/k/71e660/32.png) [@Knucky](https://www.debian-fr.org/u/Knucky)\
**Post date:** [Février 20, 2016, 9:25 UTC](https://www.debian-fr.org/t/autostartx-apres-autologin/24471/19 "2016-02-20T21:25:09Z")

</div>

[quote=“MisterFreez”]  
[\*]ça marche avec des truc comme tcsh (si je me suis pas trompé dans le nom du fichier)[/list][/quote]  
.profile ne fonctionnera pas non plus avec tcsh - .profile est typique des système GNU, on utilise ~/.login avec (t)csh, typique des systèmes BSD, bien que sous FreeBSD, tcsh lit ~/.profile. Bref c’est compliqué, vaut mieux RTFM selon la version de tcsh.

(T)csh ne respecte rien de toute manière, mais ayant été créé par Bill Joy (créateur de vi), c’est le pied quand t’as l’habitude de vi(m), je suis d’ailleurs en train de migrer depuis quelques jours… 😈

Mon ~/.login par exemple:

```auto
# pas besoin de shebang, seul tcsh "connait" ce fichier.
# un simple exemple de ~/.login pour tcsh

# ajout de ~/shell à $PATH (souvent c'est ~/bin chez vous)
setenv PATH "${PATH}:/home/francois/shell"
# lance screen en mode master si aucun screen n'est lancé
[-e /var/run/screen/S-francois/*`hostname`*] || screen -d -m
# si on est dans le tty1, on démarre X au login
if ( `tty` == "/dev/tty1" ) then
        setenv OOO_FORCE_DESKTOP "gnome" 
        # remplacement du shell de login par xinit
        exec xinit
end
```

EDIT: compatible à la norme ggoodluck47. Toute personne utilisant uniquement GNU/Linux n’est pas censé utiliser tcsh de toute manière - à part s’il a vendu son âme à Beastie 😉

---

<div class="post-metadata">

**Author:** ![ggoodluck47](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/g/c67d28/32.png) [@ggoodluck47](https://www.debian-fr.org/u/ggoodluck47)\
**Post date:** [Février 20, 2016, 9:25 UTC](https://www.debian-fr.org/t/autostartx-apres-autologin/24471/20 "2016-02-20T21:25:12Z")

</div>

Salut,

Attention, si vos scripts doivent être repris par le wiki en construction, ils doivent fonctionner pour Debian.

J’ai l’habitude d’écrire les premières lignes de cette manière:

#!/usr/bin/env bash

# A quoi sert ce script

# synopsis si besoin 🙂

[Page suivante](https://www.debian-fr.org/t/autostartx-apres-autologin/24471.md?page=2)
