![Permiso de archivo avanzado y cómo leerlos correctamente](https://rvso.com/image/178500/Permiso%20de%20archivo%20avanzado%20y%20c%C3%B3mo%20leerlos%20correctamente.png)
alisto@ubuntu:/projects/solarproj$ \ls -al
total 32
drwxrwsr-t 3 root solarproj 4096 Dec 8 16:02 .
drwxr-xr-x 3 root root 4096 Dec 8 15:29 ..
-rw-rw---- 1 boband boband 802 Dec 8 15:44 bearings.jpg
-rw-rw-r-- 1 boband solarproj 101 Dec 8 15:43 controller.c
drwxrwSr-x 2 alisto solarproj 4096 Dec 8 15:40 old
-------rwx 1 alisto solarproj 19 Dec 8 14:08 power
-rw-r--r-- 1 alisto solarproj 81 Dec 8 15:44 schedule.txt
-rw----r-- 1 boband solarproj 576 Dec 8 15:58 temp
lrwxrwxrwx 1 alisto solarproj 24 Dec 8 16:02 temp.sym -> ../solarproj/temp
Ambos usuarios están en el grupo solarproj.
¿Bob puede cambiar el contenido del archivo
schedule.txt
? ¿Por qué?Si estoy leyendo esto correctamente, la respuesta es no, porque el grupo está configurado para solo lectura.
¿Puede Alice eliminar el archivo
controller.c
? ¿Por qué?El archivo otorga permiso de lectura y escritura, pero debido a la parte adhesiva no puede eliminarlo/no estoy tan segura.
¿Qué usuarios pueden leer el archivo
power
? ¿Por qué?Todos los demás usuarios que no son parte del grupo o Alisto.
¿Por qué Alice, pero no Bob, puede enumerar el contenido del directorio antiguo?
Debido a la S en el permiso del grupo, la x no existe
¿Puede Alice leer el archivo
temp.sym
? ¿Por qué?No, porque no está permitida.
No sé si mis respuestas son correctas y me encantaría que alguien pudiera corregir mis respuestas incorrectas y ayudarme un poco. Me encantaría probarlo y comprobarlo por mí mismo, pero mi máquina virtual no funciona y necesito estudiar para el próximo examen dentro de unos días. ¡Inténtalo de nuevo!
Respuesta1
Cuando se muestra un permiso mediante el ls
comando, sigue una estructura determinada. Echemos un vistazo a un ejemplo:
-rw-rw-r--
ElprimeroEl carácter indica el tipo de archivo y se llamadescriptor de archivo,los siguientes tres personajesindicar los permisos para el usuario que creó el archivo, elsiguiente conjunto de tres personajesindicar los permisos para el grupo del usuario, y elúltimos tres personajesindicar los permisos para todos los demás.
En este ejemplo:
- elprimeroEl carácter, conocido como descriptor de archivo, indica el tipo de archivo. En este caso
-rw-rw-r--
, es el guión al principio. - ellos siguientes tres personajesindique los permisos para el usuario que creó el archivo. En este caso de
-rw-rw-r--
, lo esrw-
. - ellos siguientes tres personajes después de esoindicar los permisos para el grupo de usuarios mencionado anteriormente.
- elúltimos tres personajesmostrar los permisos para todos los demás.
El primer carácter, o el descriptor del archivo, un solo guión ( -
), muestra que se trata de un archivo normal. Por otro lado, si estos fueran los permisos para el directorio, sería único d
. Una lista no exhaustiva de posibles valores para el descriptor de archivo:
d
- un directorio-
- un archivo "normal"l
- un enlace simbólicos
- un zócalo UNIXp
- una tubería
Los otros tres conjuntos de tres caracteres siguen la estructura [read][write][exec]
, donde cada paréntesis contiene un carácter.
Entonces, en nuestro ejemplo de -rw-rw-r--
:
- Los permisos para el usuario que creó el archivo son
rw-
. Para que el usuario pueda leer y escribir en el archivo, pero no ejecutarlo. - los permisos para el grupo del usuario también son
rw-
, lo que significa que el grupo del usuario también puede leer y escribir en él. - los permisos para todos los demás son
r--
; esto significa que todos los demás sólo pueden leer el archivo, no escribirlo ni ejecutarlo.
Entonces, para tus preguntas:
¿Puede Bob cambiar el contenido del archivo Schedule.txt? ¿Por qué?
Si estoy leyendo esto correctamente, la respuesta es no porque el grupo está configurado para solo leer.
-rw-r--r-- 1 alisto solarproj 81 Dec 8 15:44 schedule.txt
Estás en lo correcto. boband
es parte del solarproj
grupo, por lo que sus permisos son r--
, lo que significa que solo puede leer el archivo, no cambiarlo.
¿Puede Alice eliminar el archivo controlador.c? ¿Por qué?
El archivo otorga permiso de lectura y escritura, pero debido a la parte adhesiva no puede eliminarlo/no estoy tan segura.
-rw-rw-r-- 1 boband solarproj 101 Dec 8 15:43 controller.c
Ella sí que puede. Sus permisos son rw-
porque es parte del grupo solarproj, por lo que puede cambiar el archivo, lo que incluye eliminarlo.
¿Qué usuarios pueden leer el poder del archivo? ¿Por qué?
Todos los demás usuarios que no son parte del grupo o Alisto.
-------rwx 1 alisto solarproj 19 Dec 8 14:08 power
De nuevo, correcto. Solo un usuario que 1) no esté en el solarproj
grupo y 2) no lo esté alisto
podrá leer, cambiar o ejecutar ese archivo.
¿Por qué Alice pero no Bob puede enumerar el contenido del directorio antiguo?
Debido a la S en el permiso del grupo, la x no existe
drwxrwSr-x 2 alisto solarproj 4096 Dec 8 15:40 old
No. Los S
medios del archivo.esejecutableyel bit setguid está establecido.
¿Puede Alice leer el archivo temp.sym? ¿Por qué?
No porque a ella no se le permite
-rw----r-- 1 boband solarproj 576 Dec 8 15:58 temp
lrwxrwxrwx 1 alisto solarproj 24 Dec 8 16:02 temp.sym -> ../solarproj/temp
Correcto. temp.sym
señala el archivo temp
; while alisto
puede leer desde temp.sym
, porque apunta a temp
, cuálalisto
no puedoleído, se le negará el permiso.