<Precedenti | Contenuti | Succ.>
D.8. /etc/rc.d/init.d/checkfs
# / Bin / sh
################################################# ######################
# Inizia i controlli
#
# Descrizione: controllo del file system
#
# Autori: Gerard Beekmans - [email protected]
# A. Luebke - [email protected]
#DJLucas- [email protected]
# Aggiornamento: Bruce Dubbs - [email protected]
#
# Versione: LFS 7.0
#
# Basato sullo script checkfs di LFS-3.1 e precedenti.
#
# Da uomo fsck
# 0 - Nessun errore
# 1 - Errori del file system corretti
# 2 - Il sistema dovrebbe essere riavviato
#4 - Errori del file system non corretti
# 8 - Errore operativo
# 16 - Errore di utilizzo o di sintassi
# 32 - Fsck annullato su richiesta dell'utente
# 128 - Errore libreria condivisa
#
################################################# #######################
### INIZIA INIZ. INFO
# Fornisce: checkfs
# Richiesto-Start: udev swap $time
# Dovrebbe iniziare:
# Richiesto-Stop:
# Dovrebbe-Stop:
# Avvio predefinito: S
# Arresto predefinito:
# Descrizione breve: controlla i filesystem locali prima del montaggio.
# Descrizione: controlla i filesystem locali prima del montaggio.
# X-LFS-Fornito-Da: LFS
### FINE INFO INIZ
. /lib/lsb/init-functions case "${1}" in
inizio)
if [ -f /fastboot ]; quindi msg="/fastboot trovato, ometterà "
msg="${msg} il file system verifica come richiesto.\n" log_info_msg "${msg}"
esci da 0
fi
log_info_msg "Montaggio del file system root in modalità di sola lettura..." mount -n -o remount,ro / >/dev/null
if [ ${?} != 0 ]; poi log_failure_msg2 msg="\n\nImpossibile controllare root "
msg="${msg}filesystem perché non può essere montato " msg="${msg}in modalità di sola lettura.\n\n"
msg="${msg}Dopo aver premuto Invio, questo sistema verrà " msg="${msg}fermato e spento.\n\n"
log_failure_msg "${msg}"
log_info_msg "Premi Invio per continuare..." wait_for_user
/etc/rc.d/init.d/halt ferma altro
log_success_msg2
fi
if [ -f /forcefsck ]; poi msg="/forcefsck trovato, forzando il file"
msg="${msg} il sistema controlla come richiesto." log_success_msg "$msg"
options="-f" altrimenti
opzioni=""
fi
log_info_msg "Controllo dei file system..."
# Nota: l'opzione -a era -p; ma questo fallisce ad esempio su fsck.minix if is_true "$VERBOSE_FSCK"; poi
fsck ${opzioni} -a -A -C -T altro
fsck ${opzioni} -a -A -C -T >/dev/null
fi errore_valore=${?}
if [ "${valore_errore}" = 0 ]; quindi log_success_msg2
fi
if [ "${valore_errore}" = 1 ]; then msg="\nATTENZIONE:\n\nErrori di file system " msg="${msg}sono stati trovati e sono stati corretti.\n" msg="${msg} Potresti voler ricontrollare che " msg=" ${msg}tutto è stato corretto correttamente." log_warning_msg "$msg"
fi
if [ "${valore_errore}" = 2 -o "${valore_errore}" = 3 ]; then msg="\nATTENZIONE:\n\nErrori di file system " msg="${msg}sono stati trovati e sono stati " msg="${msg}corretti, ma la natura del "
msg="${msg}gli errori richiedono il riavvio del sistema.\n\n" msg="${msg}Dopo aver premuto invio, "
msg="${msg}questo sistema verrà riavviato\n\n" log_failure_msg "$msg"
log_info_msg "Premi Invio per continuare..." wait_for_user
riavviare -f
fi
if [ "${valore_errore}" -gt 3 -a "${valore_errore}" -lt 16 ]; then msg="\nFAILURE:\n\nErrori di file system "
msg="${msg}sono stati rilevati che non possono essere " msg="${msg}riparati automaticamente.\nQuesto sistema " msg="${msg}non può continuare ad avviarsi e quindi " msg="${msg} essere interrotto fino a quando questi " msg="${msg}errori non vengono corretti manualmente da un " msg="${msg}amministratore di sistema.\n\n"
msg="${msg}Dopo aver premuto Invio, questo sistema verrà " msg="${msg}fermato e spento.\n\n"
log_failure_msg "$msg"
log_info_msg "Premi Invio per continuare..." wait_for_user
/etc/rc.d/init.d/halt stop
fi
if [ "${valore_errore}" -ge 16 ]; then msg="FAILURE:\n\nErrore imprevisto " msg="${msg}esecuzione di fsck. Uscita con errore " msg="${msg} codice: ${error_value}.\n" log_info_msg $msg
esci ${error_value}
fi
*)
che C
esci da 0
;;
echo "Utilizzo: ${0} {inizio}" exit 1
;;
# Fine controlli