Introducción
El comando cambia el uso de propiedades de un archivo, directorio o enlace en Linux. Cada archivo está asociado a un usuario o grupo de propietarios. La configuración adecuada de los permisos de archivos y carpetas es esencial.chown
En este tutorial, aprenda a usar el comando chown de Linux con los ejemplos proporcionados.
Prerrequisitos
- Sistema Linux o UNIX
- Acceso a una terminal / línea de comando
- Un usuario con privilegios de sudo para cambiar de propietario. Recuerde ejecutar los comandos sudo para ejecutarlos correctamente.
Sintaxis del comando Chown de Linux
La sintaxis básica del comando chown consta de varios segmentos. El archivo de ayuda muestra el siguiente formato:
chown [OPTIONS] USER[:GROUP] FILE(s)
- [OPCIONES] : el comando se puede usar con o sin opciones adicionales.
- [USUARIO] : el nombre de usuario o ID de usuario numérico del nuevo propietario de un archivo.
- [:]: utilice dos puntos al editar un grupo de archivos.
- [GRUPO]: cambiar la propiedad de un archivo es opcional.
- ARCHIVO: el archivo de destino.
Se requieren permisos de superusuario para ejecutar el comando chown.
En esta guía, probamos comandos de muestra con la versión 8.28 de chown en Ubuntu 18.04.2 LTS.
Para verificar la versión de chown en su computadora, escriba:
chown --version
El resultado será así:
Cómo verificar la propiedad de los archivos en Linux
Primero, necesita conocer el propietario o grupo del archivo original antes de cambiar las propiedades con el comando chown.
Para verificar el grupo o la propiedad de los archivos y directorios de Linux en la ubicación actual, ejecute el siguiente comando:
ls -l
El ejemplo del comando de salida se ve así:ls
Cómo cambiar el propietario de un archivo
Para cambiar el propietario de un archivo chown, es necesario especificar el nuevo propietario y el archivo. El formato de la orden es:
chown NewUser FILE
El siguiente comando cambia la propiedad de un archivo de muestra de la prueba raíz para la prueba del usuario :
chown test sample
Utilice el mismo formato para cambiar la propiedad de archivos y directorios .
Cambiar el propietario de un archivo a un UID
En lugar de un nombre de usuario, puede especificar un ID de usuario para cambiar la propiedad de un archivo.
Por ejemplo:
chown 1002 sample2
Asegúrese de que ningún usuario tenga el mismo nombre que el UID numérico. En este caso, el comando chown prioriza el nombre de usuario, no el UID .
Nota: Para verificar la identificación de un usuario, ejecútelo desde el terminal.id -u USERNAME
Cambiar la propiedad de varios archivos de Linux
Enumere los nombres de los archivos de destino por el nuevo usuario para cambiar la propiedad de varios archivos. Utilice espacios únicos entre los nombres de los archivos.
En el siguiente ejemplo, root será el nuevo propietario de los archivos sample2 y sample3.
chown root sample2 sample3
Combine nombres de archivos y nombres de directorios para cambiar la propiedad con un solo comando. Por ejemplo:
chown root sample3 Dir1
Recuerde que los comandos distinguen entre mayúsculas y minúsculas.
Cómo cambiar el grupo de un archivo
Con chown, puede cambiar un grupo en un archivo o directorio sin cambiar el usuario propietario. El resultado es el mismo que el del comando chgrp.
Ejecute el comando usando un punto y un nombre de grupo:chown
chown :NewGroup FILE
El siguiente ejemplo cambia el grupo en el archivo sample3 en la prueba de grupo a grupo3.
chown :group3 sample3
Enumere varios nombres de archivo o directorios para realizar cambios masivos.
Cambiar el grupo de un archivo usando GID
Similar a UID, use un ID de grupo (GID) en lugar de un nombre de grupo para cambiar el grupo de un archivo.
Por ejemplo:
chown :1003 sample
cambiar propietario y grupo
Para asignar un nuevo propietario a un archivo y cambiar el grupo al mismo tiempo, ejecute el comando en el siguiente formato:chown
chown NewUser:NewGroup FILE
Entonces, para configurar linuxuser como el nuevo propietario y group2 como el nuevo grupo en el archivo sample2:
chown linuxuser:group3 sample3
Recuerde que no hay espacio antes o después de los dos puntos.
Cambiar de grupo a grupo de acceso de usuarios
El comando chown asigna el grupo de conexión del propietario al archivo cuando no se especifica ningún grupo.
Para ello, defina un nuevo usuario seguido de dos puntos, un espacio y el archivo de destino:
chown NewUser: FILE
El siguiente ejemplo cambia la propiedad del grupo al grupo de autenticación linuxuser:
chown linuxuser: sample3
Transferir la propiedad y la configuración del grupo de un archivo a otro
En lugar de cambiar la propiedad de un usuario específico, puede utilizar el propietario y un grupo en un archivo de referencia.
Agregue la opción al comando chown para copiar la configuración de un archivo a otro:--reference
chown --reference=ReferenceFILE FILE
Recuerde ingresar los nombres de archivo correctamente para evitar el mensaje de error:
Verifique el propietario y el grupo antes de realizar cambios
La opción opción le permite verificar el propietario y el grupo actual y luego aplicar los cambios.chown
--from
La sintaxis de chown para la verificación de usuarios y grupos se ve así:
chown --from=CurrentUser:CurrentGroup NewUser:NewGroup FILE
El siguiente ejemplo muestra que primero verificamos la propiedad y el grupo del archivo sample3:
chown --from=root:group2 linuxuser:group3 sample3
Entonces Chown cambió el propietario a linuxuser y el grupo a group3.
Verificar solo al propietario
La opción se puede utilizar para validar solo el usuario actual de un archivo.--from
chown --from=CurrentUser NewUser FILE
Por ejemplo:
chown --from=root linuxuser sample3
solo mira el grupo
Como en la sección anterior, solo puede validar un grupo de archivos usando la opción .--from
chown --from=:CurrentGroup :NewGroup FILE
Aquí hay un ejemplo en el que verificamos el grupo actual antes de modificarlo:
chown --from=:group3 :group4 FILE
Recuerde utilizar dos puntos para los nombres de ambos grupos para evitar mensajes de error.
Cómo cambiar de forma recursiva la propiedad de un archivo
El comando chown le permite cambiar la propiedad de todos los archivos y subdirectorios en un directorio determinado. Agregue una opción personalizada para hacer esto:-R
chown -R NewUser:NewGroup DirNameOrPath
En el siguiente ejemplo, cambiaremos de forma recursiva el propietario y el grupo de todos los archivos y directorios en Dir1.
chown -R linuxuser:group3 Dir1
Orden Chown y enlaces simbólicos
Para cambiar el propietario de un enlace simbólico, use la opción. De lo contrario, se cambiará la propiedad del archivo vinculado.-h
La siguiente imagen muestra cómo se comportan los enlaces simbólicos cuando se omiten.-h
El propietario y el grupo del enlace simbólico permanecen intactos. En cambio, se cambiaron el propietario y el grupo del archivo de texto.
Para enviar cambios al enlace, ejecute el comando chown con la bandera:-h
chown -h NewUser:NewGroup SymbolicLink
En el siguiente ejemplo, cambiamos el propietario y el grupo de un enlace simbólico.
Ver los detalles del proceso de pedido de Chown
De forma predeterminada, el terminal no muestra información sobre el proceso de chown. Para ver lo que sucede detrás de escena, use una de las dos líneas de comando:
- La opción –v produce detalles del proceso incluso cuando la propiedad sigue siendo la misma.
- La opción -c muestra información de salida solo cuando cambia un propietario o grupo del archivo de destino.
Por ejemplo, si especificamos el propietario actual como el nuevo propietario del archivo:
chown -v linuxuser sample2
El terminal produce la siguiente salida:
Cambie de y no habrá ningún mensaje en este caso. Esto se debe a que no hay cambios de propiedad ni de grupo.-v
-c
La información es especialmente útil con el comando chown recursivo :
En este ejemplo, la salida enumera todos los objetos afectados después de que se ejecuta el comando.
Elimine los errores del comando Chown
Para evitar mostrar posibles mensajes de error al ejecutar el comando chown, use la opción:-f
chown -f NewUser FILE
El siguiente ejemplo muestra el mensaje de error de un archivo o directorio que no existe:
Agregar la bandera elimina la mayoría de los mensajes de error. Sin embargo, si especifica un nombre de usuario no válido, se mostrará el mensaje de error:-f
conclusión
Ahora sabe cómo usar el comando chown en Linux para cambiar la propiedad de un usuario y / o grupo de archivos.
Tenga especial cuidado al cambiar el grupo o la propiedad de un archivo o directorio.