Conceptos básicos de Linux (5) Permisos de archivos

Tabla de contenido

1. El concepto de permisos de archivos.

2. Análisis del resultado del comando de Linux `ll`

3. Dos formas de modificar permisos en Linux

4. Cambiar el propietario y grupo del archivo.

5. Juicio de identidad

6. Máscara del sistema

7. Permisos necesarios para eliminar archivos.

Ocho, poco pegajoso


1. El concepto de permisos de archivos.

1. ¿Qué es?

En pocas palabras, es lo que los usuarios pueden hacer con los archivos.

El núcleo de los permisos de archivo = usuario (identidad de usuario) + atributo de transacción (qué se puede hacer)
(esto puede indicar lo que un usuario puede hacer con el archivo)

2. La gestión de derechos en Linux se divide en tres categorías diferentes (identidades de usuarios): propietario del archivo, usuarios del mismo grupo y otros usuarios.

3. Permisos comunes (cosas que se pueden hacer): r: permiso de lectura (leer); w: permiso de escritura (escribir); x: ejecutar (ejecutar).


2. Análisis del resultado del comando de Linux `ll`

1. Tipo de archivo

 


El primer carácter de cada columna mostrada por el comando ll indica el tipo de archivo del archivo.

        Por ejemplo, utilice el comando ll para ver el tipo de archivo.

        


Tuo: A diferencia de Windows, Linux no utiliza sufijos de archivos para distinguir los tipos de archivos .
        (El sistema Linux no mira el sufijo del archivo, pero puede mostrárselo usted mismo para distinguir el archivo)

        

2. Propietario y grupo de pertenencia y otros usuarios

        Los caracteres del 12 al 14 de cada columna que muestra el comando ll son el nombre de usuario del propietario del archivo, y los caracteres del 15 al 17 son el nombre de usuario del grupo al que pertenece el archivo.


El propietario y el grupo al que pertenece son una identidad y etiqueta del usuario.

3. El propietario, el grupo al que pertenece y los permisos de otros.

Los caracteres del segundo al décimo de cada columna que muestra el comando ll indican el propietario del archivo, el grupo al que pertenece y los permisos de otros.

Los caracteres 2.º a 4.º indican si el propietario tiene permisos de lectura, escritura y ejecución.
Los caracteres del 5º al 7º indican si el grupo al que pertenece tiene permisos de lectura, escritura y ejecución.
Los caracteres del octavo al décimo indican si otro tiene permisos de lectura, escritura y ejecución.

r: permiso de lectura (read), w: permiso de escritura (write), x: ejecutar (ejecutar).

Si tienes este permiso se mostrará la carta, si no tienes este permiso será -.

La posición de rwx ha sido fijada , por ejemplo: si hay permiso de lectura, la primera posición es r, de lo contrario es -. Casos como wrx y xwr no son posibles.

4. La cuarta cadena de caracteres en cada columna mostrada por el comando ll indica el espacio ocupado por el archivo y la unidad es byte.

5. La quinta cadena de caracteres en cada columna mostrada por el comando ll indica la última hora de modificación del archivo.

6. La sexta cadena de caracteres en cada columna mostrada por el comando ll representa el nombre del archivo.

Resumir:

Extensión 1: La encarnación específica de la autoridad

Extensión 2: Sin permiso correspondiente: Permiso denegado

Por ejemplo, sin permiso de ejecución:


3. Dos formas de modificar permisos en Linux

Ambos métodos utilizan el comando chmod. (comando chmod: modificar permisos).

1. Método 1:

chmod u/g/o +/- r/w/x nombre de archivo

(+ agrega permisos, - elimina permisos)

a.Modificar los permisos del propietario (u):

        chmod u +/- r/w/x nombre de archivo

Por ejemplo, elimine el permiso de lectura del propietario del archivo test.txt y agregue el permiso de ejecución al propietario:

(Para modificar varios permisos, sepárelos)

b.Modificar los permisos del grupo (g) al que pertenece:

        chmod g +/- r/w/x nombre de archivo

Por ejemplo, elimine el permiso de escritura del grupo al que pertenece y agregue permiso de ejecución al propietario:

c.Modificar los permisos de otro (o):

        chmod o +/- r/w/x nombre de archivo

Por ejemplo, elimine el permiso de lectura del grupo al que pertenece y agregue permiso de escritura al propietario:

d. Modificar los permisos para todas las identidades (a):

        chmod a +/- r/w/x nombre de archivo

Por ejemplo, elimine los permisos de ejecución de todas las identidades y agregue permisos de lectura a todas las identidades:

 Por ejemplo, elimine los permisos de lectura y escritura del propietario, agregue permisos de escritura al grupo al que pertenece y elimine los permisos de escritura de otros:

(Para modificar varios permisos, sepárelos).

Extensión 1: La encarnación específica de la autoridad

        cat está leyendo un archivo y requiere permiso de lectura.

        > La redirección de salida consiste en escribir un archivo, lo que requiere permiso de escritura.

        Ingrese la ruta del archivo y presione Entrar para ejecutar el archivo, lo que requiere permiso de ejecución.

Extensión 2: Permiso denegado (permiso denegado)

Cuando no haya permiso para realizar la operación correspondiente, se imprimirá el mensaje.

2. Método de modificación octal

chmod XXX nombre de archivo

Los permisos se pueden cambiar usando chmod y un número octal de tres dígitos.

p.ej. chmod 777 prueba.txt

Modifique los permisos para que todas las identidades del archivo file.tx tengan permisos de lectura, escritura y ejecución:

p.ej. chmod 664

Modifique el archivo para que lea y escriba para el propietario, lea y escriba para el grupo al que pertenece y solo lea para otros:

principio:

        Porque sí y no son exactamente dos estados, que pueden representarse mediante 0, 1 binario. Una identidad tiene tres permisos que deben juzgarse. Se puede usar un número binario de tres dígitos para indicar qué permisos tiene la identidad y un número binario de tres dígitos para indicar qué permisos tiene la identidad. Se puede usar un número binario de dígitos. Convertido a un número octal, hay tres identidades (propietario, grupo, otro) para representar los permisos, por lo que podemos usar un número octal de tres dígitos para representar los permisos de todas las identidades.

como:

111 indica que todas las identidades solo tienen permisos de ejecución.

777 indica que todas las identidades solo tienen permisos de lectura, escritura y ejecución.

000 significa que todas las identidades no tienen ningún permiso.


4. Cambiar el propietario y grupo del archivo.

Método 1: cambio forzado bajo el usuario root
(no se puede cambiar por la fuerza bajo usuarios normales)

1.ruta de nombre de usuario chown/nombre de archivo: cambia el propietario del archivo  al usuario especificado.

Al modificar el propietario del directorio, puede agregar la opción -R: procesamiento recursivo, todos los archivos y subdirectorios del directorio especificado se procesarán juntos.

2.chgrp nombre de usuario ruta/nombre de archivo: cambia el grupo del archivo al usuario especificado.

3.chown nombre de usuario : ruta del nombre de usuario/nombre de archivo: modifica el propietario y el grupo del archivo al usuario especificado.
(a chown le siguen dos usuarios (separados por: en el medio) para modificar el propietario y el grupo del archivo al usuario especificado al mismo tiempo).

Método 2: agregue sudo antes del comando para ejecutar el comando con nivel de privilegio de root

Para usar sudo, primero debe agregar el usuario actual a la lista de confianza. La adición de una lista de confianza debe ejecutarse bajo la identidad raíz.
Agregar usuarios a la lista de confianza no es el objetivo de este capítulo, por lo que no lo ampliaré aquí. Para los amigos que quieran saber más, consulte:

Para ejecutar este comando, también debe ingresar la contraseña del usuario que actualmente ejecuta el comando. La contraseña de un usuario que no es el propietario del archivo que desea modificar.

De esta manera, el propietario y el grupo del archivo se pueden modificar directamente sin cambiar al usuario root.

Tuo: ¿Por qué no hay ningún comando para cambiar directamente la identidad del usuario a otra?
Porque otros no están seguros.


5. Juicio de identidad

Cuando un usuario opera en un archivo, primero debe determinar la identidad del usuario con respecto al archivo:

Mire el nombre de usuario del usuario actual para determinar la identidad, ya sea el propietario o el grupo del archivo u otro

Solo se juzga una vez y primero se juzga al propietario, una vez que se lo juzga como propietario no será juzgado aunque pertenezca al grupo.

(Un usuario puede ser tanto propietario como grupo)


6. Máscara del sistema

1. Valor predeterminado de Linux:

Se crea un directorio con permisos iniciales a partir de 777;

Se crea un archivo normal con permisos iniciales a partir de 666.


2. ¿Pero por qué no es así cuando lo creamos?

Por ejemplo, observe los permisos del archivo recién creado.

Porque Linux realizará algunos cálculos a través de la máscara del sistema y obtendrá un nuevo permiso, que se convierte en el permiso del directorio y archivo creado. Entonces los permisos de los archivos/directorios que creamos no son 666/777.


