View previous topic :: View next topic |
Author |
Message |
scout Veteran
Joined: 08 Mar 2003 Posts: 1991 Location: France, Paris en Semaine / Metz le W-E
|
Posted: Wed May 25, 2005 11:41 pm Post subject: [TIP] Ne pas éteindre la mauvaise machine |
|
|
Voilà un tip à deux francs ... mais c'est quand même un tip.
La plupart d'entre vous savent déja qu'avec sudo on peux faire un "halt" ou un "reboot" en utilisateur normal.
Alors, chez moi avant le tip:
/etc/sudoers
Code: | Cmnd_Alias SHUTDOWN = /sbin/shutdown
geoffrey ALL = (root) NOPASSWD: SHUTDOWN |
et dans mon .zshrc (même syntaxe pour le .bashrc)
Code: | alias halt="sudo /sbin/shutdown -h now"
alias reboot="sudo /sbin/shutdown -r now" |
ce qui me permet de taper "halt" pour éteindre l'ordinateur dans une console normale.
Le problème est le suivant: vous êtes fatigué, vous décidez de faire halt dans la première console venue pour éteindre l'ordinateur. Or vous génrez plein d'ordinateurs, vous vous connectez en ssh partout et là boulette ! vous n'avez pas fait attention, avez tapé halt dans une mauvaise console et vous avez éteint cet ordinateur qui est à 300Km de chez vous (car oui, vous avez mis vos sudoers et alias partout, c'est trop pratique). Là normalement vous vous arrachez les cheveux ...
Solution:
remplacer les deux alias par:
Code: | function halt() {
if [[ -z `ps -p $PPID | grep ssh` ]]; then
sudo /sbin/shutdown -h now
else
echo "Pas de ca directement en ssh !"
fi
}
function reboot() {
if [[ -z `ps -p $PPID | grep ssh` ]]; then
sudo /sbin/shutdown -r now
else
echo "Pas de ca directement en ssh !"
fi
} |
en effet le test "[[ -z `ps -p $PPID | grep ssh` ]]" permet de savoir si le shell est issu directement d'un ssh ou pas ...
Vous remarquerez qu'avec ce principe on peux faire des personalisations dans sont .zshrc/.bashrc entre les consoles aterm, les logins ssh, les login "login", etc ... _________________ http://petition.eurolinux.org/ - Petition against ePatents
L'essence de la finesse |
|
Back to top |
|
|
Enlight Advocate
Joined: 28 Oct 2004 Posts: 3519 Location: Alsace (France)
|
Posted: Thu May 26, 2005 6:39 am Post subject: |
|
|
Ca a l'air sympa, mais il me semblait que sudo pouvait autoriser certaines commandes pour un utilisateur en faisant la distinction est/n'est pas sur le localhost, et même par ip? En même temps ça fait un moment que j'ai plus touché à la conf de sudo donc j'peux me tromper. |
|
Back to top |
|
|
sireyessire Advocate
Joined: 20 Mar 2003 Posts: 2991 Location: back in Paris, France
|
Posted: Thu May 26, 2005 10:34 am Post subject: |
|
|
mouais, mais je suis pas convaincu, comment tu fais pour halter ou rebooter ta machine sur laquelle tu t'es connecté en ssh?
il faudrait qu'il te demande une confirmation dans le cas où il détecte un shell issu d'un ssh, genre un
Code: | echo "Are you really sure you want to shutdown this computer "$HOSTNAME" ? (y/n)" |
puis un readline qui lit ce que tu réponds. _________________ I never think of the future. It comes soon enough.
Albert Einstein
Try simpler first
Shockley |
|
Back to top |
|
|
scout Veteran
Joined: 08 Mar 2003 Posts: 1991 Location: France, Paris en Semaine / Metz le W-E
|
Posted: Thu May 26, 2005 10:36 am Post subject: |
|
|
sireyessire wrote: | mouais, mais je suis pas convaincu, comment tu fais pour halter ou rebooter ta machine sur laquelle tu t'es connecté en ssh? |
Tu tapes la commande explicitement, ou tu te loggues en root
Enlight wrote: | Ca a l'air sympa, mais il me semblait que sudo pouvait autoriser certaines commandes pour un utilisateur en faisant la distinction est/n'est pas sur le localhost, et même par ip? En même temps ça fait un moment que j'ai plus touché à la conf de sudo donc j'peux me tromper. |
Oui c'est vrai, c'est pour avoir la même conf sudo sur tout un parc d'ordinateurs ... je vais regarder la chose et répondre aussi à la requête de sireyessire _________________ http://petition.eurolinux.org/ - Petition against ePatents
L'essence de la finesse |
|
Back to top |
|
|
sireyessire Advocate
Joined: 20 Mar 2003 Posts: 2991 Location: back in Paris, France
|
Posted: Thu May 26, 2005 11:26 am Post subject: |
|
|
scout wrote: |
Oui c'est vrai, c'est pour avoir la même conf sudo sur tout un parc d'ordinateurs ... je vais regarder la chose et répondre aussi à la requête de sireyessire |
merchi, mais sinon la meilleure solution c'est d'avoir les yeux en face des trous _________________ I never think of the future. It comes soon enough.
Albert Einstein
Try simpler first
Shockley |
|
Back to top |
|
|
anigel Bodhisattva
Joined: 14 Apr 2003 Posts: 1894 Location: Un petit bled pas loin de Limoges ;-)
|
Posted: Thu May 26, 2005 1:50 pm Post subject: |
|
|
Excellent, ce tip !
Comme à tout admin, ça m'est arrivé une fois, et heuresement il ne s'agissait "que" du serveur dns / dhcp / mail... Situé un étage plus bas.... _________________ Il y a 10 sortes d'individus en ce bas-monde : ceux qui causent binaire, et les autres. |
|
Back to top |
|
|
zdra Veteran
Joined: 30 Nov 2003 Posts: 1693 Location: Bruxelles, Belgique
|
Posted: Thu May 26, 2005 1:55 pm Post subject: |
|
|
pratique en effet, ça m'est arrivé de rebooter par erreur une machine pendant le weekend... le lundi jl'ai retrouvé bloquée sur grub qui avait pas de timeout |
|
Back to top |
|
|
|