OnWorks Linux ແລະ Windows Online WorkStations

Logo

ໂຮດຕິ້ງອອນໄລນ໌ຟຣີສໍາລັບ WorkStations

<Previous | ເນື້ອໃນ | ຕໍ່ໄປ>

D.8. /etc/rc.d/init.d/checkfs


ຮູບພາບເລັກນ້ອຍ

#! / bin / sh

################################################ ######################

# ເລີ່ມຕົ້ນການກວດສອບ

#

# ລາຍລະອຽດ : ກວດສອບລະບົບໄຟລ໌

#

# ຜູ້ຂຽນ : Gerard Beekmans - [email protected]

# ອ.ລືເບ - [email protected]

# DJ Lucas - [email protected]

# ອັບເດດ: Bruce Dubbs - [email protected]

#

# ລຸ້ນ : LFS 7.0

#

# ອີງໃສ່ checkfs script ຈາກ LFS-3.1 ແລະກ່ອນຫນ້ານັ້ນ.

#

# ຈາກຜູ້ຊາຍ fsck

# 0 - ບໍ່ມີຂໍ້ຜິດພາດ

# 1 - ແກ້ໄຂຂໍ້ຜິດພາດຂອງລະບົບໄຟລ໌

# 2 - ລະບົບຄວນຈະ rebooted

# 4 - ຄວາມຜິດພາດລະບົບໄຟລ໌ປະໄວ້ uncorrected

# 8 - ການເຮັດວຽກຜິດພາດ

# 16 - ການນໍາໃຊ້ຫຼື syntax ຜິດພາດ

# 32 - Fsck ຖືກຍົກເລີກໂດຍການຮ້ອງຂໍຂອງຜູ້ໃຊ້

# 128 - ຄວາມຜິດພາດໃນຫ້ອງສະໝຸດທີ່ແບ່ງປັນ

#

############################################### #######################


### ເຂົ້າຮ່ວມຂໍ້ມູນ

# ສະໜອງ: checkfs

# Required-Start: udev swap $time

# ຄວນເລີ່ມຕົ້ນ:

# ຕ້ອງຢຸດ:

# ຄວນຢຸດ:

# Default-Start: S

# ການຢຸດເລີ່ມຕົ້ນ:

# ຄໍາອະທິບາຍສັ້ນ: ກວດເບິ່ງລະບົບໄຟລ໌ທ້ອງຖິ່ນກ່ອນທີ່ຈະຕິດຕັ້ງ.

# ລາຍລະອຽດ: ກວດເບິ່ງລະບົບໄຟລ໌ທ້ອງຖິ່ນກ່ອນທີ່ຈະຕິດຕັ້ງ.

# X-LFS-Provided-By: LFS

### ສິ້ນສຸດຂໍ້ມູນພາຍໃນ

. /lib/lsb/init-functions case "${1}" ໃນ

ເລີ່ມຕົ້ນ)

ຮູບພາບເລັກນ້ອຍ


ຖ້າ [ -f /fastboot ]; ຫຼັງຈາກນັ້ນ, msg="/fastboot ພົບ, ຈະຍົກເລີກ"

msg="${msg} ກວດສອບລະບົບໄຟລ໌ຕາມທີ່ຮ້ອງຂໍ.\n" log_info_msg "${msg}"

ທາງອອກ 0

fi


log_info_msg "ຕິດຕັ້ງລະບົບໄຟລ໌ຮາກຢູ່ໃນໂໝດອ່ານເທົ່ານັ້ນ..." mount -n -o remount,ro / >/dev/null


ຖ້າ [${?} != 0 ]; ຈາກນັ້ນ log_failure_msg2 msg="\n\nບໍ່ສາມາດກວດສອບຮາກໄດ້"

msg="${msg}ລະບົບໄຟລ໌ ເພາະວ່າມັນບໍ່ສາມາດເຊື່ອມຕໍ່ໄດ້" msg="${msg}ໃນໂໝດອ່ານເທົ່ານັ້ນ.\n\n"

msg="${msg}ຫຼັງຈາກທີ່ທ່ານກົດ Enter, ລະບົບນີ້ຈະຖືກຢຸດ " msg="${msg} ແລະປິດເຄື່ອງ.\n\n"

log_failure_msg "${msg}"


log_info_msg "ກົດ Enter ເພື່ອສືບຕໍ່..." wait_for_user

/etc/rc.d/init.d/halt ຢຸດອີກ

log_success_msg2

fi


ຖ້າ [ -f /forcefsck ]; ຈາກນັ້ນ msg="/forcefsck ພົບ, ບັງຄັບໄຟລ໌"

msg="${msg} ກວດສອບລະບົບຕາມທີ່ຮ້ອງຂໍ." log_success_msg "$msg"

