[Debian 10]: la commande: shutdown -r now ne fonctionne pas

Bonjour,
J’ai une Debian 10 installée sur mon ordinateur portable.
Quand je fais en ligne de commande:
#shutdown -r now

J’obtiens le massage:

bash: shutdown : commande introuvable

Alors j’ai fait toujours en ligne de commande :
#whereis shutdown
et j’obtiens:

shutdown: /usr/sbin/shutdown /usr/share/man/man2/shutdown.2.gz /usr/share/man/man8/shutdown.8.gz

Et alors, dans ce cas quand je fais un:
#/usr/sbin/shutdown -r now
l’ordinateur redémarre.

Ma question est donc: Comment créer cette alias (et la mettre dans quel fichier) pour que quand je fais directement en ligne de commande un:
#shutdown -r now
mon ordinateur redemarre?
Merci d’avance pour votre aide.

Bonjour
Fais une recherche dans le forum car la question a été posé et résolue (je crois) il y a une dizaine de jours.

edit: Problème commande inconnue

1 J'aime

La solution donnée dans le lien de limax n’est pas tout-à-fait complète. Effectivement la commande shutdown doit être lancé en tant que « root » mais pas par le biais d’un simple

su

mais en utilisant

su -

Ceci dit elle est également facilement accessible si l’utilisateur est inscrit dans le groupe sudo:

sudo shutdown -r now

de même que la commande reboot d’ailleurs.

1 J'aime

Bonjour

Pourtant :

A noter que sur les versions récentes c’est un lien pour invoquer la commande systemctl

ls -alrt /usr/sbin/shutdown
lrwxrwxrwx 1 root root 14 12 avril 20:21 /usr/sbin/shutdown -> /bin/systemctl

Donc pour arrêter

systemctl poweroff

pour redémarrer

systemctl reboot

2 J'aimes

Je n’ai pas voulu rentrer dans les détails. Merci de le faire pour moi Bambino. Je rajoute un complément d’info avec ta méthode pour bien montrer la différence:

En tapant un simple"su" (lequel permet de devenir root mais sans charger les variables d’environnements):

 francois@HAL-9000:~$ su
Mot de passe : 
root@HAL-9000:/home/francois# echo $PATH
/home/francois/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games:/snap/bin
root@HAL-9000:/home/francois# 

En utilisant cette fois-ci « su - » (donc en bénéficiant des variables d’environnement):

francois@HAL-9000:~$ su -
Mot de passe : 
root@HAL-9000:~# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin
root@HAL-9000:~# 

On voit bien ici que dans les deux cas je suis bien devenu « root » (le prompt dans la dernière ligne) mais que c’est seulement dans le deuxième cas que je peux avoir accés aux commandes dans /usr/sbin (et donc le fameux « reboot »)

Et encore une fois, il me semble que la méthode la plus rapide est de passer par sudo:

francois@HAL-9000:~$ sudo reboot
[sudo] Mot de passe de francois :
1 J'aime

le plus simple :rofl:

systemctl reboot
1 J'aime

Effectivement grandtoubab, je ne le savais pas et je viens juste de le constater: avec ta méthode on n’est pas obligé de devenir root. Comme quoi on en apprend tous les jours.

Ceci dit, je ne trouve pas cela très sécuritaire puisque n’importe quel quidam peut stopper ou redémarrer la machine . J’ai cru comprendre que c’était tout de même des tâches réservées à l’administrateur, ça!..

Linux n’est donc plus multi-utilisateur?

Pour information, dans les environnements de bureau et depuis longtemps, la commande pour arrêter la machine peut être lancée par l’utilisateur, il n’y a rien de choquant à ça.
SI tu peux éteindre la machine sans avoir besoin des droits root, c’est parce que le système est configuré pour, mais tu peux tout à fait désactiver ça sur des systèmes critiques.

Je t’avouerai que je n’ai jamais fait attention à ce détail. Pourtant c’est vrai que j’ai effectivement l’habitude d’éteindre mon système à partir du bureau, comme beaucoup de monde je suppose.
C’est vrai que, sur un poste normal, ou il n’y a qu’un seul utilisateur cela ne pose pas vraiment de problème.
La question se pose cependant sacrément sur un serveur ou plusieurs personnes, pour une raison quelconque, ont un accés SSH. Si tu connais pas ce détail et que de ce fait, tu ne prends pas les mesures adéquats concernant la sécurisation des commandes reboot, halt, poweroff et shutdown, tu cours le risque que quelqu’un te reboote la machine alors que tu es en plein travail dessus.
Bon à savoir car c’est mon cas justement : trois personnes ont un accés illimité sur mon serveur personnel pour pouvoir travailler plus facilement en commun sur le dévellopement d’un site!.. En principe ces personnes sont sérieuses mais on ne sait jamais. Je fais donc ce qu’il faut de suite.

Pour la culture, le -r pour redémarrer, remplacer par un -h pour éteindre le pc.

La commande ‹ ‹ alias › › dans un terminal doit pouvoir te permettre de mettre ce que tu veux (de non utilisé je pense) pour remplacer une commande généralement longue et chiante à taper.

J’ai pas testé

Mais ça semble plus simple.

Si l’effet recherché est d’empêcher de rebooter la machine par n’importe qui , la méthode de l’alias est innefficace car les commandes sous-jacentes fonctionnent encore.

Seulement s’il est connecté via une console locale (tty), pas via SSH.

Ben, tu vois, @fanch24, ce n’est pas spécialement la fête du slip non plus.