Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).

#1 02-08-2019 18:11:49

bendia
Chadministrateur
Distrib. : openSUSE Tumbleweed, Stretch
Noyau : Linux 4.9.0-2-amd64
(G)UI : Gnome + Console et un peu Openbox
Inscription : 20-03-2012
Site Web

Les enquêtes Debian-Facile : on a volé mes commandes root sous Buster

Depuis la publication de Buster , nous avons vu fleurir sur le forum pas mal de questions concernant l'impossibilité de passer certaines commandes nécessitant les droits root bien que connecté sur ce compte.
Ces commandes ont-elles disparu ? Que nenni, il s'agit juste d'une modification de la commande su permettant de passer root et en particulier de la gestion de la variable d'environnement PATH qui indique au système dans quels chemins rechercher les commandes.

Pour expliquer ce qu'est cette variable voici un court extrait du MOOC Maîtriser le Shell Bash publié sur la plateforme FunMooc par l'Université de La Réunion (sous licence CC-BY-NC-SA 4.0)

La variable PATH est une variable importante, elle donne l’accès aux commandes du système. Cette variable sert à retrouver les commandes dans l’arborescence sans qu’il ne soit nécessaire de fournir le chemin d’accès absolu. La variable PATH représente une règle de recherche pour le shell. C’est la liste des répertoires dans lesquels le shell doit rechercher une commande (en suivant l’ordre des répertoires
listés dans la variable).
Supposons que vous ayez deux commandes ls, l’une que vous avez créée et l’autre la commande classique. Celle que vous avez créée se trouve dans le répertoire /usr/local/bin et la commande classique se trouve dans /usr/bin. Pour utiliser la commande classique, vous devez saisir :

/usr/bin/ls


En revanche, si votre variable PATH contient le répertoire /usr/bin/ alors vous pouvez saisir :

ls


Si votre variable PATH contient /usr/local/bin:/usr/bin/ alors en saisissant la commande ls, la version utilisée sera celle que vous avez créée car l’ordre compte, dans la liste des répertoires de la variable PATH. Consulter le contenu d’une variable d’environnement s’effectue par une commande d’affichage echo et une substitution de variable comme le montre l’exemple avec la variable PATH.

echo $PATH


/usr/local/bin:/sbin:/bin:/usr/bin



Jusqu'à Stretch, c'est le paquet source Shadow qui fournissait la commande su. Depuis la publication de Buster, c'est util-linux qui fourni cette commande. su n'est pas absolument identique dans les deux paquets. En effet, avec l'implémentation de shadow, un simple su réinitialisait la variable PATH en y ajoutant le chemin /usr/sbin et /sbin, chemin contenant des commandes qu'on ne passe qu'avec les droits root. Comme ce n'est plus le cas avec l'implémentation issue de util-linux, le shell n'est donc pas capable de trouver ces commandes.

Voyez plutôt :

su


fdisk -l


bash: fdisk : commande introuvable


ls /sbin/fdisk


/sbin/fdisk


Le système ne trouve pas la commande, pourtant, elle est bien présente. Et voici le pourquoi du comment

echo $PATH


/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games


Pas de /sbin dans cette variable, donc, le shell ne sait pas où se trouve cette commande.

Il faut donc a présent pour ouvrir un shell root et voir la variable PATH initialisée avec ces deux répertoires taper

su -l #ou su --login
#ou
su - #oui, avec un tiret



On essaye à nouveau

su -


fdisk -l


Disque /dev/sda : 50 GiB, 53687091200 octets, 104857600 secteurs
Modèle de disque : QEMU HARDDISK  
Unités : secteur de 1 × 512 = 512 octets
Taille de secteur (logique / physique) : 512 octets / 512 octets
taille d'E/S (minimale / optimale) : 512 octets / 512 octets
Type d'étiquette de disque : dos
...
 


Pas de problèmes ici, et le pourquoi du comment

echo $PATH


/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin


Vous remarquerez l'apparition des répertoires /foo/sbin (et la disparition de /usr/games le compte root n'est pas fait pour jouer, nan mais oh, garnement tongue ).


Et voilà encore une enquête résolu par le célèbre détective Debian-Facile smile


Ben
___________________
La seule question bête, c'est celle qu'on ne pose pas.

Hors ligne

#2 02-08-2019 20:09:03

Philou92
Adhérent(e)
Lieu : Hauts de Seine
Distrib. : Debian bullseye (testing)
Noyau : Linux 5.6.0-1-amd64
(G)UI : LightDM et Xfce4
Inscription : 29-04-2015

Re : Les enquêtes Debian-Facile : on a volé mes commandes root sous Buster

Remarquable !
Les mystères de debian, d'Eugène Su.:-)

Chaque siècle fera son œuvre, aujourd’hui civique, demain humaine. Aujourd’hui la question du droit, demain la question du salaire. Salaire et droit, au fond c’est le même mot. L’homme ne vit pas pour n’être point payé ; Dieu en donnant la vie contracte une dette ; le droit, c’est le salaire inné ; le salaire, c’est le droit acquis.
             Quatrevingt-treize
             Victor Hugo.

