J'ai une machine 15.10 64 bits avec plusieurs comptes d'utilisateurs.
Normalement, je sélectionne Ubuntu dans GRUB, il démarre et me montre l'écran de connexion, je sélectionne un compte, saisis le mot de passe et démarre mes applications.
C'est ok et devrait rester ainsi, mais j'aimerais avoir une autre option dans le menu GRUB:
Si je sélectionne celui-ci, il devrait démarrer la même installation Ubuntu, mais se connecter automatiquement à un compte d'utilisateur spécifique (protégé par mot de passe) et démarrer un script, qui peut ne pas être lancé si je me connecte normalement.
Comme la connexion automatique contourne le mot de passe du compte, j'aimerais également protéger par mot de passe cette option de démarrage GRUB, afin que je doive entrer mon mot de passe (ou un autre) dans GRUB avant de démarrer cette seule option.
Est-il possible de mettre en place quelque chose comme ça? Comment devrais-je le faire?
Cela peut être accompli en utilisant:
Pour cet exemple, je vais montrer comment configurer un mode kiosque à l'aide de Google Chrome.
#! /bin/sh
metacity &
while true
do
google-chrome --start-maximized
if zenity --question --text='Do you want to logout?' --title='Logout'
then
exit
fi
done
Gardez-le à, dites /usr/local/bin/chrome-kiosk.sh
, rendez-le exécutable. Notez que j'utilise metacity
pour un simple gestionnaire de fenêtres qui me fournit une configuration fonctionnelle sans configuration supplémentaire.
[Desktop Entry]
Name=Chrome
Comment=This session logs runs a Google Chrome kiosk
Exec=/usr/local/bin/chrome-kiosk.sh
Icon=google-chrome
Type=Application
X-LightDM-DesktopName=Chrome
Enregistrez-le à /usr/share/xsessions/chrome.desktop
. Si vous utilisez un script différent, modifiez au moins la ligne Exec
en conséquence.
[Seat:*]
autologin-guest=false
autologin-user=username
autologin-user-timeout=0
autologin-session=chrome
Enregistrez-le sous /etc/lightdm/autologin-lightdm.conf
. Remplacez username
par le nom d'utilisateur souhaité.
systemctl cat lightdm.service |
sed '/ExecStart/s/$/ --config=/etc/lightdm/autologin-lightdm.conf' |
Sudo tee /etc/systemd/system/autologin-lightdm.service
Cela crée une copie personnalisée de la valeur par défaut lightdm.service
nommé autologin-lightdm.service
à /etc/systemd/system
, avec la ligne ExecStart
remplacée par:
ExecStart=/usr/sbin/lightdm --config /etc/lightdm/autologin-lightdm.conf
Pour tester cela, dans le menu GRUB, appuyez sur e pour modifier l'entrée Ubuntu. Recherchez la ligne linux
et ajoutez:
systemd.mask=display-manager.service systemd.wants=autologin-lightdm.service
(Vous pouvez omettre le .service
extensions.)
Presse CtrlX. Vous devez être connecté à l'utilisateur et avoir une fenêtre Google Chrome Chrome maximisée.
À déterminer.