logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

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

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

#26 03-03-2019 18:01:38

chalu
Modératrice
Lieu : Anjou
Distrib. : openSUSE Tumbleweed
Noyau : Linux 5.12
(G)UI : KDE 5.21.4
Inscription : 11-03-2016

Re : sudo et su -c différence

Kristen a écrit :

Du coup, pourquoi

su -c 'fdisk -l'


ne fonctionne pas et que

su -c 'apt update'


fonctionne ???

La bonne question du dimanche que j'ai posée tongue


Je crois que apt update peut se faire en user en fait
ça consulte juste les dépôts sans modifier le système

Hors ligne

#27 03-03-2019 18:11:12

anonyme
Invité

Re : sudo et su -c différence

non en user chez moi "apt update" ça passe pas (celle ci fonctionne => " su -c 'apt update' " )


apt update


Lecture des listes de paquets... Fait
E: Impossible d'ouvrir le fichier verrou /var/lib/apt/lists/lock - open (13: Permission non accordée)
E: Impossible de verrouiller le répertoire /var/lib/apt/lists/
W: Problème de suppression du lien /var/cache/apt/pkgcache.bin - RemoveCaches (13: Permission non accordée)
W: Problème de suppression du lien /var/cache/apt/srcpkgcache.bin - RemoveCaches (13: Permission non accordée)
 



Edit à toto : J'ai édité ton message pour le rendre plus lisible. Je te laisse cliquer sur le lien Modifier au bas à droite de ce post pour voir comment le bb-code est utilisé pour ça.
Voir le tuto : Le code, ça pique moins les yeux en couleur

#28 03-03-2019 18:12:19

Jean-Pierre Pinson
Adhérent(e)
Lieu : Orléans
Distrib. : Debian Sid 64bits Ordi.: Thinkpad T400
Noyau : de cerise
(G)UI : xfce
Inscription : 04-03-2017

Re : sudo et su -c différence

La présence du tiret "-" force le démarrage d'un nouveau shell de connexion, avec ajustement des variables d'environnement et de tous les réglages par défaut selon les préférences de l'utilisateur.
C'est pour ces raisons évidentes qu'il est conseillé lorsque vous vous connectez en tant que super utilisateur "root", d'utiliser la commande : su - plutôt que : su .


sources: https://www.commentcamarche.net/faq/156 … ommande-su

Debian sid
Bureau : xfce
Ordinateur : Thinkpad T400 libreboot

Hors ligne

#29 03-03-2019 18:21:20

chalu
Modératrice
Lieu : Anjou
Distrib. : openSUSE Tumbleweed
Noyau : Linux 5.12
(G)UI : KDE 5.21.4
Inscription : 11-03-2016

Re : sudo et su -c différence

Ça m’apprendra à ne pas vérifier tongue

Hors ligne

#30 03-03-2019 18:29:06

anonyme
Invité

Re : sudo et su -c différence

c'est a moi que tu tire la langue ?  hmm  tongue tongue tongue tongue    lol

#31 03-03-2019 18:39:16

Jean-Pierre Pinson
Adhérent(e)
Lieu : Orléans
Distrib. : Debian Sid 64bits Ordi.: Thinkpad T400
Noyau : de cerise
(G)UI : xfce
Inscription : 04-03-2017

Re : sudo et su -c différence

Petite question, peut-être stupide, mais que je n'ai pas compris en lisant le man: À quoi sert le c minuscule ? scratchhead.gif


Extrait du man : -c , --command = command
              Passez une commande au shell avec l' option -c .


Moi je veux bien, mais à quoi sert l'option -c ?

Dernière modification par Jean-Pierre Pinson (03-03-2019 18:47:35)


Debian sid
Bureau : xfce
Ordinateur : Thinkpad T400 libreboot

Hors ligne

#32 03-03-2019 19:12:16

Kristen
Membre
Lieu : Finistère
Distrib. : debian 12 bookworm
Noyau : Linux 6.1.0-18-amd64
(G)UI : KDE Plasma
Inscription : 19-02-2009

Re : sudo et su -c différence

anonyme a écrit :

non en user chez moi "apt update" ça passe pas (celle ci fonctionne => " su -c 'apt update' " )


apt update


Lecture des listes de paquets... Fait
E: Impossible d'ouvrir le fichier verrou /var/lib/apt/lists/lock - open (13: Permission non accordée)
E: Impossible de verrouiller le répertoire /var/lib/apt/lists/
W: Problème de suppression du lien /var/cache/apt/pkgcache.bin - RemoveCaches (13: Permission non accordée)
W: Problème de suppression du lien /var/cache/apt/srcpkgcache.bin - RemoveCaches (13: Permission non accordée)
 


Pareil pour moi !
Après ça me paraît normal vu qu'on est avec buster tous les deux.

