GNU/Linux >> Tutoriales Linux >  >> Linux

Administre el directorio Linux /tmp como un jefe

A mano alzada, ¿a cuántos de ustedes les gustaría reiniciar sus servidores? No veo ninguna mano.

Los largos tiempos de actividad son impresionantes, ¿no es así? Lo convierte en uno de los chicos geniales que alardea de su tiempo de actividad de 853 días en un sistema de producción. Lo que no es tan bueno es que a tus usuarios les gusta usar /tmp como su vertedero personal sin tener en cuenta la salud general del sistema o su derecho a fanfarronear sobre el tiempo de actividad. Y reiniciar no elimina los archivos del usuario, solo los del sistema; incluso ese alivio es temporal hasta que los servicios se reinician y los usuarios abren las aplicaciones.

Nota: Una excepción para no eliminar los archivos temporales del usuario después de un reinicio es habilitar tmp.mount , pero ese es un tema para otro artículo. Además, existen secuencias de comandos de limpieza del sistema para RHEL 7 y versiones posteriores.

Es imposible obligar a los usuarios a cumplir con la política de eliminación de archivos del /tmp directorio de manera oportuna. Entonces, ¿qué debe hacer un administrador de sistemas frustrado cuando tiene docenas, cientos o incluso miles de /tmp? directorios y usuarios a tratar? La respuesta es implementar secuencias de comandos de mantenimiento de archivos de usuario.

Puede crear secuencias de comandos de limpieza y colocarlas en crontab para eliminar periódicamente archivos de usuario de /tmp directorio. Es un servicio desafortunado pero necesario para proporcionar a sus usuarios. La mayoría de los administradores de sistemas experimentados le dirán que no debe eliminar archivos de /tmp Sin embargo, a menos que sepa que no se están utilizando. Ese es un buen consejo. Algunos servicios escriben archivos de bloqueo en /tmp , algunas aplicaciones lo usan y los usuarios lo usan. Entonces, ¿cómo determina qué archivos puede barrer su secuencia de comandos de limpieza sin ningún problema?

[ Descarga gratuita:hoja de referencia de comandos avanzados de Linux. ]

¿Qué hay de filtrar archivos por la última vez que se accedió? Es una buena opción si tiene un límite de tiempo para los archivos que quedan en /tmp . Por ejemplo, si advierte a sus usuarios que los archivos quedan en el /tmp El directorio se eliminará si no se ha accedido a ellos en dos días, de forma continua, deben tomar nota. El uso de la última hora de acceso para los archivos de usuario resuelve el problema si también excluye los archivos que pertenecen al usuario raíz. Por ejemplo, utilice:

find /tmp -type f \( ! -user root \) -atime +2

Este script muestra todos los archivos en /tmp directorio que no es propiedad de root al que se accedió hace más de dos días. Ahora para agregar el interruptor de eliminación del comando:

find /tmp -type f \( ! -user root \) -atime +2 -delete

Copie ese texto en un archivo, hágalo ejecutable y cree un crontab entrada que ejecuta este script cada ocho horas. Por ejemplo, puede agregar esto a su crontab :

* */8 * * * /opt/scripts/tmp.clean.sh

Este script y programación aseguran que su /tmp directorio se mantiene relativamente libre de basura. Sin embargo, no es infalible. Si un usuario decide volcar una gran cantidad de datos en /tmp directorio, esta acción puede causar otros problemas, como no poder iniciar sesión en el sistema a través de SSH.

Mantenimiento del /tmp directorio no es fácil. A los usuarios les encanta volcar archivos en /tmp y dejarlos allí indefinidamente. Afortunadamente, para los infractores reincidentes, siempre existe la posibilidad de bloquear su cuenta o enviar un correo electrónico redactado enérgicamente sobre la pérdida de acceso a un sistema hasta que el administrador aclare el asunto. Estas tácticas suelen captar la atención del usuario y es raro que se cometan más delitos.


Linux
  1. ¿Cómo maneja Linux múltiples separadores de rutas consecutivas (/home////username///file)?

  2. Comprender el directorio /etc/skel en Linux

  3. ¿Dónde está el directorio temporal en Linux?

  4. ¿Cuál es la diferencia entre /tmp y /run?

  5. Cómo cambiar el valor predeterminado /tmp a /home/user/tmp

Directorio tmp de Linux:todo lo que necesita saber

Cómo encontrar el tamaño de un directorio en Linux

La forma correcta de editar archivos /etc/passwd y /etc/group en Linux

Principiantes de Linux:administre archivos usando la terminal en CentOS 8

Comprender los archivos /proc/mounts, /etc/mtab y /proc/partitions

Todo lo que necesita saber sobre el directorio /tmp de Linux