options="-f" ອື່ນ

ຕົວເລືອກ = ""

fi


log_info_msg "ກຳລັງກວດສອບລະບົບໄຟລ໌..."

# ໝາຍເຫດ: -a ທາງເລືອກທີ່ໃຊ້ເປັນ -p; ແຕ່ນີ້ລົ້ມເຫລວ e.g. ໃນ fsck.minix ຖ້າ is_true "$VERBOSE_FSCK"; ແລ້ວ

fsck ${options} -a -A -C -T ອື່ນ

fsck ${options} -a -A -C -T >/dev/null

fi error_value=${?}

ຖ້າ [ "${error_value}" = 0 ]; ຈາກນັ້ນ log_success_msg2

fi


ຖ້າ [ "${error_value}" = 1 ]; ຈາກນັ້ນ msg="\nຄຳເຕືອນ:\n\nຂໍ້ຜິດພາດຂອງລະບົບໄຟລ໌ " msg="${msg}ໄດ້ຖືກພົບເຫັນ ແລະໄດ້ຮັບການແກ້ໄຂແລ້ວ.\n" msg="${msg} ທ່ານອາດຈະຕ້ອງກວດເບິ່ງຄືນວ່າ " msg=" ${msg}ທຸກຢ່າງຖືກແກ້ໄຂຢ່າງຖືກຕ້ອງ." log_warning_msg "$msg"

fi


ຮູບພາບເລັກນ້ອຍ

ຖ້າ [ "${error_value}" = 2 -o "${error_value}" = 3 ]; ຈາກນັ້ນ msg="\nຄໍາເຕືອນ:\n\nຄວາມຜິດພາດຂອງລະບົບໄຟລ໌ " msg="${msg}ໄດ້ຖືກພົບເຫັນ ແລະໄດ້ຮັບການແກ້ໄຂ " msg="${msg}, ແຕ່ລັກສະນະຂອງ "

msg="${msg}ຂໍ້ຜິດພາດຮຽກຮ້ອງໃຫ້ລະບົບນີ້ປິດເປີດໃໝ່.\n\n" msg="${msg}ຫຼັງຈາກທີ່ທ່ານກົດ enter, "

msg="${msg}ລະບົບນີ້ຈະຖືກປິດເປີດໃໝ່\n\n" log_failure_msg "$msg"


log_info_msg "ກົດ Enter ເພື່ອສືບຕໍ່..." wait_for_user

reboot -f

fi


ຖ້າ [ "${error_value}" -gt 3 -a "${error_value}" -lt 16 ]; ຈາກນັ້ນ msg="\nFAILURE:\n\nບັນຫາລະບົບໄຟລ໌"

msg="${msg}ໄດ້ພົບທີ່ບໍ່ສາມາດຖືກແກ້ໄຂໄດ້" msg="${msg}ແກ້ໄຂອັດຕະໂນມັດ.\nລະບົບນີ້ " msg="${msg}ບໍ່ສາມາດສືບຕໍ່ບູດໄດ້ ແລະຈະ " msg="${msg}ດັ່ງນັ້ນ ຈະຖືກຢຸດຈົນກ່ວາ " msg="${msg}ຄວາມຜິດພາດເຫຼົ່ານັ້ນຖືກແກ້ໄຂດ້ວຍຕົນເອງໂດຍ " msg="${msg}ຜູ້ເບິ່ງແຍງລະບົບ.\n\n"

msg="${msg}ຫຼັງຈາກທີ່ທ່ານກົດ Enter, ລະບົບນີ້ຈະຖືກຢຸດ " msg="${msg} ແລະປິດເຄື່ອງ.\n\n"

log_failure_msg "$msg"


log_info_msg "ກົດ Enter ເພື່ອສືບຕໍ່..." wait_for_user

/etc/rc.d/init.d/halt ຢຸດ

fi


ຖ້າ [ "${error_value}" -ge 16 ]; ຈາກນັ້ນ msg="FAILURE:\n\nຄວາມລົ້ມເຫລວທີ່ບໍ່ຄາດຄິດ " msg="${msg}ແລ່ນ fsck. ອອກດ້ວຍຂໍ້ຜິດພາດ " msg="${msg} code: ${error_value}.\n" log_info_msg $msg

ອອກຈາກ ${error_value}

fi



*)


ວ່າ C

ທາງອອກ 0

;;


echo "ການນຳໃຊ້: ${0} {start}" ອອກຈາກ 1

;;


# ສິ້ນສຸດການກວດສອບ


ຮູບພາບເລັກນ້ອຍ

OS Cloud Computing ຍອດນິຍົມຢູ່ OnWorks: