Ejecución de comandos en SUSE - Lentitud y sistema congelado

96 0 0 0

Cuando se ejecuta el comando, la respuesta de la línea de comandos es lenta y el resultado del comando se imprime durante mucho tiempo, e incluso la tarjeta se congela.


[Escenario 1] Todos los usuarios ejecutan comandos lentamente

[Razón posible]:

--------------------------------

1. Hay demasiados archivos pequeños en el directorio / var /, y el inodo está agotado, lo que hace que se bloquee una gran cantidad de procesos de tareas programadas.

[Método de verificación]: ejecute df -i para verificar la ocupación del inodo; ps -efl Ver el proceso.

Ejecute el comando df -i para encontrar que / var ocupa el 100%. La solución de problemas adicional reveló que hay un gran número de archivos pequeños en el directorio / var / spool / postfix / maildrop.

[Análisis de causa]: como linux ejecuta cron, la información de salida y advertencia generada por la ejecución de cron se enviará al propietario de cron por correo electrónico. Si el servidor cierra el servicio de postfix, el correo no se enviará correctamente y todo se almacenará como archivos pequeños. En el directorio maildrop. Si sendmail o postfix se ejecutan normalmente, se almacenará una gran cantidad de correo en el directorio / var / mail.

 

[Solución alternativa]: 1. Verifique si / var / está lleno y ha ocasionado que el proceso se acumule.

Ejecute el siguiente comando para verificar si existe una gran cantidad de procesos:

Ps -efl | grep cron

Ps -elf | grep mail

Ps -efl | grep post

Ps -elf | grep enviar

Utilice el siguiente comando para matar estos procesos.

Ps -elf | grep cron | grep -v grep | awk '{print $ 4}' | xargs kill -9

Ps -elf | grep sendmail | grep -v grep | awk '{print $ 4}' | xargs kill -9

Ps -elf | grep postdrop | grep -v grep | awk '{print $ 4}' | xargs kill -9

 

Nota: al finalizar el proceso posterior a la gota, ya que el proceso se encuentra en el estado D, el proceso tardará un tiempo en salir.

2. Eliminar archivos

Cd / var / spool / postfix / maildrop

Pwd # Asegúrese de haber ingresado al directorio / var / spool / postfix / maildrop

Ls | xargs rm -n 10 -rf

3. Modificar la configuración de mailto.

Use el comando vi para editar los archivos de configuración cron para todos los usuarios en los directorios / etc / crontab y / var / spool / cron / tabs (esta es la tarea programada para todos los usuarios, y el nombre del archivo es el nombre de usuario).

Reemplace MAILTO = raíz con MAILTO = "". Si no hay MAILTO = root, agregue MAILTO = "" a la primera línea del archivo de configuración.

4. Reinicie la tarea programada

Rccron restart # Diferentes sistemas operativos pueden reiniciar el comando no es el mismo, aquí está suse, otros sistemas bajo Baidu

--------------------------------

 

2. Existe un servidor de resolución de nombres de dominio anormal en /etc/resolv.conf

 

[Método de verificación]: cat /etc/resolv.conf | grep -v "#"

Compruebe si la configuración del servidor de nombres está vacía.

[Solución alternativa]: si no está vacío, puede volver a intentar el contenido en /etc/resolv.conf e intentarlo de nuevo.

--------------------------------

3. Recursos de comando insuficientes

[Método de verificación]: ejecute el comando superior para observar la CPU y el uso interno.

[Solución alternativa]: si encuentra un proceso que usa muchos recursos, ejecute kill -9 PID para eliminarlo;

Si el recurso está agotado y no se puede resolver, se recomienda activar el kdump para reiniciar la placa tan pronto como sea posible.

 

[Escenario 2] Un solo usuario en el sistema ejecuta el comando lentamente


[Causa posible]: 1. El archivo .history en el directorio de inicio del usuario es demasiado grande.

[Método de verificación]: cd al directorio de inicio, ejecute ls -al check .history file size

[Solución alternativa]: si el archivo es demasiado grande, ejecute echo ""> .history

 

Para vaciar el archivo

También puede realizar una tarea programada y limpiar este archivo regularmente.

 

[Escenario 3] El usuario es lento cuando ejecuta un comando

 

Fenómeno común 1: ejecute el comando df para detener o ejecutar ls atascado en un directorio de montaje nfs.

Causa posible: la red entre el cliente nfs y el servidor nfs se desconecta, lo que hace que el comando df se bloquee al acceder al directorio de montaje de nfs o al directorio de montaje de nfs.

Solución: Ejecute cat / proc / mounts para verificar el punto de montaje de nfs mount_point; ejecute umount mount_point.

--------------------------------

Fenómeno común 2: hay demasiados archivos pequeños en el directorio / var / spool / postfix / maildrop.

Referencia de la solución [Escenario 1]

---------------------

Autor: beihan0072010

Fuente: CSDN

Original: https://blog.csdn.net/zhongru0072010/article/details/50668473

Declaración de derechos de autor: este artículo es el artículo original del blogger, por favor adjunte el enlace de la publicación del blog.


  • x
  • convención:

Responder

Responder
Debe iniciar sesión para responder la publicación Inicio de sesi | Registrarse

Aviso: Para garantizar sus legítimos derechos e intereses, la comunidad y los terceros no publicarán contenido que pueda generar riesgos legales a las partes, por ejemplo, pornografía, contenido político, contenido sobre juego, consumo y tráfico de drogas, así como contenido que viole los derechos de propiedad intelectual de terceros, por ejemplo, secretos comerciales, marcas, derechos de autor, patentes y privacidad personal. No comparta su cuenta ni su contraseña con terceros. Todas las operaciones realizadas usando su cuenta se considerarán como sus acciones y todas las consecuencias que estas acciones generen serán responsabilidad suya. Para obtener información detallada, consulte la “ Política de privacidad.”
Si el botón para adjuntar no está disponible, actualice Adobe Flash Player con la versión más reciente

¡Ingresa y disfruta de todos los beneficios para los miembros!

Aterrizaje
Respuesta rápida Desplácese hasta arriba