Dernière modification par Kristen (03-03-2019 19:13:53)


- Tour : 4 × Intel® Core™ i5-4570 CPU @ 3.20GHz × 4 - RAM 12 Go - Carte graphique GeForce GTX 750 Ti NV117 - Écran 24" et 23" hdmi
- Lenovo IdeaPad 3 15ALC6 - 15.6" - Ryzen 5 5500U - 16 Go RAM - 128 Go SSD + 1 To HDD
- Lenovo Ideapad  S130-14IGM
- ASUS F751L X751LA : 4 × Intel® Core™ i3-4030U CPU @ 1.90GHz - 8 Go de RAM - SSD 128 Go

Hors ligne

#33 03-03-2019 19:15:36

Jean-Pierre Pinson
Adhérent(e)
Lieu : Orléans
Distrib. : Debian Sid 64bits Ordi.: Thinkpad T400
Noyau : de cerise
(G)UI : xfce
Inscription : 04-03-2017

Re : sudo et su -c différence

voilà, avec le -c ça execute ta commande et tu reviens à ton shell, comme un sudo smile

Debian sid
Bureau : xfce
Ordinateur : Thinkpad T400 libreboot

Hors ligne

#34 03-03-2019 19:17:54

Kristen
Membre
Lieu : Finistère
Distrib. : debian 12 bookworm
Noyau : Linux 6.1.0-18-amd64
(G)UI : KDE Plasma
Inscription : 19-02-2009

Re : sudo et su -c différence

Jean-Pierre Pinson a écrit :

voilà, avec le -c ça execute ta commande et tu reviens à ton shell, comme un sudo smile


Sauf que ça ne fonctionne pas comme ça pour toutes les commandes avec buster tongue


- Tour : 4 × Intel® Core™ i5-4570 CPU @ 3.20GHz × 4 - RAM 12 Go - Carte graphique GeForce GTX 750 Ti NV117 - Écran 24" et 23" hdmi
- Lenovo IdeaPad 3 15ALC6 - 15.6" - Ryzen 5 5500U - 16 Go RAM - 128 Go SSD + 1 To HDD
- Lenovo Ideapad  S130-14IGM
- ASUS F751L X751LA : 4 × Intel® Core™ i3-4030U CPU @ 1.90GHz - 8 Go de RAM - SSD 128 Go

Hors ligne

#35 04-03-2019 00:28:22

Jean-Pierre Pinson
Adhérent(e)
Lieu : Orléans
Distrib. : Debian Sid 64bits Ordi.: Thinkpad T400
Noyau : de cerise
(G)UI : xfce
Inscription : 04-03-2017

Re : sudo et su -c différence

Kristen
Je ne connais pas buster, je suis sous stretch et Trisquel 8.0 LTS Flidas, mais si tu le dis....  smile

Dernière modification par Jean-Pierre Pinson (04-03-2019 00:30:05)


Debian sid
Bureau : xfce
Ordinateur : Thinkpad T400 libreboot

Hors ligne

#36 04-03-2019 11:18:37

Philou92
Adhérent(e)
Lieu : Hauts de Seine
Distrib. : Debian bookworm
Noyau : Linux 6.1.0-13-amd64
(G)UI : LightDM et Xfce4.18
Inscription : 29-04-2015

Re : sudo et su -c différence

Braves utilisateurs de buster, que renvoi la commande :

cat /etc/profile



Sous stretch j'ai cela :

# /etc/profile: system-wide .profile file for the Bourne shell (sh(1))
# and Bourne compatible shells (bash(1), ksh(1), ash(1), ...).

if [ "`id -u`" -eq 0 ]; then
  PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
else
  PATH="/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games"
fi
export PATH

if [ "${PS1-}" ]; then
  if [ "${BASH-}" ] && [ "$BASH" != "/bin/sh" ]; then
    # The file bash.bashrc already sets the default PS1.
    # PS1='\h:\w\$ '
    if [ -f /etc/bash.bashrc ]; then
      . /etc/bash.bashrc
    fi
  else
    if [ "`id -u`" -eq 0 ]; then
      PS1='# '
    else
      PS1='$ '
    fi
  fi
fi

