0 votes

Arrêter PAS super-utilisateur ?

J'essaie d'arrêter les Macs après 24 heures d'exécution avec ce script :

#!/bin/bash
BOOT_TIME=$(sysctl -n kern.boottime | sed -e 's/.* sec = \([0-9]*\).*/\1/')
CURR_TIME=$(date +%s)
MAX_UPDAYS=1 #Days

DAYS_UP=$(( ( $CURR_TIME - $BOOT_TIME) / 86400 ))
    if [ $DAYS_UP -ge ${MAX_UPDAYS} ];then
        echo Mac is going to shutdown 
        shutdown -h now
    else
        echo No shutdown needed
fi

Le nom du fichier est ShutdownUPTIME.sh . Maintenant, quand j'essaie de taper :

sudo ssh ADMIN@macxxx 'bash -s' < ./documents/ShutdownUPTIME.sh

il veut un mot de passe. Je le tape et ensuite le script s'exécute. La seule chose qui s'affiche cependant est :

l'arrêt : PAS super-utilisateur

L'utilisateur figure dans le fichier sudoers en tant que ALL=(ALL) ALL sur les deux Macs. Avez-vous des idées ?

3voto

techraf Points 3610

Tu es en train de courir ssh localement en tant que Root et la commande bash distante (d'où l'ensemble du script) en tant qu'utilisateur ADMIN@macxxx (sans passer en mode Root sur le serveur distant).

Vous devez faire précéder soit bash ou shutdown con sudo (fourni ADMIN a les permissions sudo sans mot de passe pour shutdown ou toutes les commandes sur macxxx machine).

Donc, soit :

ssh ADMIN@macxxx 'sudo bash -s' < ./documents/ShutdownUPTIME.sh

Ou :

...
if [ $DAYS_UP -ge ${MAX_UPDAYS} ];then
    echo Mac is going to shutdown 
    sudo shutdown -h now
else
...

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X