Hors ligne

#3 02-08-2019 20:36:01

infothema
CA Debian-Facile
Lieu : Bégard (Côtes d'Armor)
Distrib. : 9 (stretch) 64 bits
(G)UI : MATE
Inscription : 28-01-2012
Site Web

Re : Les enquêtes Debian-Facile : on a volé mes commandes root sous Buster

Belle démonstration technique Bendia ! un vrai régal ! smile

Association libriste infothema  située dans les Côtes d'Armor (Bretagne)
Blog : https://www.infothema.fr / Forum : https://www.infothema.fr/forum
Twitter : https://twitter.com/asso_infothema / Compte Mastodon : https://framapiaf.org/@infothema
Diaspora : https://framasphere.org/u/association_infothema

Hors ligne

#4 02-08-2019 20:38:18

vv222
Administrateur
Lieu : Bretagne
Distrib. : GNU/Linux Debian « Sid »
Noyau : Linux ≥ 5.6 (amd64)
(G)UI : Openbox
Inscription : 18-11-2013
Site Web

Re : Les enquêtes Debian-Facile : on a volé mes commandes root sous Buster

Merci bendia, je sens que je vais souvent partager des liens vers ton enquête dans les mois qui viennent wink

Jouer sous Debian ? Facile !

Hors ligne

#5 02-08-2019 21:07:24

bendia
Chadministrateur
Distrib. : openSUSE Tumbleweed, Stretch
Noyau : Linux 4.9.0-2-amd64
(G)UI : Gnome + Console et un peu Openbox
Inscription : 20-03-2012
Site Web

Re : Les enquêtes Debian-Facile : on a volé mes commandes root sous Buster

infothema a écrit :

Belle démonstration technique Bendia !

C'est juste un compilation des informations données par les utilisateurs du forum, je n'en connaissait pas plus que ça sur le sujet avant de commencer. Un simple synthèse de document quoi smile


Ben
___________________
La seule question bête, c'est celle qu'on ne pose pas.

Hors ligne

#6 03-08-2019 13:40:18

tof70
Membre
Distrib. : Debian 10 - Buster
Noyau : Linux 4.19.0-5-amd64
(G)UI : i3 + Gnome comme base
Inscription : 28-08-2016

Re : Les enquêtes Debian-Facile : on a volé mes commandes root sous Buster

Merci bendia,
je ne m'en étais pas rendu compte (je ne me connecte jamais* en root, sudo me suffit pour administrer la bestiole).

* une fois le système installé et que tout roule ...

Hors ligne

#7 03-08-2019 14:01:01

lagrenouille
CA Debian-Facile
Lieu : Toulouse, con !
Distrib. : stretch et buster amd64
Noyau : d'olive
(G)UI : env i3-clavier bépo
Inscription : 28-03-2012
Site Web

Re : Les enquêtes Debian-Facile : on a volé mes commandes root sous Buster

oh ! belle explication...merci

"C'est a travers les mots, entre les mots, qu'on voit et qu'on entend."         
Gilles Deleuze

Hors ligne

#8 06-08-2019 18:01:14

barmic
Membre
Inscription : 06-08-2019

Re : Les enquêtes Debian-Facile : on a volé mes commandes root sous Buster

Bonjour,

Merci pour l'article! Si je peux me permettre un tout petit ajout:

Pousser les gens à passer par un login shell améliore la résilience des installations.

Utiliser un login shell ne va pas simplement modifier la variable

PATH

, il va ouvrir un nouveau shell en ignorant les précédentes variables d'environnement, se placer dans le répertoire

HOME

de l'utilisateur (root par défaut) et exécuter les scripts d'init (

/etc/profile

,

$HOME/.profile

,

$HOME/.bash_profile

avant de lancer les différents bashrc qui ne sont pas spécifiques au login shell).

Cela va donc permettre de s'assurer que toutes les commandes lancées le seront avec un environnement qui aura était nettoyé (les locales correctement positionnées, etc).

Hors ligne

#9 06-08-2019 18:07:19

bendia
Chadministrateur
Distrib. : openSUSE Tumbleweed, Stretch
Noyau : Linux 4.9.0-2-amd64
(G)UI : Gnome + Console et un peu Openbox
Inscription : 20-03-2012
Site Web

Re : Les enquêtes Debian-Facile : on a volé mes commandes root sous Buster

Merci pour les précisions smile On ne l'avait pas mis exprès pour ne pas trop délayer le propos principal (il y a déjà eu débat pour savoir si le blabla sur PATH était nécessaire ou non big_smile ).

Ben
___________________
La seule question bête, c'est celle qu'on ne pose pas.

Hors ligne

#10 06-08-2019 21:41:22

MicP
Membre
Inscription : 29-02-2016

Re : Les enquêtes Debian-Facile : on a volé mes commandes root sous Buster

barmic a écrit :

…Cela va donc permettre de s'assurer que toutes les commandes lancées le seront avec un environnement qui aura était nettoyé (les locales correctement positionnées, etc). …

Oui, c'est exactement ça qui est le plus important,

et j'ajouterai que si

echo ${0::1}

retourne un simple tiret et pas autre chose,
c'est qu'on est bien dans un login shell "propre"
<=>
qui ne sera ni un sous-shell ( la variable BASH_SUBSHELL sera égale à 0)
ni une imbrication de shells ( la variable SHLVL sera égale à 1 )

Dernière modification par MicP (07-08-2019 23:39:07)

En ligne

#11 07-08-2019 22:20:14

barmic
Membre
Inscription : 06-08-2019

Re : Les enquêtes Debian-Facile : on a volé mes commandes root sous Buster

bendia a écrit :

Merci pour les précisions smile On ne l'avait pas mis exprès pour ne pas trop délayer le propos principal (il y a déjà eu débat pour savoir si le blabla sur PATH était nécessaire ou non big_smile ).



Ah euh… Mon point était d'être technique que d'expliquer pourquoi ce changement a était fait:

Cette modification améliore la maintenabilité du système et aligne Debian sur des usages que l'on trouve dans d'autres distributions (comme fedora).



Permet à l'utilisateur lambda de savoir que c'est un choix réfléchit de la part de Debian et pas juste pour l'ennuyer.

Hors ligne

#12 17-03-2020 17:11:21

rodrigue7973
Membre
Lieu : beloeil
Distrib. : debian 10.3 buster
Noyau : Linux 5.4.0-0.bpo.3-amd64
(G)UI : kde plasma 5.14.5
Inscription : 19-11-2017
Site Web

Re : Les enquêtes Debian-Facile : on a volé mes commandes root sous Buster

miss directive bendia smile

Je suis malentendant et dyslexique. Il en résulte des difficultés d'expression écrite dont je vous prie de m'excuser
Merci
my diaspora-fr: rodrigue7973@diaspora-fr.org | jabber:rodrigue7973@bepointbe.be

Hors ligne

#13 28-04-2020 20:54:31

brenta
Membre
Inscription : 28-04-2020

Re : Les enquêtes Debian-Facile : on a volé mes commandes root sous Buster

Bonsoir
Petit déterrage de topic car à l'occasion de la sortie de la nouvelle iso DF célébrée par l'annonce sur Linux FR.org https://linuxfr.org/news/publication-d- … table-10-3

je me suis retrouvé sans possibilité d'utiliser sudo (suite à choix proposés pendant l'installation) et avec des commandes en root qui se soldaient pas un message du genre

