Forum Linux.debian/ubuntu Shutdown sans droits root

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
2
23
déc.
2018

Bonjour,
J'ai un serveur à la maison que j'allume avec wakeonlan, mais j'aimerai également pouvoir l'éteindre facilement, sans avoir besoin de me connecter en root dessus. Est ce que vous connaissez un moyen simple de faire ça? Le serveur tourne avec une Debian, sans sudo.
Je pensais peut être faire un script lancé en root, qui scrute l'apparition d'un fichier "shutdown" et lance l'arrêt de la machine. Mais c'est un peu du bricolage…?

  • # shutdown.allow

    Posté par  . Évalué à 2. Dernière modification le 23 décembre 2018 à 13:40.

    Salut,

    Regarde si tu as le fichier shutdown.allow dans /etc

    A faire une seule fois en root : echo ton_user_standard >> /etc/shutdown.allow

    Anathael

    • [^] # Re: shutdown.allow

      Posté par  . Évalué à 1.

      man shutdown

      OPTIONS
      -a Utiliser /etc/shutdown.allow.

    • [^] # Re: shutdown.allow

      Posté par  (site web personnel) . Évalué à 1.

      Merci pour l'astuce, ce fichier n'existe pas sur mon système mais shutdown accepte l'option -a, donc je peux le créer d'après le lien ci-dessous:
      https://superuser.com/questions/446429/what-is-the-proper-way-to-enable-a-normal-user-to-shutdown-halt-or-reboot-the-c#446433

      Un LUG en Lorraine : https://enunclic-cappel.fr

      • [^] # Re: shutdown.allow

        Posté par  (site web personnel) . Évalué à 1.

        Par contre mon utilisateur ne peut pas lancer shutdown: commande introuvable

        Un LUG en Lorraine : https://enunclic-cappel.fr

        • [^] # Re: shutdown.allow

          Posté par  . Évalué à 2.

          La commande se trouve dans le répertoire /sbin. Il faut que tu indiques le chemin en dur lorsque tu lance ta commande, ou que tu indique le chemin de cette commande dans la variable d'environnement PATH

          Chez moi ça donne ça:

          $ echo $PATH
          /sbin:/bin:/usr/sbin:/usr/bin:/usr/games:/usr/local/sbin:/usr/local/bin
          

          Pour l'inclure, exécute la commande suivante:
          export PATH=$PATH:/usr/local/bin

          Tu l'exécutes dans ton shell et tu essaies un shutdown pour voir si ça fonctionne. Si ça marche, tu l'ajoutes dans le fichier .bashrc de ton utilisateur. Tu pourras ainsi le faire dans chaque session interactive.

          • [^] # Re: shutdown.allow

            Posté par  (site web personnel) . Évalué à 3.

            L'intention est bonne mais là tu lui fais ajouter /usr/local/bin au lieu d'un probable /sbin ou /usr/sbin ?

            Debian Consultant @ DEBAMAX

            • [^] # Re: shutdown.allow

              Posté par  . Évalué à 2.

              Oups, désolé, je suis allé un peu trop vite. Il faut bien sur ajouter /sbin et:ou /usr/sbin. Il faut donc adapter ma réponse avec le bon chemin.

    • [^] # Re: shutdown.allow

      Posté par  (site web personnel) . Évalué à 5.

      Apparemment cette option est faite pour que un utilisateur connecté physiquement puisse redémarrer la machine avec les touches du clavier, ce qui n'est pas mon usage. J'ai finalement installé sudo, créé un groupe "shutdown" dans lequel j'ai placé mon user, et j'ai ajouté ça dans /etc/sudoers :

      # Autoriser les membres du groupe shutdown à éteindre l'ordinateur
      %shutdown  ALL=NOPASSWD: /sbin/shutdown
      

      Un LUG en Lorraine : https://enunclic-cappel.fr

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.