(8 risposte)
Chiuso 3 anni fa.
Supponiamo che io abbia effettuato l'accesso con l'utente takpar
:
[email protected]:/$
Come root, ho aggiunto takpar
come membro del gruppo webdev
utilizzando:
# usermod -a -G webdev takpar
Ma sembra che non sia stato applicato, perché ad esempio non riesco ad entrare in un webdev
La directory di 's che ha l'autorizzazione di lettura per il gruppo:
400169 drwxr-x--- 3 webdev webdev 4.0K 2011-08-15 22:34 public_html
[email protected]:/home/webdev/$ cd public_html/
bash: cd: public_html/: Permission denied
Ma dopo un riavvio ho accesso come mi aspetto. Poiché questo tipo di cambio di gruppo è nella mia routine, c'è un modo per applicare le modifiche senza bisogno di un riavvio?
Rispondi
Sembra che non ci sia modo per far conoscere alla sessione corrente il nuovo gruppo, ad esempio il file manager non funzionerà con le nuove modifiche. Ma un nuovo accesso farà il lavoro.
Il su
comando è appropriato anche per i comandi temporanei nella sessione corrente.
Risposta accettata:
Soluzione locale:usa su yourself
per accedere nuovamente. Nella nuova sessione sarai considerato un membro del gruppo.
Pagine di manuale per newgrp
e sg
potrebbe anche essere interessante modificare il tuo attuale ID gruppo (e accedere a un nuovo gruppo):
-
Per utilizzare
webdev
's group id (e privilegi) nel tuo attuale uso della shell:newgrp webdev
-
Per avviare un comando con un ID di gruppo (e mantenere i privilegi correnti nella shell) usa:
sg webdev -c "command"
(
sg
è comesu
ma per i gruppi e dovrebbe funzionare senza la password del gruppo se sei elencato come membro del gruppo nei dati del sistema)