⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 repair.sh

📁 watchdog source watchdog source
💻 SH
字号:
#!/bin/sh## I try to get a repair script that can handle as many problems as possible.# Feel free to send me some additions.## (C) Michael Meskes <meskes@debian.org> Mon Jun 23 13:40:15 CEST 1997# Placed under GPL.# Improvements, and modification for Redhat by Marc Merlin # <marcsoft@merlins.org>## who to send mail to#admin=root## let's see what error message we got#case $1 in##	ENFILE: file table overflow#	=> increase file-max by 10%# 23) 		fm=`cat /proc/sys/fs/file-max`	fm=`expr $fm + $fm / 10`	echo $fm > /proc/sys/fs/file-max##	create log entry#	echo "increased file-max to "$fm | logger -i -t repair -p daemon.info ##	that's it, problem disappeared#	exit 0;;##	ENETDOWN: network is down#	ENETUNREACH: network is unreachable#	=> try to reconfigure network interface, there is no guarantee that#	   this helps, but if it does not, reboot won't either#	100|101)	if [ -x /etc/rc.d/init.d/network ]; then		# Redhat		/etc/rc.d/init.d/network stop	elif [ -x /etc/init.d/networking ]; then		# Debian		/etc/init.d/networking stop	else		ifconfig |		awk '/Link/ {print $1}' |		while read device		do			ifconfig ${device} down 		done	fi# Calling rmmod -a twice should remove all unused modules (including networking# ones). It might not work with very old rmmod binaries though, I don't know	rmmod -a	rmmod -a## make sure the modules gets back into it in case kerneld/kmod does not run#for module in `grep "^alias" /etc/conf.modules | awk '/eth/ {print $3}'`do        modprobe $moduledone		##	bring it back up#if [ -x /etc/init.d/networking ]; then    # Debian    /etc/init.d/networking startelif [ -x /etc/rc.d/init.d/network ]; then    # Redhat    /etc/rc.d/init.d/network startelse    echo "Couldn't find network script to relaunch networking. Please edit $0" | logger -i -t repair -p daemon.info     exit $1fi##	create log entry#		echo "re-initialized network interface eth0" | logger -i -t repair -p daemon.info #		#	that' all we can do here#	exit 0;;esac## couldn't do anything# tell the sysadmin what's going on#if [ -x /usr/bin/mail ]then	echo `hostname`" is going down because of error "$1|/usr/bin/mail -s "System fault!" ${admin}fi## finally tell watchdog to reboot#exit $1

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -