[Nouveau groupe] comment l'activer ...? [Résolu]

Questions et astuces concernant l'installation et la configuration d'archlinux
Répondre
Avatar de l’utilisateur
Logicien
Daikyu
Messages : 60
Inscription : mer. 16 janv. 2008, 20:23
Localisation : Montréal Québec

[Nouveau groupe] comment l'activer ...? [Résolu]

Message par Logicien »

Br,
il me semble avoir lu qu'il est possible d'ajouter un utilisateur à un groupe et de rendre possible l'utilisation immédiate de ce groupe par l'utilisateur sans qu'il aie à redémarrer sa session. Quelqu'un sait-il comment faire?
Dernière modification par Logicien le ven. 22 août 2008, 18:25, modifié 3 fois.
Paul
Avatar de l’utilisateur
chipster
Maître du Kyudo
Messages : 2063
Inscription : ven. 11 août 2006, 22:25
Localisation : Saint-Étienne (42)
Contact :

Re: [Nouveau groupe] comment l'activer en cours de session?

Message par chipster »

Logicien a écrit :Br,
il me semble avoir lu qu'il est possible d'ajouter un utilisateur à un groupe et de rendre possible l'utilisation immédiate de ce groupe par l'utilisateur sans qu'il aie à redémarrer sa session. Quelqu'un sait-il comment faire?
Ça ne marche que pour les consoles ça et pas sur l'intégrité de l'utilisateur en cours. Autrement redémarrer, ce n'est pas franchement nécessaire. Tu fermes la session et tu l'as réouvres et c'est bon
Avatar de l’utilisateur
tuxce
Maître du Kyudo
Messages : 6677
Inscription : mer. 12 sept. 2007, 16:03

Message par tuxce »

sinon, en console, c'est

Code : Tout sélectionner

newgrp nome_groupe
pour avoir un nouveau shell et

Code : Tout sélectionner

sg nom_groupe 'commande'
pour juste lancer la commande avec le groupe
Avatar de l’utilisateur
Logicien
Daikyu
Messages : 60
Inscription : mer. 16 janv. 2008, 20:23
Localisation : Montréal Québec

Message par Logicien »

Merci tuxce et chipster. C'était la commande newgrp que je cherchais. Je ne connaissais pas la commande sg. Avec ça, je devrais être capable de mettre à jour 'dynamiquement' les modifications à /etc/group.
Dernière modification par Logicien le ven. 22 août 2008, 22:54, modifié 1 fois.
Paul
Avatar de l’utilisateur
tuxce
Maître du Kyudo
Messages : 6677
Inscription : mer. 12 sept. 2007, 16:03

Message par tuxce »

Logicien a écrit :Avec ça, je devrais être capable de mettre à jour 'dynamiquement' les modifications à /etc/group.
ca met rien à jour, ca permet juste de lancer une commande avec un groupe donné en tant que groupe primaire
Avatar de l’utilisateur
mélodie
Maître du Kyudo
Messages : 2784
Inscription : lun. 30 oct. 2006, 02:06
Localisation : Pyrénées

Message par mélodie »

Il y a aussi gpasswd pour gérer les groupes.
En mode root:
gpasswd -a user group → ajoute un utilisateur à un groupe

gpasswd -d user group → retire un utilisateur d'un groupe

Et il n'y a rien à redémarrer, c'est fonctionnel tout de suite, il me semble.
tuxce a écrit :ca met rien à jour, ca permet juste de lancer une commande avec un groupe donné en tant que groupe primaire
Pourrais-tu me donner un exemple, en indiquant dans quel cas ça peut être utile, s'il te plaît ?
Avatar de l’utilisateur
tuxce
Maître du Kyudo
Messages : 6677
Inscription : mer. 12 sept. 2007, 16:03

Message par tuxce »

newgrp et sg suppose que l'utilisateur fait partie du groupe que tu veux utiliser.
gpasswd n'affecte pas le shell en cours, il ne fait que modifier /etc/group
mélodie a écrit : Pourrais-tu me donner un exemple, en indiquant dans quel cas ça peut être utile, s'il te plaît ?
http://tuxce.blogspot.com/2008/02/lance ... roupe.html
Avatar de l’utilisateur
Logicien
Daikyu
Messages : 60
Inscription : mer. 16 janv. 2008, 20:23
Localisation : Montréal Québec

Message par Logicien »

Si je comprend, newgroup change le groupe de base d'un utilisateur, il ne met pas à jour tous les nouveaux groupes auxquels l'utilisateur à été ajouté. Pour ça, il faut réouvrir sa session et non pas redémarrer l'ordinateur évidemment.

(man newgrp)
Paul
Avatar de l’utilisateur
mélodie
Maître du Kyudo
Messages : 2784
Inscription : lun. 30 oct. 2006, 02:06
Localisation : Pyrénées

Message par mélodie »

Logicien a écrit :Si je comprend, newgroup change le groupe de base d'un utilisateur, il ne met pas à jour tous les nouveaux groupes auxquels l'utilisateur à été ajouté.
newgrp ! La syntaxe ! :)
Pour ça, il faut réouvrir sa session et non pas redémarrer l'ordinateur évidemment.
Pas forcé, tu peux aussi ouvrir une console graphique ou une console virtuelle (Ctrl+Alt+F2 ou F3 etc... ). À ce moment là c'est uniquement dans le shell dans lequel la commande aura été lancée que le groupe principal de ton utilisateur aura été changé.

tuxce, merci, j'ai bien lu ton article. Je ne vois pourtant toujours pas ce que ça change, ce que ça apporte de particulier saurais-tu en dire plus ?

par exemple:
En quoi :
$ sg network 'qemu -kernel-kqemu disque_qemu.img -net nic -net tap,ifname=tap0,script=no -m 256'

t'apporte-t-il quelque chose que:

$ qemu -kernel-kqemu disque_qemu.img -net nic -net tap,ifname=tap0,script=no -m 256

ne fait pas ?

(déjà je ne sais pas ce que qemu fait de spécial avec l'interface réseau, ou/et autre, dans cette ligne de commande)

/Oui, je sais, je suis trop une newbie. :cry:
Avatar de l’utilisateur
tuxce
Maître du Kyudo
Messages : 6677
Inscription : mer. 12 sept. 2007, 16:03

Message par tuxce »

Logicien a écrit :il ne met pas à jour tous les nouveaux groupes auxquels l'utilisateur à été ajouté.
qu'est ce que tu veux dire par là, c'est quoi "mettre à jour" ?
mélodie a écrit : tuxce, merci, j'ai bien lu ton article. Je ne vois pourtant toujours pas ce que ça change, ce que ça apporte de particulier saurais-tu en dire plus ?
le truc le plus important est:
tuxce a écrit : $ id
uid=1000(tuxce) gid=1000(tuxce) groupes=10(wheel),19(log),90(network),91(video),92(audio),93(optical),100(users),1000(tuxce)
$ sg network id
id=1000(tuxce) gid=90(network) groupes=10(wheel),19(log),90(network),91(video),92(audio),93(optical),100(users),1000(tuxce)
mélodie a écrit : par exemple:
En quoi :
$ sg network 'qemu -kernel-kqemu disque_qemu.img -net nic -net tap,ifname=tap0,script=no -m 256'

t'apporte-t-il quelque chose que
j'ai pris la commande avec laquelle je venais de découvrir "sg"
en fait qemu avec l'option "-net tap..." utilise le périphérique /dev/tun
j'avais mis ce dernier avec les droits "root.network"
étant donné que qemu y accède avec le groupe primaire de l'utilisateur, il fallait donc avoir "network" comme groupe principal pour que qemu se lance, d'où le "sg network..."

maintenant supposons que tu viens de te rajouter aux groupe log par exemple en tapant:

Code : Tout sélectionner

sudo gpasswd -a melodie log
si tu essais de lister les log juste après avec

Code : Tout sélectionner

tail -f /var/log/messages.log
ca échouera, il te faut relancer un shell ou provisoirement lancer:

Code : Tout sélectionner

sg log 'tail -f /var/log/messages.log'
Avatar de l’utilisateur
mélodie
Maître du Kyudo
Messages : 2784
Inscription : lun. 30 oct. 2006, 02:06
Localisation : Pyrénées

Message par mélodie »

tuxce a écrit :
Logicien a écrit :il ne met pas à jour tous les nouveaux groupes auxquels l'utilisateur à été ajouté.
qu'est ce que tu veux dire par là, c'est quoi "mettre à jour" ?
Je crois comprendre qu'il veut dire que le fichier /etc/group n'a pas bénéficié de modifications, telles que celles que "gpasswd -a user group" va générer.

C'est ça Logicien ?
tuxce a écrit :maintenant supposons que tu viens de te rajouter aux groupe log par exemple en tapant:

Code : Tout sélectionner

sudo gpasswd -a melodie log
si tu essais de lister les log juste après avec

Code : Tout sélectionner

tail -f /var/log/messages.log
ca échouera, il te faut relancer un shell ou provisoirement lancer:

Code : Tout sélectionner

sg log 'tail -f /var/log/messages.log'
Ok, j'ai compris maintenant ! Merci tuxce ! :D
Avatar de l’utilisateur
Logicien
Daikyu
Messages : 60
Inscription : mer. 16 janv. 2008, 20:23
Localisation : Montréal Québec

Message par Logicien »

Par mettre à jour, activer ou actualiser les nouvelles permissions d'un utilisateur, je veux dire que le système relit le contenu de /etc/group et ajuste en conséquence les permissions, pour les applications déjà ouvertes et à ouvrir, sans que j'aie à redémarrer la session. Ça serait dynamique.

Par exemple, j'ouvre une session dans un terminal en mode texte et je ne suis pas dans le groupe vboxusers. Je fais startx et ouvre VirtualBox, je ne peux pas lancer de machine virtuelle, du fait que je ne suis pas dans le groupe vboxusers. J'ajoute l'utilisateur qui a ouvert la session au groupe vboxusers en root en éditant /etc/group, sans relancer la session, c'est-à-dire, sans fermer la session graphique, sans faire exit dans le terminal texte et sans me connecter de nouveau. Autrement dit, en gardant ma session actuelle ouverte. Les permissions restent telles quelles étaient quand j'ai ouvert la session depuis le terminal texte pour toutes les applications ouvertes et à ouvrir, sauf par exemple, si je lance VirtualBox dans un nouveau shell graphique qui lui, a lu /etc/group et utilise les nouvelles permissions. En gros c'est ce que permet de faire la commande sg.

Il est peut-être mieux que root utilise la commande gpasswd tel que proposé par mélodie ou que l'utilisateur exécute la commande

Code : Tout sélectionner

newgrp -
qui réinitialise sa session, quand les groupes auxquels il appartient ont changés pendant que sa session est ouverte. En tous cas, j'ai plus de chances de ne pas avoir à relancer la session pour que les permissions s'actualisent complètement. Ça semble de toutes façons impossible à réaliser sans relancer les applications déjà ouvertes avec les anciennes permissions, dont le Bash du terminal texte. Idéalement, je préfère que les permissions des utilisateurs sont au point avant même qu'ils se connectent au système.
Paul
Avatar de l’utilisateur
mélodie
Maître du Kyudo
Messages : 2784
Inscription : lun. 30 oct. 2006, 02:06
Localisation : Pyrénées

Message par mélodie »

On ne *doit pas* éditer /etc/group directement. C'est le rôle de gpasswd d'écrire dans ce fichier.

Et tu n'as plus besoin de relancer une session, maintenant que tu sais qu'il te suffit de t'ajouter au groupe vboxusers (si tu as créé ce groupe) et de lancer:

Code : Tout sélectionner

sg vboxusers 'virtualbox options'
(par exemple, en suivant les explications données par tuxce, ou avec 'newgrp', ou 'newgrp -', en effet).
Avatar de l’utilisateur
Logicien
Daikyu
Messages : 60
Inscription : mer. 16 janv. 2008, 20:23
Localisation : Montréal Québec

Message par Logicien »

On ne *doit pas* éditer /etc/group directement.
Je suis d'accord pour celles et ceux qui ne savent pas ce qu'ils font. Je n'ai jamais eu de problème à le faire. Les commandes sg et newgrp sont effectivement des outils très pratiques tant qu'on n'a pas relancé sa session. Bonjour.

:D
Dernière modification par Logicien le dim. 24 août 2008, 16:21, modifié 3 fois.
Paul
Avatar de l’utilisateur
tuxce
Maître du Kyudo
Messages : 6677
Inscription : mer. 12 sept. 2007, 16:03

Message par tuxce »

l'édition de ces fichiers nécessite quand même des précautions
dans la plupart des cas, ca ne pose pas de problème mais mieux vaut utiliser les bons outils, en l'occurence, pour éditer les groupes directement, c'est

Code : Tout sélectionner

vigr
vipw pour /etc/passwd, et visudo pour /etc/sudoers
ces commandes mettent des verrours pour éviter toutes corruption.
Avatar de l’utilisateur
mélodie
Maître du Kyudo
Messages : 2784
Inscription : lun. 30 oct. 2006, 02:06
Localisation : Pyrénées

Message par mélodie »

tuxce a écrit :en l'occurence, pour éditer les groupes directement, c'est

Code : Tout sélectionner

vigr
vipw pour /etc/passwd, et visudo pour /etc/sudoers
ces commandes mettent des verrours pour éviter toutes corruption.
Et gpasswd est supposé avoir quelle utilité ? :oops:
Avatar de l’utilisateur
tuxce
Maître du Kyudo
Messages : 6677
Inscription : mer. 12 sept. 2007, 16:03

Message par tuxce »

gpasswd avec usermod, passwd ... evite les erreurs et est à préconiser ;)
j'ai juste indiqué la commande pour éditer proprement si on tient à éditer directement les fichiers.
Avatar de l’utilisateur
Logicien
Daikyu
Messages : 60
Inscription : mer. 16 janv. 2008, 20:23
Localisation : Montréal Québec

Message par Logicien »

Je ne connaissais pas vigr et vipw, mais j'utilise déjà visudo. Merci encore tuxce, ça fait maintenant 4 nouveaux outils que j'ai à ma disposition depuis que j'ai lancé ce message. :!:
Paul
Répondre