Formación informática

Java | Joomla | MySQL

Debian - Tema 9.5: administración de permisos

9.5.1. Mediante comandos

Veamos los comandos principales para administrar los permisos de usuarios en un sistema GNU/Linux. Si los cambios afectan solamente a nuestro usuario, entonces podremos realizar nosotros el cambio. Si afectan a otros usuarios o grupos, entonces tendremos que realizar los cambios desde una cuenta de administrador.

 

Linux Permisos 3

 

9.5.1.1. Cambiar el propietario de un archivo

Función

Forma parte del paquete coreutils que se instala con todas las distribuciones de Linux. Cambia  el  propietario de cada fichero, usuario o grupo, según el primer argumento que no sea una opción, el cual se interpreta como sigue.  Si sólo se da un nombre de usuario (o  UID  numérico),  entonces  ese  usuario  se  convierte  en  el propietario  de cada fichero dado y el grupo al que pertenece el fichero no cambia. Si al nombre de usuario sigue un signo de dos puntos y un nombre de grupo (o GID numérico), sin espacios entre ellos, entonces  también  se  cambia  el  grupo  al  que pertenece cada fichero.

Sintaxis

chown [opciones] usuario[:grupo] fichero...

Listado de opciones

Corta

Larga

Explicación

-c

--changes

Muestra un mensaje donde menciona solamente aquellos ficheros cuyo propietario cambia realmente.

-h

--no-dereference 

Actúa sobre enlaces simbólicos propiamente en vez de  sobre  lo  que apunten.  Disponible  solamente  si  el  sistema proporciona la primitiva lchown.

-f

--silent, --quiet

No muestra mensajes de error sobre ficheros cuyo propietario no puede cambiarse.

-R

--recursive

Los cambios se aplican a todos los archivos y subdirectroios del directroio introducido como argumento.

-v

--verbose

Describe prolijamente la acción efectuada (o no) para cada fichero.q

Vamos a crear un archivo con nuestro usuario en la carpeta home. A continuación vamos cambiar el propietario del archivo usando nuestra cuenta y la cuenta de administrador, confirmando los cambios y filtrando los resultados para mostrar solo el archivo afectado:

josemariatc@debian:~$ pwd

/home/josemariatc

josemariatc@debian:~$ ls -l

total 972

-rw-r--r-- 1 josemariatc josemariatc 946970 abr 10 17:39 cs_josemariatc.7z

drwxr-xr-x 2 josemariatc josemariatc   4096 abr  3 23:25 Descargas

drwxr-xr-x 2 josemariatc josemariatc   4096 mar 21 23:06 Documentos

drwxr-xr-x 2 josemariatc josemariatc   4096 mar 16 17:50 Escritorio

drwxr-xr-x 2 josemariatc josemariatc   4096 abr  7 17:04 Imágenes

drwxr-xr-x 2 josemariatc josemariatc   4096 mar 22 23:28 jmtc_dir

drwxr-xr-x 2 josemariatc josemariatc   4096 mar 22 23:28 jmtc_dir2

drwxr-xr-x 2 josemariatc josemariatc   4096 mar 16 17:50 Música

drwxr-xr-x 2 josemariatc josemariatc   4096 mar 16 17:50 Plantillas

drwxr-xr-x 4 josemariatc josemariatc   4096 abr  3 23:25 PRUEBA

drwxr-xr-x 2 josemariatc josemariatc   4096 mar 16 17:50 Público

drwxr-xr-x 2 josemariatc josemariatc   4096 mar 16 17:50 Vídeos

josemariatc@debian:~$ touch permisos.txt

josemariatc@debian:~$ ls -l | grep permisos

-rw-r--r-- 1 josemariatc josemariatc      0 abr 16 09:25 permisos.txt

josemariatc@debian:~$ chown -v thalia permisos.txt

chown: cambiando el propietario de 'permisos.txt': Operación no permitida

fallo al cambiar el propietario de 'permisos.txt' de josemariatc a thalia

josemariatc@debian:~$ su

Contraseña:

root@debian:/home/josemariatc# gedit /etc/groupchown -v thalia permisos.txt

Opción desconocida -v

root@debian:/home/josemariatc# chown -v thalia /home/josemariatc/permisos.txt

cambiado el propietario de '/home/josemariatc/permisos.txt' de josemariatc a thalia

root@debian:/home/josemariatc# ls -l /home/josemariatc | grep permisos.txt

-rw-r--r-- 1 thalia      josemariatc      0 abr 16 09:25 permisos.txt

root@debian:/home/josemariatc# exit

exit

josemariatc@debian:~$ ls -l | grep permisos

-rw-r--r-- 1 thalia      josemariatc      0 abr 16 09:25 permisos.txt

josemariatc@debian:~$ cat permisos.txt

9.5.1.2. Cambiar los permisos de un grupo

Función

Permite cambiar los permisos de grupo de un archivo pudiendo usar tanto el número de identificación del mismo o su nombre. El acrónimo procede de change group.

Sintaxis

chgrp -OPCIÓN GRUPO FICHERO