if [ -d /etc/profile.d ]; then
  for i in /etc/profile.d/*.sh; do
    if [ -r $i ]; then
      . $i
    fi
  done
  unset i
fi
 

Dernière modification par Philou92 (04-03-2019 11:19:06)


Tousse antique Ovide !

Hors ligne

#37 04-03-2019 11:56:09

Kristen
Membre
Lieu : Finistère
Distrib. : debian 12 bookworm
Noyau : Linux 6.1.0-18-amd64
(G)UI : KDE Plasma
Inscription : 19-02-2009

Re : sudo et su -c différence

Pour buster

cat /etc/profile


# /etc/profile: system-wide .profile file for the Bourne shell (sh(1))
# and Bourne compatible shells (bash(1), ksh(1), ash(1), ...).

if [ "`id -u`" -eq 0 ]; then
  PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
else
  PATH="/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games"
fi
export PATH

if [ "${PS1-}" ]; then
  if [ "${BASH-}" ] && [ "$BASH" != "/bin/sh" ]; then
    # The file bash.bashrc already sets the default PS1.
    # PS1='\h:\w\$ '
    if [ -f /etc/bash.bashrc ]; then
      . /etc/bash.bashrc
    fi
  else
    if [ "`id -u`" -eq 0 ]; then
      PS1='# '
    else
      PS1='$ '
    fi
  fi
fi

if [ -d /etc/profile.d ]; then
  for i in /etc/profile.d/*.sh; do
    if [ -r $i ]; then
      . $i
    fi
  done
  unset i
fi
 


- Tour : 4 × Intel® Core™ i5-4570 CPU @ 3.20GHz × 4 - RAM 12 Go - Carte graphique GeForce GTX 750 Ti NV117 - Écran 24" et 23" hdmi
- Lenovo IdeaPad 3 15ALC6 - 15.6" - Ryzen 5 5500U - 16 Go RAM - 128 Go SSD + 1 To HDD
- Lenovo Ideapad  S130-14IGM
- ASUS F751L X751LA : 4 × Intel® Core™ i3-4030U CPU @ 1.90GHz - 8 Go de RAM - SSD 128 Go

Hors ligne

#38 04-03-2019 12:03:26

Philou92
Adhérent(e)
Lieu : Hauts de Seine
Distrib. : Debian bookworm
Noyau : Linux 6.1.0-13-amd64
(G)UI : LightDM et Xfce4.18
Inscription : 29-04-2015

Re : sudo et su -c différence

Ok.

Et quand tu tapes le commande :

su -c 'echo $PATH'



Qu'obtiens-tu ?


Tousse antique Ovide !

Hors ligne

#39 04-03-2019 12:06:17

Kristen
Membre
Lieu : Finistère
Distrib. : debian 12 bookworm
Noyau : Linux 6.1.0-18-amd64
(G)UI : KDE Plasma
Inscription : 19-02-2009

Re : sudo et su -c différence

su -c 'echo $PATH'


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


- Tour : 4 × Intel® Core™ i5-4570 CPU @ 3.20GHz × 4 - RAM 12 Go - Carte graphique GeForce GTX 750 Ti NV117 - Écran 24" et 23" hdmi
- Lenovo IdeaPad 3 15ALC6 - 15.6" - Ryzen 5 5500U - 16 Go RAM - 128 Go SSD + 1 To HDD
- Lenovo Ideapad  S130-14IGM
- ASUS F751L X751LA : 4 × Intel® Core™ i3-4030U CPU @ 1.90GHz - 8 Go de RAM - SSD 128 Go

Hors ligne

#40 04-03-2019 12:45:34

captnfab
Admin-Girafe
Lieu : /dev/random
Distrib. : Debian
Noyau : Dur
(G)UI : gui gui, je zuis un doiseau
Inscription : 07-07-2008
Site Web

Re : sudo et su -c différence

Pour résumer, le comportement de su à changé.

La bonne pratique, c'est de toujours utiliser « su - », et jamais « su ».
« su » tout court fait devenir « root », mais ne change pas les variables d'environnement comme PATH (les emplacement des logiciels où chercher quand on tape une commande), HOME (l'emplacement du dossier personnel), etc.
C'est problématique et dangereux car une application faite pour se lancer en root (apt install) peut faire des recherches dans le PATH (lors du script de post-installation). De plus, si on a mis un LD_LIBRARY_PATH ou autre en tant qu'utilisaeur parce que ça nous arrange pour lancer une appli, cela pourrait avoir des conséquences catastrophiques avec su.

Donc, pour lancer une appli en root avec su, toujours avoir un environnement propre, donc utiliser « su - ».

Exemple: « su - -c "fdisk -l" »

On note que « - » et « -l » c'est la même chose (et le man conseille de plutôt utiliser « -l » que « - »)

Pour les cas ci-dessus:

apt est dans /usr/bin, donc dans le PATH utilisateur, donc « apt search bla » et « su -c "apt search bla" » se lanceront et fonctionneront tous les deux. Mais bien sûr, « apt install bla » ne fonctionnera pas en utilisateur, faute de droits. Il pourra générer une erreur en root, suivant que des appels à des applications hors du PATH ou faisant appel à des variables d'environnement soient effectués.

fdisk est dans /sbin, donc hors du PATH utilisateur, donc ni « fdisk -l » ni « su -c "fdisk -l" » ne vont se lancer, faute de trouver le binaire dans le PATH.
Bien sûr, « /sbin/fdisk -l » et « su -c "/sbin/fdisk -l" » lanceront l'application, mais cela échouera faute de droit dans le premier cas, et fonctionnera dans le second si les variables d'environnement n'influent pas sur le programme.

Pour plus d'information, voir la page

man su


captnfab,
Association Debian-Facile, bépo.
TheDoctor: Your wish is my command… But be careful what you wish for.

Hors ligne

#41 04-03-2019 13:00:10

Philou92
Adhérent(e)
Lieu : Hauts de Seine
Distrib. : Debian bookworm
Noyau : Linux 6.1.0-13-amd64
(G)UI : LightDM et Xfce4.18
Inscription : 29-04-2015

Re : sudo et su -c différence

Selon le lien de anonyme #17, en mettant le paramètre ALWAYS_SET_SET_PATH yes' dans /etc/login.defs il devrait être possible d'obtenir l'ancien comportement de su.
Reste à connaître les conséquences de cette configuration.
Les utilisateurs cobayes de buster pourraient-ils en faire l'essai ?

Tousse antique Ovide !

Hors ligne

#42 04-03-2019 13:00:17

Jean-Pierre Pinson
Adhérent(e)
Lieu : Orléans
Distrib. : Debian Sid 64bits Ordi.: Thinkpad T400
Noyau : de cerise
(G)UI : xfce
Inscription : 04-03-2017

Re : sudo et su -c différence

oui merci captnfab, donc:

su - -c "fdisk -l"

anonyme smile


Debian sid
Bureau : xfce
Ordinateur : Thinkpad T400 libreboot

Hors ligne

#43 04-03-2019 13:06:56

captnfab
Admin-Girafe
Lieu : /dev/random
Distrib. : Debian
Noyau : Dur
(G)UI : gui gui, je zuis un doiseau
Inscription : 07-07-2008
Site Web

Re : sudo et su -c différence

Philou92 a écrit :

Selon le lien de anonyme #17, en mettant le paramètre ALWAYS_SET_SET_PATH yes' dans /etc/login.defs il devrait être possible d'obtenir l'ancien comportement de su.
Reste à connaître les conséquences de cette configuration.
Les utilisateurs cobayes de buster pourraient-ils en faire l'essai ?


Les conséquences sont simples, le PATH est mis, mais les autres variables d'environnement, non.
Ça reste donc une mauvaise pratique, les autres variables d'environnement peuvent toujours causer des pbs.
Qui plus est, à changer le comportement d'outils essentiels comme ceux-là, on se retrouve à risquer de faire des bêtises dès qu'on arrive sur une autre machine.


captnfab,
Association Debian-Facile, bépo.
TheDoctor: Your wish is my command… But be careful what you wish for.

Hors ligne

#44 04-03-2019 13:37:29

Kristen
Membre
Lieu : Finistère
Distrib. : debian 12 bookworm
Noyau : Linux 6.1.0-18-amd64
(G)UI : KDE Plasma
Inscription : 19-02-2009

Re : sudo et su -c différence

Quelle analyse et quelle science captnfab merci.gif

- Tour : 4 × Intel® Core™ i5-4570 CPU @ 3.20GHz × 4 - RAM 12 Go - Carte graphique GeForce GTX 750 Ti NV117 - Écran 24" et 23" hdmi
- Lenovo IdeaPad 3 15ALC6 - 15.6" - Ryzen 5 5500U - 16 Go RAM - 128 Go SSD + 1 To HDD
- Lenovo Ideapad  S130-14IGM
- ASUS F751L X751LA : 4 × Intel® Core™ i3-4030U CPU @ 1.90GHz - 8 Go de RAM - SSD 128 Go

Hors ligne

#45 04-03-2019 15:50:00

anonyme
Invité

Re : sudo et su -c différence

Bonjour
la discussion est intéressante , mais pour faire simple et pratique  utilisé  "su -" ne pose aucun problème
pour les connaisseurs allez plus loin dans l'utilisation
que ce soit stretch ou buster je n'utilise plus que "su -"

@Philou92


Les utilisateurs cobayes de buster pourraient-ils en faire l'essai ?
 


non  tongue
wink

#46 05-03-2019 08:44:55

Jean-Pierre Pinson
Adhérent(e)
Lieu : Orléans
Distrib. : Debian Sid 64bits Ordi.: Thinkpad T400
Noyau : de cerise
(G)UI : xfce
Inscription : 04-03-2017

Re : sudo et su -c différence

Moi y'en a vouloir des su  tongue  big_smile  out.gif

Debian sid
Bureau : xfce
Ordinateur : Thinkpad T400 libreboot

Hors ligne

Pied de page des forums