"Command 'fdisk' is available in '/sbin/fdisk'
The command could not be located because '/sbin' is not included in the PATH environment variable.
This is most likely caused by the lack of administrative privileges associated with your user account.
fdisk: command not found"



J'ai donc rétabli la situation par la formule magique :

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




Merci pour les explications

Dernière modification par brenta (28-04-2020 20:58:06)

Hors ligne

#14 28-04-2020 21:51:16

bendia
Chadministrateur
Distrib. : openSUSE Tumbleweed, Stretch
Noyau : Linux 4.9.0-2-amd64
(G)UI : Gnome + Console et un peu Openbox
Inscription : 20-03-2012
Site Web

Re : Les enquêtes Debian-Facile : on a volé mes commandes root sous Buster

Salut smile

Normalement, pas besoin de modifier le PATH, la solution était d'utiliser

su -


Cela ne fonctionnait pas ?


Ben
___________________
La seule question bête, c'est celle qu'on ne pose pas.

Hors ligne

#15 26-05-2020 18:18:09

thierry_84
Membre
Lieu : avignon
Distrib. : debian-10.4.0-amd64
Noyau : Linux 4.19.0-9-amd64
Inscription : 02-08-2017
Site Web

Re : Les enquêtes Debian-Facile : on a volé mes commandes root sous Buster

Bonjour,

un grand merci à tous

ça m'as bien dépanné et en plus j'ai appris plein de choses :-)

 su -



fonctionne nickel

Dernière modification par thierry_84 (26-05-2020 19:47:10)

Hors ligne

#16 26-05-2020 18:45:59

jarek
Membre
Lieu : Haute Loire
Distrib. : bullseye
Noyau : linux 5.6.0
(G)UI : Xfce4 - LightDM
Inscription : 24-06-2014

Re : Les enquêtes Debian-Facile : on a volé mes commandes root sous Buster

thierry_84 a écrit :

chez moi

su -

fonctionne nickel


Normalement chez tout le monde mrgreen.gif
On saisit "su -" en "user".


Le Diable a inventé l'Administration afin que les Hommes perdent tout espoir à jamais.
Ryzen3 3200G - Asrock B450

Hors ligne

#17 26-05-2020 19:53:46

thierry_84
Membre
Lieu : avignon
Distrib. : debian-10.4.0-amd64
Noyau : Linux 4.19.0-9-amd64
Inscription : 02-08-2017
Site Web

Re : Les enquêtes Debian-Facile : on a volé mes commandes root sous Buster

Corrigé jarek :-)

quoique ... su- en root on deviens pas dieux ? non ? bah j'aurais essayé ;-)

Dernière modification par thierry_84 (26-05-2020 20:09:31)

Hors ligne

Pied de page des forums