GNU/Linux >> Linux Esercitazione >  >> Linux

Necessità di utilizzare Newgrp o Su (o disconnettersi e accedere nuovamente) per richiedere l'iscrizione a nuovi gruppi?

Cos'è che fa sì che la nuova appartenenza al gruppo richieda un nuovo accesso (o una nuova shell di accesso avviata da su o newgrp ) per essere visibile?

Basta eseguire un'altra istanza bash (o qualsiasi altra shell) con --login non funziona, ma qualcosa che è suid root come su o newgrp funziona.

Qualcosa è ereditato dalla shell madre o è memorizzato nella cache che nasconde le nuove appartenenze ai gruppi?

Risposta accettata:

Quando viene creato un processo figlio, l'ID utente del processo e gli ID gruppo vengono ereditati dal processo padre.

Quindi, quando modifichi i gruppi del tuo utente (in realtà modifichi i file di configurazione da qualche parte sul disco), i processi non lo noteranno automaticamente e non modificheranno i loro ID di gruppo (i processi non root non hanno comunque i diritti per questo).

E quando inizi bash... beh, inizi semplicemente bash, non succede niente di speciale. Eredita semplicemente gli ID di gruppo dei genitori (shell grafica o un'altra bash forse).

Ma quando esegui su o accedi, accade tutta la magia. Controllano se ti è consentito accedere e modificare il loro ID utente e ID di gruppo (usando chiamate di sistema che richiedono un ID root efficace tra l'altro - ecco perché hanno impostato il bit suid) in modo che tutti i loro processi figlio ereditino questi ID.


Linux
  1. Introduzione ai comandi Linux chgrp e newgrp

  2. Usa mount --bind per spostare il sito Web e la directory e-mail di un server ISPConfig 3 in una nuova directory

  3. Usa mount --bind per spostare il sito Web e la directory e-mail di un server ISPConfig 3 in una nuova directory

  4. Come installare e utilizzare Flatpak in Linux

  5. Crea un nuovo database e usalo in MySQL/MariaDB

Che cos'è chroot jail e come usarlo?

Come installare e utilizzare Helm in Kubernetes

Come installare e utilizzare lo schermo Linux?

Come installare e utilizzare PuTTY su Linux

Linux ha una nuova app di autenticazione ed è abbastanza facile da usare per chiunque

Crea un nuovo utente vsftpd e blocca (specifica) la directory home/login