GNU/Linux >> Tutoriales Linux >  >> Debian

Debian – ¿Forzar E2fsck en /var en cada arranque?

Trabajando con una máquina basada en Debian sin ventilador. Todos los sistemas de archivos están en una tarjeta SD.

El /var la partición es una entrada ext2 fs separada en /etc/fstab .

El sistema no tiene un interruptor de "encendido/apagado", por lo que la gente tiende a tirar del enchufe para encenderlo. Esto lleva a la corrupción en el /var partición.

Quiero forzar al sistema a ejecutar e2fsck en cada arranque.

Lo que he probado:

  1. No monte /var en el arranque. Agregar secuencia de comandos en /etc/rc2.d para ejecutar e2fsck y luego montar la unidad.
    Problema:Esto me da un sistema que piensa que está atascado en el nivel de ejecución 6. Ver aquí.

  2. Usa tune2fs para establecer el ciclo fsck en un solo montaje.
    Problema:el sistema a menudo se bloquea durante el arranque y observa que /var ya está montado y cae al shell de mantenimiento.

  3. Establecer sexto bit en /etc/fstab a 2. Ejecute touch /forcefsck .
    Problema:ninguno/ambos tienen ningún efecto perceptible. El disco no está marcado.

  4. Agregar noauto a /etc/fstab (vea el n.° 1 anterior).
    Problema:el sistema aún monta la partición, por lo que aún aparece un mensaje de error.

¿Sugerencia(s) sobre otras cosas para probar?

EDITAR:

Algunos antecedentes:

  1. Tenemos más de 150 de estos sistemas implementados en ubicaciones remotas
  2. Los sistemas en cuestión no tienen interruptores de encendido/apagado
  3. Los sistemas a menudo (erróneamente) se conectan a fuentes de alimentación conmutadas (interruptores de pared u otros)
  4. La pérdida de energía en la ubicación en cuestión no es infrecuente

Respuesta aceptada:

Esta pregunta ya ha sido respondida:

¿Cómo forzar fsck en cada arranque, en todos los sistemas de archivos (relevantes)?

Nadie señaló allí que el verdadero problema es que la gente tira del cable. Creo seriamente que el enfoque en AMBAS preguntas está mal; Debe solucionar su problema de usuario, no el problema del sistema de archivos del servidor.

Honestamente, dado lo crucial que es este sistema de archivos para la funcionalidad básica de la máquina, su mejor opción es dejar de pensar en este problema como un administrador de sistemas y comenzar a pensar en él como un gerente.

En otras palabras:

  • Enseñe a sus usuarios cómo reiniciar correctamente este sistema para evitar el problema de corrupción de /var, para empezar. La documentación es tu amiga como dicen. Esta no es una solución ideal por múltiples razones, pero al menos les impide freír los sistemas de archivos. Por lo menos, no deberían tocar la maldita cosa en absoluto si es tu trabajo mantenerla en funcionamiento.
  • Enciérralo donde no puedan alcanzarlo. En serio, si este es un servidor que almacena datos importantes, ¿por qué no es así? ¿Es este un sistema de desarrollo y los desarrolladores simplemente no saben lo que están haciendo o cuán dañino puede ser? Si es así, de nuevo, enséñales. No es tu trabajo arreglar estupideces, es tu trabajo prevenir estupideces.
  • Dígales que lo dejen en paz y que vengan a hablar con usted si hay problemas. 🙂
  • Baja tecnología, pero posiblemente útil (aunque sin duda un riesgo de incendio):Cubra con cinta adhesiva los dos extremos del cable de alimentación para que tengan que pasar 15 minutos tratando de despegarlo. Con suerte, después de cinco minutos y en la capa 26 de la cinta, se sentirán frustrados y harán lo que se supone que deben hacer:hablar con usted para solucionar el problema real que los está motivando a desconectarse en primer lugar.
Relacionado:Debian:¿Qué tan fluido es actualizar el kernel de Linux en Debian 8.5?

¿Qué tiene esta máquina que la hace tan inestable que creen que es necesario reiniciarla? Es un sistema Debian. No necesitan "reinicios", entonces, ¿qué más tiene de malo? ¿Están preocupados por el consumo de energía o hay servicios que están rotos e inestables que solo un reinicio puede resolver? Si es lo último, entonces su pregunta es irrelevante y tiene otro trabajo que hacer, lamento decirlo.

Por lo menos, podría abordar su sugerencia para ser bueno y no reiniciar tirando del cable como un ejercicio de conservación de energía. ¿Realmente desea levantarse de su escritorio para tirar de un cable de alimentación en lugar de simplemente sentarse allí, iniciar sesión y reiniciarlo en la línea de comando? Se necesitan como 2 segundos de trabajo para hacerlo de esa manera, en lugar de levantarse, refunfuñar todo el tiempo hasta llegar al dispositivo, tirar del cable, volver a enchufarlo, esperar a que vuelva a romperse y luego tener que espere aún más para que /var sea fscked.

El ciclo automático get up-yank cable-wait for /var to fix it toma mucho más tiempo, es mucho más complejo de mantener a largo plazo, causará todo tipo de dolor de su parte, ya lo ha motivado a hacer las preguntas equivocadas , y finalmente te llevará a lo alto de un campanario con un arma de amor y un deseo de muerte.

Arréglalo bien, arreglando a tus usuarios o mitigando el daño haciendo que sea extremadamente difícil para ellos lograr cosas estúpidas. No puedo ser más claro sobre la importancia de esto.


Debian
  1. Configuración de un servidor y cliente NFS en Debian Wheezy

  2. Debian – ¿Mover /var, /home a una partición separada?

  3. Cómo systemd-tmpfiles limpia /tmp/ o /var/tmp (reemplazo de tmpwatch) en CentOS/RHEL 7

  4. ¿Cuándo debo usar /dev/shm/ y cuándo debo usar /tmp/?

  5. Cambiar el tamaño de la partición de arranque

Bind-Chroot-Howto (Debian)

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

Debian – ¿No se puede crear un usuario Sftp Debian 7?

¿Deberían vivir los sitios web en /var/ o /usr/ según el uso recomendado?

¿Por qué me falta /var/run/sshd después de cada arranque?

Los registros del sistema están vacíos (/var/log/messages; /var/log/secure; etc.)