<Anterior | Contenido | Siguiente>
D.8. /etc/rc.d/init.d/checkfs
#! / Bin / sh
############################################### ######################
# Comenzar checkfs
#
# Descripción: Verificación del sistema de archivos
#
# Autores : Gerard Beekmans - [email protected]
# A. Lübke - [email protected]
#DJLucas- [email protected]
# Actualización: Bruce Dubbs - [email protected]
#
# Versión: LFS 7.0
#
# Basado en el script checkfs de LFS-3.1 y versiones anteriores.
#
# De man fsck
# 0 - Sin errores
# 1 - Errores del sistema de archivos corregidos
# 2 - El sistema debe reiniciarse
# 4 - Errores del sistema de archivos que no se corrigen
# 8 - Error operativo
# 16 - Error de uso o sintaxis
# 32 - Fsck cancelado por solicitud del usuario
# 128 - Error de biblioteca compartida
#
############################################################################################################################################################################################################################################################################################ #######################
### COMENZAR INFORMACIÓN INICIAL
# Proporciona: checkfs
# Required-Start: udev swap $ time
# Debería empezar:
# Parada requerida:
# Debería detenerse:
# Inicio predeterminado: S
# Detención predeterminada:
# Descripción breve: comprueba los sistemas de archivos locales antes del montaje.
# Descripción: Comprueba los sistemas de archivos locales antes de montar.
# X-LFS-proporcionado-por: LFS
### FIN INIT INFO
. / lib / lsb / init-functions caso "$ {1}" en
inicio)
si [-f / fastboot]; luego msg = "/ fastboot encontrado, omitirá"
msg = "$ {msg} el sistema de archivos verifica según lo solicitado. \ n" log_info_msg "$ {msg}"
salir de 0
fi
log_info_msg "Montaje del sistema de archivos raíz en modo de solo lectura ..." mount -n -o remount, ro /> / dev / null
si [$ {?}! = 0]; luego log_failure_msg2 msg = "\ n \ nNo se puede verificar la raíz"
msg = "$ {msg} sistema de archivos porque no se pudo montar" msg = "$ {msg} en modo de solo lectura. \ n \ n"
msg = "$ {msg} Después de presionar Enter, este sistema será" msg = "$ {msg} detenido y apagado. \ n \ n"
log_failure_msg "$ {msg}"
log_info_msg "Presione Enter para continuar ..." wait_for_user
/etc/rc.d/init.d/halt detener otra cosa
log_success_msg2
fi
si [-f / forcefsck]; luego msg = "/ forcefsck encontrado, forzando el archivo"
msg = "$ {msg} comprobaciones del sistema según lo solicitado". log_success_msg "$ msg"
opciones = "- f" más
opciones = ""
fi
log_info_msg "Comprobando sistemas de archivos ..."
# Nota: -una opción solía ser -p; pero esto falla, por ejemplo, en fsck.minix si es_verdadero "$ VERBOSE_FSCK"; luego
fsck $ {opciones} -a -A -C -T más
fsck $ {opciones} -a -A -C -T> / dev / null
fi valor_error = $ {?}
if ["$ {error_value}" = 0]; luego log_success_msg2
fi
if ["$ {error_value}" = 1]; luego msg = "\ nADVERTENCIA: \ n \ nErrores del sistema de archivos" msg = "$ {msg} se encontraron y se han corregido. \ n" msg = "$ {msg} Es posible que desee volver a verificar que" msg = " $ {msg} todo se arregló correctamente ". log_warning_msg "$ msg"
fi
if ["$ {error_value}" = 2 -o "$ {error_value}" = 3]; luego msg = "\ nADVERTENCIA: \ n \ nSe encontraron errores del sistema de archivos" msg = "$ {msg} y se" msg = "$ {msg} se corrigieron, pero la naturaleza del"
msg = "Los errores de $ {msg} requieren que se reinicie este sistema. \ n \ n" msg = "$ {msg} Después de presionar enter,"
msg = "$ {msg} este sistema se reiniciará \ n \ n" log_failure_msg "$ msg"
log_info_msg "Presione Enter para continuar ..." wait_for_user
reiniciar -f
fi
if ["$ {error_value}" -gt 3 -a "$ {error_value}" -lt 16]; luego msg = "\ nFALLO: \ n \ nErrores del sistema de archivos"
msg = "$ {msg} se encontraron que" msg = "$ {msg} no se pudieron arreglar automáticamente. \ nEste sistema" msg = "$ {msg} no puede continuar arrancando y" msg = "$ {msg} por lo tanto se detendrá hasta que esos errores "msg =" $ {msg} sean corregidos manualmente por un administrador del sistema "msg =" $ {msg}. \ n \ n "
msg = "$ {msg} Después de presionar Enter, este sistema será" msg = "$ {msg} detenido y apagado. \ n \ n"
log_failure_msg "$ msg"
log_info_msg "Presione Enter para continuar ..." wait_for_user
/etc/rc.d/init.d/detener parada
fi
if ["$ {error_value}" -ge 16]; luego msg = "FALLO: \ n \ nFallo inesperado" msg = "$ {msg} ejecutando fsck. Salió con el error" msg = "$ {msg} código: $ {error_value}. \ n" log_info_msg $ msg
salir $ {error_value}
fi
*)
esac
salir de 0
;;
echo "Uso: $ {0} {start}" salida 1
;;
# Fin checkfs