Listado de opciones

Corta

Larga

Explicación

-c

--changes

Describe prolijamente la acción para cada fichero cuyo grupo cambie realmente.

-f

--silent, --quiet

No muestra mensajes de error sobre ficheros cuyo grupo no pueda cambiarse.

-h

--no-dereference 

Actúa  sobre  enlaces  simbólicos  propiamente  en  vez  de sobre aquello a lo que apunten. Disponible solamente si el sistema proporciona la primitiva lchown.

-R

--recursive

Cambia recursivamente el grupo propietario de directorios y sus contenidos.

-v

--verbose

Muestra un mensaje por cada fichero procesado.

Así para cambiar el permiso de acceso a un grupo tendríamos que escribir:

9.5.1.3. Cambiando permisos

Función

Cambia los permisos de cada fichero dado según modo, que puede ser o bien  una  representación  simbólica de los cambios a realizar, o bien un número octal que representa el patrón de bits de los nuevos permisos.      

Tal argumento es una  lista  de  órdenes  de  cambio  de  modo  simbólico, Separadas  por  comas.  Cada orden de cambio de modo simbólico empieza con cero o más letras del conjunto `ugoa': éstas controlan a qué  usuarios  se referirán los nuevos permisos del fichero cuyos permisos se van a cambiar: el usuario propietario (u), otros usuarios distintos del propietario  pero del  mismo  grupo  que  el  del  fichero (g), otros usuarios que ni son el propietario ni pertenecen al grupo del fichero (o), o todos  los  usuarios (a). De forma que `a' equivale aquí a `ugo'.  Si no se da ninguna de estas letras, el efecto es el mismo que si se hubiera puesto `a', salvo que  los bits que están activos en la máscara umask no se ven afectados.

El  operador  `+'  hace  que los permisos seleccionados se añadan a los ya existentes en cada fichero; `-' hace que se quiten de los que ya había;  y  `=' hace que sean los únicos que el fichero va a tener.

Sintaxis

chmod [OPCIÓN]... MODO[,MODO]... FICHERO..

Listado de opciones

Corta

Larga

Explicación

-c

--changes

Muestra  un  mensaje  mencionando solamente aquellos ficheros cuyos permisos cambian realmente.

-f

--silent, --quiet

No muestra mensajes de error sobre ficheros cuyo grupo no pueda cambiarse.

-h

--no-dereference 

Actúa  sobre  enlaces  simbólicos  propiamente  en  vez  de sobre aquello a lo que apunten. Disponible solamente si el sistema proporciona la primitiva lchown.

-R

--recursive

Cambia recursivamente el grupo propietario de directorios y sus contenidos.

-v

--verbose

Muestra un mensaje por cada fichero procesado.

Por ejemplo, vamos a quitar los permisos de escritura al resto de usuarios archivo permisos.txt que creamos antes, devolviendo previamente la propiedad del archivo a nuestro usuario. Usaremos lo notación simbólica:

josemariatc@debian:~$ su

Contraseña:

root@debian:/home/josemariatc# chown josemariatc permisos.txt

root@debian:/home/josemariatc# ls -l | grep permisos

-rw-r--r-- 1 josemariatc josemariatc      0 abr 16 09:25 permisos.txt

josemariatc@debian:~$ ls -l |  grep permisos

-rw-r----- 1 josemariatc josemariatc      0 abr 16 09:25 permisos.txt

Ahora vamos a conceder el permiso quitado usando la notación octal:

josemariatc@debian:~$ chmod 644 permisos.txt

josemariatc@debian:~$ ls -l |  grep permisos

-rw-r--r-- 1 josemariatc josemariatc      0 abr 16 09:25 permisos.txt

9.5.1.4. Cambiar los permisos de acceso predeterminados

Función

Los permisos de acceso predeterminados de los nuevos archivos se definen por el valor de una máscara que se aplica al conjunto de permisos estándar. El valor por defecto es 002 en notación simbólica. En el caso de los permisos de ejecución, nunca se activan de modo predeterminado. Así ponemos una capa de seguridad con la ejecución de archivos peligrosos. La máscara del administrador generalmente es 0022, otorgando menos confianza a su grupo que a un usuario normal.

Los ficheros y directorios tienen definidos por defecto unos permisos base. Este valor es 666 para los ficheros y 777 para los directorios. El valor de umask es un valor octal que representa los bits a eliminar de los permisos base, así que para determinar el permiso inicial que obtendrá un fichero o directorio habrá que restar el valor de umask al permiso base. En caso de que el número de umask sea mayor que el del base, el resultado será cero. Se puede usar tanto la notación simbólica como la octal. Así umask 077 es equivalente a umask u=rwx, go=. Existen sitios web en internet que permiten calcular el valor de umask pero vemos que es muy sencillo.

Sintaxis

umask [–opción] [modo]

Listado de opciones

Corta

Explicación

-p

Muestra la máscara del usuario

-S

Muestra los permisos agrupados a nivel de usuario, grupo y otros.

Ejemplo

Vamos a obtener la máscara del usuario. Después vamos a crear un archivo y una carpeta para ver los permisos. Posteriormente, cambiamos la máscara del usuario y volvemos a crear otros archivos.

josemariatc@debian:~$ umask -p

umask 0022

josemariatc@debian:~$ umask -S

u=rwx,g=rx,o=rx

josemariatc@debian:~$ touch archivo1

josemariatc@debian:~$ mkdir dir1

josemariatc@debian:~$ ls -l

total 976

-rw-r--r-- 1 josemariatc josemariatc      0 abr 17 10:44 archivo1

-rw-r--r-- 1 josemariatc josemariatc 946970 abr 10 17:39 cs_josemariatc.7z

drwxr-xr-x 2 josemariatc josemariatc   4096 abr  3 23:25 Descargas

drwxr-xr-x 2 josemariatc josemariatc   4096 abr 17 10:44 dir1

drwxr-xr-x 2 josemariatc josemariatc   4096 mar 21 23:06 Documentos

drwxr-xr-x 2 josemariatc josemariatc   4096 mar 16 17:50 Escritorio

drwxr-xr-x 2 josemariatc josemariatc   4096 abr  7 17:04 Imágenes

drwxr-xr-x 2 josemariatc josemariatc   4096 mar 22 23:28 jmtc_dir

drwxr-xr-x 2 josemariatc josemariatc   4096 mar 22 23:28 jmtc_dir2

drwxr-xr-x 2 josemariatc josemariatc   4096 mar 16 17:50 Música

-rw-r--r-- 1 josemariatc josemariatc      0 abr 16 09:25 permisos.txt

drwxr-xr-x 2 josemariatc josemariatc   4096 mar 16 17:50 Plantillas

drwxr-xr-x 4 josemariatc josemariatc   4096 abr  3 23:25 PRUEBA

drwxr-xr-x 2 josemariatc josemariatc   4096 mar 16 17:50 Público

drwxr-xr-x 2 josemariatc josemariatc   4096 mar 16 17:50 Vídeos

josemariatc@debian:~$ umask 002

josemariatc@debian:~$ touch archivo2

josemariatc@debian:~$ ls -l | grep archivo

-rw-r--r-- 1 josemariatc josemariatc      0 abr 17 10:44 archivo1

-rw-rw-r-- 1 josemariatc josemariatc      0 abr 17 10:44 archivo2

josemariatc@debian:~$ mkdir dir2

josemariatc@debian:~$ ls -l | grep dir

drwxr-xr-x 2 josemariatc josemariatc   4096 abr 17 10:44 dir1

drwxrwxr-x 2 josemariatc josemariatc   4096 abr 17 10:45 dir2

drwxr-xr-x 2 josemariatc josemariatc   4096 mar 22 23:28 jmtc_dir

drwxr-xr-x 2 josemariatc josemariatc   4096 mar 22 23:28 jmtc_dir2

josemariatc@debian:~$ umask 0022

9.5.2. Administradores de archivos

Son aplicaciones gráficas que permiten aplicar los permisos vistos hasta ahora de una forma más intuitiva. En Debian, el administrador instalado por defecto es Nautilus 2.30.1, cuyo sitio web oficial, en in gles, es http://live.gnome.org/Nautilus. El aspecto que tiene es el del explorador de archivos de Windows:

Nautilus - Interfaz

Para ver los permisos concedidos a un archivo o directorio, nos situamos sobre él, hacemos click derecho y elegimos Propiedades. De todas las pestañas que salen, elegimos Permisos, como no. El aspecto es distinto si es un directorio o un archivo.

Para un directorio:

Permisos directorio en DebianPara un archivo:
Permisos archivo en Debian

9.5.3. Midnight Comander o MC

Otro programa que podemos usar para gestionar todo lo visto en este tema es el MC. El propgrama se inicia escribiendo mc en el terminal:

 

Midnight Comander - Interfaz

 

El programa se controla tanto con el ratón como con el teclado. Para acceder a los permisos tenemos que seleccionar el archivo cuyos permisos queremos cambiar y acceder al menú Archivo dónde seleccionaremos cambiar Permisos:

 

Midnight Commander Cambar Permisos

 

De esta forma accederemos al cuadro de diálogo dónde podremos seleccionar los permisos concedidos o deseleccionarlos para quitarlos. Al final pulsaremos aplicar para que se guarden los cambios:

 

Midnight Commander Cambar Permisos CD

 

 Debian - Tema 9.4: notaciones <- | ->  Debian - Tema 9.6: ejercicios resueltos 
   GNU/Linux - Temario

Escribir un comentario

Aunque los comentarios no expresan la opinión del administrador del sitio web, éste si que tiene una responsabilidad legal sobre lo que aparece. Por lo tanto, habrá una labor de moderación de los mensajes. No se permitirán mensajes ofensivos ni publicidad


Código de seguridad
Refescar

Solicitamos su permiso para obtener datos estadísticos de su navegación en esta web, en cumplimiento del Real Decreto-Ley 13/2012, de 30 de marzo. Si continúa navegando consideramos que acepta el uso de cookies. . Más información