Path et sbin/

Bonjour,

Lorsque je souhaite relancer mon apache en utilisant la commande “service apache restart”, il me réponds “bash: service : commande introuvable”. Cela se produit en tant que root ou simple utilisateur.

Je suis donc obligé de faire “export PATH”…$PATH" à chaque fois. (… correspond à des chemin bin et sbin).

Quel fichier dois je modifier et où dans le fichier pour que cela ne se reproduise plus.

Merci.

Bonjour ElectronWa

Peut-être que cette page web pourrait t’intéresser.


Il reste que tout dépends quand même des variables d’environnements qui sont utilisées dans le contexte de ton utilisation du compte root et du shell utilisé

voir : https://wiki.debian.org/EnvironmentVariables


Sur mes machines debian :
michel@debg53sw:~$ echo $PATH /usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games michel@debg53sw:~$
root@debg53sw:~# echo $PATH /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin root@debg53sw:~#

Salut.

Merci pour ta réponse.

J’ai pas vraiment compris ce que tu voulais me dire.

Comment je peux faire pour ne pas avoir a mettre à jour mon PATH tout le temps ?

Merci.

Le premier lien explique comment gérer les services en utilisant la commande systemctl plutôt que la commande service

Le deuxième lien permet de comprendre comment sont configurées les variables d’environnement (dont le PATH fait partie).

Suivent les retours d’une commande permettant d’afficher la valeur de la variable PATH pour un compte utilisateur (michel) et pour le compte root

En résumé, je t’ai transmis des liens dans lesquels tu pourra trouver la solution à ton problème et une méthode plus d’actualité pour gérer les services : utiliser la commande systemctl au lieu de la commande service


[quote=“ElectronWa, post:3, topic:71706”]
…Comment je peux faire pour ne pas avoir a mettre à jour mon PATH tout le temps ? …
[/quote]Normalement, lire et comprendre la documentation.

Donne nous un copié/collé des lignes de commandes que tu utilise pour activer le service apache
(avec le prompt de départ et le prompt de retour)

Donne nous aussi la ligne de commande complète que tu entre avec la commande export PATH
(avec le prompt de départ et le prompt de retour)

Donne nous la valeur de la variable PATH quand tu viens juste d’ouvrir une fenêtre de terminal connectée a un compte utilisateur.

Donne nous la valeur de la variable PATH quand tu viens juste de te connecter au compte root

Merci.

Bonsoir.

Merci pour ta réponse.

Voila :

electronuser@electronServeur:~$ service apache start
bash: service : commande introuvable
electronuser@electronServeur:~$

Voila :

electronuser@electronServeur:~$ echo $PATH
/bin:/usr/bin:/usr/X11R6/bin:/usr/local/bin
electronuser@electronServeur:~$

root@electronServeur:/home/electronuser# echo $PATH
/sh:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
root@electronServeur:/home/electronuser#

export PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:$PATH"

Je l’ai trouvé sur un site et cela réglait mon soucis.

Ou puis je mettre cet export pour que cela soit pris en compte tout le temps par le user et le root ?

Merci.

Merci pour ton retour détaillé.

(Je pensais avoir déjà répondu, mais je suis très fatigué et je constate que j’ai dû oublié d’envoyer le message que j’avais rédigé et que j’ai perdu.)


Si tu veux utiliser une commande système il faut utiliser le compte utilisateur prévu à cet effet : le compte root.

La commande service n’est pas accessible au compte utilisateur.

À la place de la commande service, il faut préférer l’utilisation de la commande systemctl qui elle aussi n’est utilisable que par le compte root


echo $PATH
export PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:$PATH"
echo $PATH

En lançant les tros lignes de commandes ci-dessus, tu verra le résultat de ta commande export : il y aura plusieurs chemins identiques qui seront répétées dans le PATH.

Modifier le PATH pour pouvoir utiliser une commande prévue pour être utilisée par le compte root n’est pas une bonne solution.