HOWTO Arrêter ou redémarrer en utilisateur normal

Un article de Gentoo Linux Wiki.

[modifier] Introduction

Ce Howto vise à permettre à un utilisateur normal d'éteindre ou de redémarrer sa machine.
Ce Howto n'est pas prévu pour ceux qui utilisent un gestionnaire de connexion (comme GDM, KDM et XDM) mais pour ceux qui préférent la console.

[modifier] Mise en place

Premièrement nous devons installer sudo :

emerge -av app-admin/sudo

Maintenant, nous allons éditer son fichier de configuration.
Nous pouvons le faire facilement avec visudo - cette commande lance l'éditeur défini dans la variable d'environnement EDITOR, et prévient /etc/sudoers contre les dommages causés par des modifications concurrentes.

Ajouter les lignes suivantes dans votre /etc/sudoers (y compris les '%') :

Fichier : /etc/sudoers
%shutdown ALL=(root) NOPASSWD: /sbin/reboot.sh
%shutdown ALL=(root) NOPASSWD: /sbin/halt.sh

Pour permettre aux utilisateurs non-root d'utiliser sudo, nous devons "setuider" root :

chmod +s /usr/bin/sudo

Maintenant, nous devons créer deux fichiers: /usr/bin/halt et /usr/bin/reboot.

Le contenu du premier fichier sera :

Fichier : /usr/bin/halt
#! /bin/sh
sudo /sbin/halt.sh $*

Le contenu du deuxième sera :

Fichier : /usr/bin/reboot
#! /bin/sh
sudo /sbin/reboot.sh $*

Maintenant, tapez ces commandes :

cd /usr/bin/
groupadd shutdown
chgrp shutdown reboot halt
chmod 755 reboot halt

Créons encore deux autres fichiers : /sbin/halt.sh et /sbin/reboot.sh.

Le premier fichier contiendra :

Fichier : /sbin/halt.sh
#! /bin/sh
/sbin/shutdown -h 0

Le deuxième contiendra :

Fichier : /sbin/reboot.sh
#! /bin/sh
/sbin/shutdown -r 0

Encore deux commandes :

cd /sbin/
chmod 744 reboot.sh halt.sh

Enfin, nous devons indiquer les utilisateurs à qui vous voulez permettre l'arrêt ou le redémarrage de l'ordinateur.

gpasswd -a <user> shutdown

Terminé !
Maintenant, quand vous voulez éteindre la machine, vous pouvez taper :

halt

et quand vous voulez redémarrer, vous tapez:

reboot

[modifier] Liens

Article originel :

Article sur les forums Gentoo :

Traduit de l'article du Wiki anglais.