Linux : ¿cómo cambiar el propietario de un archivo con el comando chown?
Table of Contents
- I. Introducción
- II. Sintaxis del comando chown
- III. Ejemplos de uso de chown
- A. ¿Cómo puedo cambiar el propietario de un fichero?
- B. ¿Cómo puedo cambiar el propietario de un conjunto de archivos?
- C. ¿Cómo puedo cambiar el grupo asignado a un fichero?
- D. ¿Como uso un archivo de referencia con chown?
- E. El modo verbose del comando chown
- F. Comprobar propietario y grupo antes de la modificación
- IV. Conclusión
I. Introducción
¿Cómo se cambia el propietario de un archivo o carpeta en Linux? El comando chown proporciona una respuesta a esta pregunta. Como administrador del sistema, esta es una operación que deberías ser capaz de realizar.
El comando chown (abreviatura de "cambiar propietario") es un comando indispensable de Linux. Te permite cambiar el propietario y el grupo asociados a uno o más archivos o carpetas. Además del comando chown, también deberías estar familiarizado con el comando chmod, ya que te permite cambiar los permisos de un archivo o carpeta. Existe una verdadera complementariedad entre estos dos comandos. Juntos, te permiten gestionar los permisos de acceso y, por tanto, controlar quién tiene acceso a qué.
II. Sintaxis del comando chown
Comencemos con la sintaxis básica del comando chown.
chown [OPCIONES] propietario[:grupo] archivo
- [OPCIONES] una o más opciones para adaptar el comportamiento del comando chown (habilitar la recursividad, por ejemplo)
- propietario: el nuevo usuario propietario del fichero especificado en el campo
- grupo: el nuevo grupo "propietario" asociado al fichero (opcional)
- archivo: el archivo o directorio que se va a modificar.
Así pues, la presentación de la sintaxis me lleva a hablarte de las principales opciones del comando chown:
- -R (--recursive): aplica los cambios de forma recursiva a todos los archivos y subcarpetas de una carpeta raíz.
- -v (--verbose): muestra los cambios realizados para cada archivo (mejor visibilidad de las acciones realizadas).
- --reference=: utiliza un fichero de referencia para copiar sus propiedades (propietario y grupo).
- --help: muestra la ayuda y las opciones disponibles para el comando.
El usuario propietario y el grupo asociado a un fichero son visibles cuando se utiliza el comando ls. He aquí un ejemplo.

III. Ejemplos de uso de chown
En el resto de este artículo, aprenderás a utilizar el comando chown en diversas situaciones.
A. ¿Cómo puedo cambiar el propietario de un fichero?
Para cambiar el propietario de un archivo llamado "it-connect.txt" y establecerlo al usuario "flo":
chown flo it-connect.txt
Nota : añadir"sudo" como prefijo puede ser necesario, dependiendo del usuario con el que estés trabajando, el fichero con el que estés trabajando y la operación deseada. Si necesita cambiar el propietario de un archivo del sistema o de un archivo que no está en"/home/" de su usuario, es necesario utilizar "sudo" (en la mayoría de los casos).
Después de ejecutar este comando, el usuario "flo" se convierte en el nuevo propietario de este archivo. Puedes comprobarlo con el siguiente comando:
ls -l it-connect.txt
El cambio es claramente visible. El comando chown que acabamos de ejecutar ha modificado el usuario propietario, es decir, el valor enmarcado en naranja en la imagen inferior.

Para cambiar el usuario propietario y el grupo, la sintaxis es ligeramente diferente. En el ejemplo siguiente se define el usuario "flo" como propietario y se asocia el grupo "it-connect":
sudo chown flo:it-connect it-connect.txt
Al final, el comando ls devuelve el siguiente resultado:
-rw-rw-r-- 1 flo it-connect 0 janv. 24 09:29 it-connect.txt
B. ¿Cómo puedo cambiar el propietario de un conjunto de archivos?
Si desea cambiar el propietario de todos los archivos de un directorio, debe utilizar la opción "-R ". Esta opción le permite cambiar recursivamente el propietario (y posiblemente el grupo). En este caso, la operación se realiza de forma recursiva en el directorio "/home/flo/data".
sudo chown -R flo /home/flo/data
C. ¿Cómo puedo cambiar el grupo asignado a un fichero?
Si sólo quieres cambiar el grupo de un archivo, ¡puedes hacerlo! Pero ten cuidado, necesitas usar una sintaxis muy específica. Tienes que especificar dos puntos (:) seguidos del nombre del grupo, dejando en blanco la primera parte correspondiente al usuario propietario.
He aquí un ejemplo:
sudo chown :it-connect demo.txt
Este comando sólo modifica el grupo asociado al archivo "demo.txt ", sin afectar al propietario actual.
Para cambiar recursivamente el grupo en varios archivos :
sudo chown -R :it-connect /home/flo/data
Tras la ejecución de este comando, todos los archivos y subdirectorios ubicados bajo la raíz "/home/flo/data" tendrán "it-connect" como grupo asociado.
D. ¿Como uso un archivo de referencia con chown?
El comando chown te permite utilizar un archivo existente como referencia para copiar sus propiedades de propietario y grupo. En cierto modo, es una forma de duplicar esta información.
sudo chown --reference=demo.txt fichier1.txt
En este ejemplo, el archivo llamado "fichier1.txt" adoptará las mismas propiedades que "demo.txt".

E. El modo verbose del comando chown
La opción -v le permite ver los cambios realizados por el comando, en lo que se conoce como modo detallado.
sudo chown -v flo it-connect.txt
De hecho, podemos mezclar las distintas opciones. Ésta, por ejemplo, utiliza un fichero de referencia. El resultado del comando contiene una frase para explicar el cambio realizado.
sudo chown -v --reference=demo.txt fichier2.txt
Ownership of 'fichier2.txt' changed from root:it-connect to flo:flo
Esta función es especialmente útil para rastrear los cambios realizados por los scripts.
F. Comprobar propietario y grupo antes de la modificación
La opción --from se utiliza para comprobar que el fichero pertenece a un usuario y grupo determinados antes de aplicar una modificación. Si no es así, se cancela la operación. La sintaxis es la siguiente:
sudo chown --from=[UtilisateurActuel]:[GroupeActuel] [NouvelUtilisateur]:[NouveauGroupe] fichier
Por ejemplo, para comprobar que el archivo llamado "fichier3.txt" pertenece a "flo" y al grupo "it-connect", y luego cambiar el propietario a "flo" y el grupo a "flo", usaríamos esto:
sudo chown -v --from=flo:it-connect flo:flo fichier3.txt
Especificando la opción "-v" se activa el modo verbose para obtener el resultado de la prueba. Aquí, la prueba falla, por lo que el comando chown no realiza ningún cambio. Al final, el resultado devuelto es el siguiente:
The ownership of 'fichier3.txt' is retained as root:it-connect
IV. Conclusión
Después de leer este tutorial, tendrás toda la información que necesitas para familiarizarte con el comando chown en Linux. Es simplemente indispensable para administrar un servidor Linux, ya sea Debian, Ubuntu, AlmaLinux u otra distribución.