A brief introduction to Linux | Part VI : Atributos.

Iniciado por TerminusRoot, Noviembre 01, 2019, 04:16:27 PM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

Hola, esta es la Sexta parte de A brief introduction to Linux.

Puede recapitular los otros post aqui abajito.

Parte I   : No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Parte II  : No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Parte III : No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Parte IV  : No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Parte V   : No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Parte VI  : No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

Atributos de control


El establecimiento de atributos de archivo controla quién puede eliminar, modificar, renombrar o comprimir un archivo. Con los atributos adecuados establecidos, incluso los usuarios root pueden evitar modificar un archivo.

touch file1
ls



Atributos de control comunes:

an (append): El archivo solo se puede agregar
A: Evita la actualización del tiempo de acceso
c (comprimido): El archivo se comprime automáticamente en el disco
D - Los cambios en un directorio se escriben sincrónicamente en el disco
e (formato de extensión): Los archivos usan extensiones para asignar los bloques en el disco
I (inmutable): El archivo no se puede cambiar, renombrar ni eliminar
S (sincrónico): Los cambios en un archivo se escriben sincrónicamente en el disco

I. Atributos de archivo

Se utilizan dos comandos,lsattr y chattr, para administrar los atributos. El comando lsattr enumera los atributos. Mientras el chattr los cambia. Comencemos con el comando lsattr. Enumere los atributos actuales para file1 utilizando el comando lsattr:

lsattr file1



El archivo no debe tener ningún atributo de control. Cuando se crea un archivo, este es el comportamiento predeterminado.

A continuación, usemos el comando chattr. En el paso anterior aprendimos que file1 no tenía atributos de control. Agregue el atributo append al archivo1. Esto solo permitirá agregar el archivo(no reemplazar el contenido).

sudo chattr +a file1

Como puede ver, se requieren privilegios de root para realizar este cambio.Verifique que los permisos hayan

cambiado como se esperaba:

lsattr file1



El atributo a (append) ahora está configurado en el archivo. El signo + agrega atributos mientras que el signo elimina el atributo

Intente copiar el contenido del archivo  /etc/fstab a file1. Si nuestros atributos son correctos, esto debería crear un error.

Ejecute el comando:

cat /etc/fstab >file1



Podemos ver que se genera el error "Operación no permitida". Esto se debe a que solo podemos agregar contenido a file1

intentemos agregar contenido a  file1. Usar >> en lugar de > y esto agregará un contenido al archivo.

Ejecutar:

cat /etc/fstab >>file1

Verifique que el archivo se haya agregado.

cat file1



Debería ver que file1 ahora tiene texto dentro.

Agreguemos el indicador inmutable file1 para evitar que se elimine o modifique.

sudo chattr +i file1
lsattr file1




File1 ahora tiene la bandera(flag) inmutable (i). También debería ver el atributo append de los pasos anteriores.

Verifiquemos que el atributo inmutable funcionó al intentar eliminar file1

rm file1

No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

Presione y y observe que se produce un error y que el archivo no se eliminó

Elimine ambos atributos de file1 utilizando la opción -.

sudo chattr -ia file1
lsattr file1



Los atributos ahora deben eliminarse.

II.Find

El sistema tendrá cientos de miles de archivos. El comando find puede ayudarlo a buscar archivos de manera efectiva y eficiente. El comando find busca recursivamente el árbol de directorios. Una vez que se encuentra el archivo, puede ser redirigido o actuar sobre el archivo encontrado.

La búsqueda se puede adaptar para buscar archivos en función de una serie de criterios. Los criterios de búsqueda pueden incluir nombre de archivo, propiedad, grupo propietario, permisos, número de inodo, último acceso, tiempo de modificación, tamaño y tipo.

El comportamiento predeterminado es imprimir la ubicación del directorio donde se encontró un archivo.

Probémoslo:

find . -name file1 -print

No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

La opción -print es opcional pero se usa por defecto si no se especifica otra opción.


Probemos una búsqueda basada en criterios específicos. Busque /dev para archivos y directorios que comiencen con la letra b o B. Usando la opción -iname podemos realizar una búsqueda que no distingue entre mayúsculas y minúsculas. El * es un comodín que coincide con cualquier caracter.

find /dev -iname b *




Intentemos buscar archivos que tengan menos de 2 MB de tamaño en nuestro directorio de inicio.

Ejecute el siguiente comando:


file ~ -size -2M




El carácter ~ indica al comando find que busque el directorio de inicio. La opción -size le dice al comando que queremos proporcionar un tamaño. El -2M le dice al comando que estamos buscando archivos de menos de -2 MB. Si tuviéramos que usar + 2M, el comando de archivo buscará archivos de más de 2 MB.
Debería ver cinco directorios que comienzan con la letra b o B en el directorio /dev.

A continuación, buscaremos archivos en función de su antigüedad. Buscaremos en función de cuántos días han pasado desde que se creó el archivo. Intente encontrar archivos en el directorio /etc que se modificaron hace más de 2000 días.

Ejecute el siguiente comando:



La opción -mtime le dice al comando find que estamos buscando en función de los días desde su creación. El +2000 le dice al comando que estamos buscando un archivo de más de 2000 días.

Una búsqueda basada en permisos de archivos podría resultar conveniente. Busque en el directorio /dev archivos con permisos establecidos en 666.

Ejecute el comando: find / dev -type c -perm 666



Debería notar 9 archivos con estos permisos


E.O.F