Contempo: Permisos de usuario

Permisos de usuario

El tema de los permisos sobre un archivo o directorio es básico.

Actualmente los permisos se pueden cambiar fácilmente con un administrador de archivos como Nautilus, Dolphin o Thunar. Pero si queremos control rápido sobre todo es mejor utilizar chmod y chown. Estos dos comandos permiten tener bajo nuestra custodia la seguridad de nuestros archivos y directorios, y de permitir quienes o quien puede leer, escribir y ejecutar.

chmod: Leer, Escribir, Ejecutar


El comando chmod permite cambiar lo que puede hacer el propietario o grupo dueño del archivo/directorio en cuestión. Sé que existen siglas numéricas para cambiar permisos en chmod, pero no las utilizaré en estos ejemplos, ya que otorgar siglas numéricas para cambiar permisos no tiene sentido.

Para ver que permisos que tiene un archivo/directorio, solamente tipean en una terminal (para ver directorios/archivos ocultos usen "ls -la"):
ls -l

El comando les mostrará al lado izquierdo de la terminal una serie de letras:
rwx (propietario) rwx (grupo) rwx (otros)

Los entre-paréntesis muestran los tres que pueden controlar el archivo/directorio. Estas son las funciones de cada las letras: 
  • r: Permite leer.
  • w: Permite escribir.
  • x: Permite ejecutar.
  • -: Si el guion aparece quiere decir que no tiene permiso.

Dando la orden

Para cambiar entre propietario (u), grupo (g), otros (o), todos los anteriores (a). Y dar permisos de lectura (r), escritura (w), ejecución (x). Se dan permisos con el signo más (+), se quitan permisos con el signo menos (-). Recuerda usar sudo primero:
chmod ugoa+rwx archivo

En un directorio se pone "-R", para dar permisos recursivamente de propietario:
chmod -R u+rwx directorio

Si quisieran quitar permisos a un archivo del propietario:
chmod u-rwx archivo

Si quisieran darle permisos a todos (propietario, grupo, otros):
chmod a+rwx archivo

Quitar permisos a externos recursivamente en un directorio:
chmod -R o-rwx directorio

Dar permiso a otros solo para leer:
chmod o+r archivo

Bueno, en general los permisos se pueden intercambiar y tratar individualmente, y ver cuales son los que más se acomodan a sus necesidades.

chown: Usuario y Grupo


El comando chown determina quien es dueño del archivo o directorio, y además determina quien es el grupo dueño. Usualmente suelen ser los dos iguales, o sea: el mismo nombre del usuario es el mismo del grupo. Recuerda usar sudo primero.

Asignar como dueño del archivo al usuario "yo", perteneciente al grupo de usuarios "yos":
chown yo:yos archivo

Para directorio se aplican permisos de dueño recursivamente con -R:
chown -R yo:yos directorio

Si quisieran que solo el superusuario root fuera el dueño y grupo del fichero u directorio:
chown root:root archivo

Cambiar el dueño al directorio actual (si quieren que los aplique recursivamente agregan -R:
chown usuario *

Recordar que con "chmod" tienen control total de los permisos de lectura, escritura, y ejecución. Y con "chown" tienen control sobre el dueño y grupo del archivo/directorio.