web-dev-qa-db-fra.com

chown - Différence entre utilisateur et utilisateur: utilisateur

Quelle est la différence entre:

Sudo chown $USER:$USER

et

Sudo chown $USER

Pourquoi est-ce 2 fois? Est-ce que le seul utilisateur se trompe? Lorsque je regarde les autorisations avec namei -l, je vois souvent des choses comme root root ou proxy proxy.

Pourquoi le propriétaire doit-il être défini et répertorié 2 fois?

8
TheBro21

La commande chown permet de changer le propriétaire et le propriétaire du groupe d’un fichier ou d’un répertoire. Les privilèges de superutilisateur sont requis pour utiliser cette commande. La syntaxe de chown ressemble à ceci:

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

chown peut changer le propriétaire du fichier et/ou le propriétaire du groupe de fichiers en fonction du premier argument de la commande. Voici quelques exemples:

chown owner file exemple:

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

chown owner:group file exemple:

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 exemple:

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

chown owner: file exemple:

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.

Veuillez lire ce tutoriel intéressant https://www.linode.com/docs/tools-reference/linux-users-and-groups . Cette montre quelques informations sur l'utilisateur, les groupes, les autorisations, ...

12
Maythux

Ce n'est pas user:user, mais user:group.

C'est un format de commande

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

Un groupe d'utilisateurs peut inclure de nombreux utilisateurs. Voici quelques informations concernant les groupes:

Linux utilise des groupes pour organiser les utilisateurs. Les groupes organisent des collectes de comptes, principalement par mesure de sécurité. Le contrôle de l'appartenance à un groupe est administré via le fichier/etc/group, qui affiche une liste des groupes et de ses membres. Chaque utilisateur a un groupe par défaut ou primaire. Lorsqu'un utilisateur se connecte, l'appartenance au groupe est définie pour son groupe principal. Cela signifie que lorsqu'un utilisateur lance un programme ou crée un fichier, le fichier et le programme en cours sont associés à l'appartenance actuelle au groupe de l'utilisateur. Un utilisateur peut accéder à d'autres fichiers appartenant à d'autres groupes, à condition qu'il soit également membre de ce groupe et que les autorisations d'accès soient définies. Pour exécuter des programmes ou créer un fichier dans un groupe différent, l'utilisateur doit exécuter la commande newgrp pour changer de groupe.

Un fichier appartient à un utilisateur et à un groupe. Par défaut, il appartient à l'utilisateur qui a créé le fichier et à son groupe par défaut, à moins qu'il ne soit modifié.

Dans votre cas, l'utilisateur root est membre du groupe root.

5
Pilot6

man chown donne la description et l’utilisation, ainsi que d’autres informations utiles sur la commande chownname__.

NAME
       chown - change file owner and group

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

Selon les informations fournies par la page de manuel, nous pouvons savoir que chown $USER:$USER change le propriétaire et le groupe du fichier cible en $USER, alors que chown $USER ne change que le propriétaire du fichier cible en $USER, en laissant le groupe du fichier cible inchangé.

Les détails (de la page de manuel) suivent:

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.

Donc, chown $USER:$USER peut être abrégé en chown $USER:.

Des sorties telles que root root à partir de la commande namei -l signifient que le propriétaire et le groupe de ce fichier sont tous deux définis sur rootname__. Ce n'est pas défini par le propriétaire ou répertorié deux fois. Propriétaire et groupe sont deux concepts liés mais différents. Et un fichier a toujours un propriétaire et un groupe.


En ce qui concerne l’utilisation de la commande chownname__, il est très probable que le privilège de superutilisateur soit requis, puisqu’il est probable que le transfert du propriétaire d’un fichier s’effectue lors de l’utilisation de la commande chownname__. Cependant, ce n'est pas toujours la vérité.

Disons que nous avons un utilisateur nommé 'test', qui appartient à plusieurs groupes. La commande iddonne le résultat suivant:

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

Et l'utilisateur 'test' possède le fichier suivant:

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

Ensuite, nous pouvons changer le groupe de test_file en sambasharesans privilège de superutilisateur, car l'utilisateur 'test' appartient au groupe 'test' et au groupe 'sambashare' en même temps, l'utilisateur disposant déjà du droit de changer le groupe. .

2
pallxk