3. La máscara del sistema predeterminada del sistema Linux es 0002. (Solo tome los últimos 3 dígitos al calcular)

Por ejemplo, utilice umask para ver la máscara del sistema:


4. Calcular la autoridad final

        Proceso de cálculo: autoridad final = autoridad inicial & (~máscara del sistema)

        Convierta el número octal de 3 dígitos del permiso y la máscara del sistema en un número binario de 9 dígitos (el número octal de la máscara del sistema tiene 4 dígitos, pero solo se usan los últimos 3 dígitos para el cálculo) y luego presione el botón 9- dígitos del número binario de la máscara del sistema a El bit se invierte y las dos cadenas de números binarios se hacen AND bit a bit para obtener la autoridad final.

Por ejemplo, el proceso de cálculo de permisos después de crear un directorio/archivo ordinario:

Entonces, la función de la máscara del sistema es que el sistema se utiliza para modificar los permisos iniciales del archivo/directorio recién creado para generar los permisos finales.


5. Utilice umask para modificar la máscara del sistema:

Por ejemplo, umask 0777: modifique la máscara del sistema a 0777:

Después de la máscara del sistema modificada, la máscara del sistema modificada se utiliza al calcular los permisos finales.

Por ejemplo, cree un archivo después de modificar la máscara del sistema a 0777:


7. Permisos necesarios para eliminar archivos.

Para los archivos que este usuario no puede leer, escribir ni ejecutar , podemos usar rm directamente para eliminarlos. ¿Significa esto que no se requieren permisos para eliminar un archivo?

Lo que sucede es porque: Eliminar un archivo o directorio no es el propietario y el grupo del archivo, sino el directorio donde se encuentra el archivo. Eliminar un archivo/directorio en el directorio requiere el derecho de escribir en el directorio.

Resumen: Entonces, si un archivo/directorio se puede eliminar depende de si el usuario tiene permiso de escritura en el directorio de nivel superior del archivo/directorio.

Entonces un usuario puede eliminar los archivos de otro usuario en un directorio público. (Establezca el directorio público: establezca el permiso de otros en el directorio en rwx)

Por ejemplo, un usuario elimina el archivo de otro usuario en un directorio público:


Ocho, poco pegajoso

0. Importación de problemas

Cuando todos los usuarios comparten un directorio y tienen permisos de lectura, escritura y ejecución en el directorio, ¿se puede hacer?

        a. Varios usuarios comparten un directorio y pueden leer, escribir, crear y ejecutar archivos en este directorio.
        b. Pero sólo puedes eliminar tus propios archivos, pero no los archivos de otros usuarios.

¿Se puede lograr esto eliminando el permiso de escritura (w)?

        No, porque se elimina el permiso de escritura del directorio, aunque los archivos del directorio no se pueden eliminar, al mismo tiempo no podemos crear archivos en el directorio.

En este momento vamos a utilizar un nuevo permiso: el bit adhesivo.

extensión: crear directorio público

        El directorio público debe crearse en el directorio raíz (/) y los permisos del otro directorio creado se han cambiado a rwx para completar la creación del directorio público.

1. El concepto de trozos pegajosos

        El bit adhesivo también es un tipo de permiso como r/w/x (lectura/escritura/ejecución), que es un indicador de permiso del sistema, representado por el símbolo t.

        Establecer t (bit fijo) en otro en el directorio puede hacer posible que varios usuarios lean, escriban, creen y eliminen sus propios archivos cuando trabajan en el mismo directorio, pero no pueden eliminar archivos de otros usuarios.

2. Configure el bit adhesivo: chmod +t mytemp

Por ejemplo, establezca el permiso del bit adhesivo para el directorio público:

Por ejemplo, uso de puntas adhesivas: 

Nota:

        Es un caso especial de permiso x, lo que significa que se puede acceder a él pero no eliminarlo.

        Solo se puede configurar para el directorio, y no es necesario especificar un usuario al configurar la configuración, y está configurado en otro de forma predeterminada.

        El bit adhesivo generalmente lo establece quien puede cancelarlo (root).

        El bit adhesivo es útil cuando varios usuarios trabajan en el mismo directorio.

        No se preocupe si otros usuarios pueden eliminar archivos en su propio directorio, porque un usuario no tiene ningún permiso en los directorios de inicio de otros usuarios y no puede realizar ninguna operación.


extensión, problemas de permisos comunes

Supongo que te gusta

Origin blog.csdn.net/look_outs/article/details/129477685
Recomendado
Clasificación