GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo administrar permisos/propiedades de archivos y directorios en Linux

Propiedad del archivo

Cada archivo es propiedad de un usuario específico (o UID) y un grupo específico (o GID). El comando chown se puede usar para cambiar solo el usuario o el usuario y el grupo de un archivo. Aquí hay un ejemplo de cómo cambiar el propietario del archivo "archivo1" a "usuario" y su "usuario" a usuarios. Tenga en cuenta que el uso del comando ls -l es solo para mostrar el cambio y no es un paso necesario para cambiar la propiedad del archivo:

# ls -l
total 8
-rw-r--r--. 1 root root  30 Feb 16 04:47 file1
-rw-r--r--. 1 root root 130 Feb 16 04:47 file2
# chown user:user file1
# ls -l
total 8
-rw-r--r--. 1 user user  30 Feb 16 04:47 file1
-rw-r--r--. 1 root root 130 Feb 16 04:47 file2

El formato básico para el comando chown es el siguiente:

# chown user.group filename

Se pueden usar dos puntos (:) en lugar del carácter separador de punto (.).

# chown user:group filename

Además, se puede omitir el nombre de usuario o de grupo. Si se omite el nombre de usuario (pero el carácter separador está presente), el comando chown se comporta como chgrp comando, y solo se cambia la propiedad del grupo. Si se omite el nombre del grupo (pero el carácter separador está presente, entonces el grupo se establecerá en el grupo de inicio de sesión del usuario especificado. Si se omiten tanto el nombre del grupo como el carácter separador, solo se cambia el nombre de usuario.

Por ejemplo, para cambiar solo el propietario, podría ejecutar lo siguiente:

# chown user filename

Un comando alternativo para cambiar solo el grupo de un archivo es el comando chgrp. Por ejemplo:

# chgrp group filename

Los usuarios normales suelen utilizar el comando chgrp para cambiar la propiedad del grupo de sus archivos. El comando chown normalmente solo lo usa el usuario root.

Propiedad de grupo predeterminada

Cada usuario puede ser miembro de muchos grupos (enumerados en el archivo /etc/group bajo varios grupos). Solo un grupo será el grupo principal de un usuario (enumerado en la entrada del usuario en /etc/password). Cuando un usuario crea un archivo, de forma predeterminada, el archivo será propiedad del grupo principal del usuario. Si quieren que el archivo sea propiedad de uno de sus otros grupos, deben usar el comando chgrp para modificar la membresía del grupo.

Una forma más conveniente de lograr esto es iniciar sesión temporalmente en otro grupo, haciendo que ese grupo sea su grupo principal sustituto. De esta manera, cualquier archivo nuevo que cree será automáticamente propiedad del grupo deseado y no necesitará cambiar la membresía del grupo manualmente. Examine el siguiente ejemplo y observe el uso de newgrp comando.

$ id
uid=1001(user) gid=1001(user) groups=1001(user),10(wheel)
$ touch file1
$ ls -l file1
-rw-rw-r--. 1 user user 0 Feb 16 14:17 file1
$ newgrp wheel
$ touch file2
$ ls -l file2
-rw-r--r--. 1 user wheel 0 Feb 16 14:22 file2

Permisos de archivos y directorios

A continuación se muestra la salida de muestra de ls -l; puede ver desde el primer carácter de cada línea que foo y bar son directorios (indicados por la d) y que meta es un archivo normal (indicado por -).

$ ls -l
drwxr-xr-x 2 user user    6 Jan  7  2015 Desktop
-rw-rw-r-- 1 user user    0 Feb 16 14:17 file1
-rw-r--r-- 1 user wheel   0 Feb 16 14:22 file2

Los siguientes nueve caracteres muestran los permisos del archivo para usuarios, grupos y otros (o todos los demás) como se muestra a continuación, con paréntesis agregados para mayor claridad:

-(rw-) (r--) (r--) 1 user wheel   0 Feb 16 14:22 file2

Ahora el propietario tiene permisos de lectura y escritura (rw-), el grupo y todos los demás solo tienen permisos de lectura (r–). Esto se denomina representación simbólica porque se utilizan letras como r, w y x para indicar permisos. Los permisos también se pueden representar numéricamente:r =4; w =2; x =1

Agregue cada sección para que los permisos del archivo meta (del ejemplo anterior) sean 664. Aquí hay otra forma de ver cómo llegamos a ese número:

-(rw-)  (rw-)  (r--)
-(42-)  (42-)  (4--)
 6       6       4

Agregar los números en cada sección da como resultado permisos de 664.

Cambio de permisos de archivo

El chmod El comando se utiliza para modificar los permisos de un archivo. Puede usarse para agregar o quitar permisos simbólicamente. Por ejemplo, para agregar permisos de ejecución para el propietario de un archivo, ejecutaría:

$ chmod u+x file_name

O bien, para agregar permisos de lectura y escritura para el grupo propietario del archivo, ejecutaría:

$ chmod g+rw file_name

En lugar de agregar permisos, la sintaxis simbólica de chmod también se puede usar para restar o establecer un valor absoluto como se muestra en estos ejemplos:

$ chmod o-w file_name
$ chmod u=rwx,g=rx,o= file_name

El comando chmod también puede establecer permisos explícitamente mediante una representación numérica. Por ejemplo, para establecer permisos en un archivo para rwxrwxr–, ejecutaría:

$ chmod 774 file_name


Linux
  1. Cómo hacer que el archivo y el directorio no se puedan eliminar, incluso mediante la raíz en Linux

  2. Cómo administrar la caducidad y el envejecimiento de la contraseña de usuario en Linux

  3. Cómo copiar permisos y propiedad de archivos a otro archivo en Linux

  4. Cómo administrar las capacidades de archivos de Linux

  5. Cómo agregar un usuario a un grupo en Linux

Cómo copiar archivos y directorios en Linux

Permisos básicos de directorio de Linux y cómo verificarlos

Administre directorios y permisos de archivos con chmod Recursive

Cómo agregar un usuario a un grupo en Linux

Comprender los permisos básicos de archivos y la propiedad en Linux

Cómo agregar un usuario a un grupo de Linux