chown - Differenza tra utente e utente: utente


12

Qual è la differenza tra:

sudo chown $USER:$USER

e

sudo chown $USER

Perché è 2 volte? L'utente è sbagliato? Quando guardo i permessi con namei -l, vedo spesso cose come root rooto proxy proxy.

Perché il proprietario deve essere definito ed elencato 2 volte?

Risposte:


15

Il comando chown viene utilizzato per modificare il proprietario e il proprietario del gruppo di un file o directory. I privilegi di superutente sono richiesti per usare questo comando. La sintassi di chown è simile alla seguente:

chown [owner][:[group]] file...

chown può cambiare il proprietario del file e / o il proprietario del gruppo di file a seconda del primo argomento del comando. Ecco alcuni esempi:

chown owner file esempio:

chown bob file --> Changes the ownership of the file from its current owner to user bob.

chown owner:group file esempio:

chown bob:users file --> Changes the ownership of the file from its current owner to user bob and changes the file group owner to group users.

chown :group file esempio:

 chown :admins file --> Changes the group owner to the group admins. The file owner is unchanged.

chown owner: file esempio:

chown bob: file --> Change the file owner from the current owner to user bob and changes the group owner to the login group of user bob.

Si prega di leggere questo simpatico tutorial https://www.linode.com/docs/tools-reference/linux-users-and-groups . Questo mostra alcune informazioni su utente, gruppi, permessi, ...


Grazie. Tuttavia, qual è il vantaggio di utilizzare anche i gruppi? Possiede tutti gli utenti di Grouo, non solo Bob?
TheBro21,

supponiamo che tu voglia dare il permesso ad alcuni utenti diversi dal proprietario !! questo è il motivo per cui usi i gruppi, puoi
crearne

Sono necessari gruppi principalmente su macchine server utilizzate per più utenti. Supponi di avere un server in cui le persone che lavorano per la tua azienda nel progetto ae nel progetto b dispongono di account utente. È ora possibile concedere l'autorizzazione al gruppo di società per i file a cui tutti devono accedere e impostare la proprietà di tutti i file di progetto sul gruppo "progetto a". In questo modo, nessuno del progetto b sarà in grado di accedere al progetto a file.
fino

I gruppi sono necessari anche sul desktop, ad esempio per sudo, dialout, scansione, ecc.
Pilot6,

Se un utente è il proprietario, sarà sudomai necessario eseguire il file?
Matteo,

5

Non lo è user:user, ma user:group.

Questo è il formato del comando

chown [OPTION]... [OWNER][:[GROUP]] FILE...

Il gruppo di utenti può includere molti utenti. Ecco alcune informazioni relative ai gruppi:

Linux usa i gruppi come un modo per organizzare gli utenti. I gruppi organizzano raccolte di account, principalmente come misura di sicurezza. Il controllo dell'appartenenza ai gruppi viene gestito tramite il file / etc / group, che mostra un elenco di gruppi e dei suoi membri. Ogni utente ha un gruppo predefinito o primario. Quando un utente accede, l'appartenenza al gruppo viene impostata per il proprio gruppo primario. Ciò significa che quando un utente avvia un programma o crea un file, sia il file che il programma in esecuzione saranno associati all'appartenenza al gruppo corrente dell'utente. Un utente può accedere ad altri file in altri gruppi, purché siano anche membri di quel gruppo e le autorizzazioni di accesso siano impostate. Per eseguire programmi o creare un file in un gruppo diverso, l'utente deve eseguire il comando newgrp per cambiare il gruppo corrente.

Un file è di proprietà di un utente e un gruppo. Per impostazione predefinita, è di proprietà dell'utente che ha creato il file e il suo gruppo predefinito, a meno che non venga modificato.

Nel tuo caso l'utente rootè un membro del gruppo root.


Qual è la differenza tra utente e gruppo? Non vedo la differenza tra roote root rootCosa fa il gruppo? Capisco la sezione del proprietario
TheBro21

Quando aggiungi un utente a Linux, crea un gruppo con quel nome. Il gruppo contiene utenti. Supponiamo che tu abbia un dipartimento di contabilità e desideri che i dipartimenti dei tuoi account forniscano l'accesso in lettura e scrittura. È possibile aggiungere tutte le persone al gruppo di account e concedere l'autorizzazione di scrittura in lettura alla cartella / file pertinente.
dedunumax,

Se si esegue il cut -d: -f1 /etc/groupcomando, è possibile visualizzare un elenco completo di gruppi nel proprio sistema. unix.stackexchange.com/questions/153390/… potrebbe aiutarti a capire perché esiste un gruppo con nome utente
dedunumax,

2

man chownfornisce descrizione e utilizzo e altre informazioni utili sul chowncomando.

NAME
       chown - change file owner and group

SYNOPSIS
       chown [OPTION]... [OWNER][:[GROUP]] FILE...
       chown [OPTION]... --reference=RFILE FILE...

Dalle informazioni fornite dalla pagina man, potremmo sapere che chown $USER:$USERcambia il proprietario e il gruppo del file di destinazione in $USER, mentre chown $USERcambia solo il proprietario del file di destinazione $USER, lasciando invariato il gruppo del file di destinazione.

Seguono i dettagli (dalla pagina man):

Owner  is  unchanged  if  missing.   Group is unchanged if missing, but changed to
login group if implied by a ':' following a symbolic OWNER.  OWNER and  GROUP  may
be numeric as well as symbolic.

Quindi chown $USER:$USERpuò essere abbreviato come chown $USER:.

Gli output come root rootda namei -lcomando indicano che il proprietario e il gruppo di quel file sono entrambi impostati su root. Non è definito o elencato dal proprietario due volte. Proprietario e gruppo sono due concetti correlati ma diversi. E un file ha sempre un proprietario e un gruppo.


Per quanto riguarda l'uso del chowncomando, è molto probabile che sia richiesto il privilegio di superutente, poiché è probabile che si trasferisca la proprietà di un file quando si utilizza il chowncomando. Tuttavia, non è sempre la verità.

Supponiamo che abbiamo un utente chiamato "test", che appartiene a diversi gruppi. idil comando fornisce il seguente output:

uid=1000(test) gid=1000(test) groups=1000(test),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),108(lpadmin),110(sambashare)

E l'utente 'test' possiede il seguente file:

-rw-r--r-- 1 test test 0 May 27 23:34 test_file

Quindi possiamo cambiare il gruppo test_filein sambasharesenza il privilegio di superutente, poiché l'utente 'test' appartiene al gruppo 'test' e al gruppo 'sambashare' allo stesso tempo, l'utente 'test' possiede già l'autorizzazione sufficiente per cambiare il gruppo del file.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.