求linux脚本,就是服务器自动检测网络,每个一段时间自动检测,丢包严重或断网,就自动重启服务器,求高手
因为服务器自身网络丢包和断网
1数据交互过大
2一段时间网口down掉
其实只要
/etc/initd/network restart
并不需要重启。
在/etc/rcd/rclocal最下面加一句话
networksh &
把下面脚本放到/usr/bin/目录
并且给她加权限
chmod +x /usr/bin/networksh
networksh脚本:
#!/bin/sh
#echo "请输入你的网关地址"
#read sgateway
sgateway="1921683187"
echo "连接的的网关是$sgateway"
delay=5000
echo "设置最大延迟不超过$delay毫秒"
nexttime=18
echo "每隔$nexttime秒进行一次检查"
echo "########################################"
while :
do
network=`ping -c 1 $sgateway | awk 'NR==2 {print $7}' | sed "s/=/ /g" | awk '{print $2}'`
expr ${network} + 0 1>/dev/null 2>&1
if [ $ -eq 0 ]; then
/etc/initd/network restart
else
value_n=`echo $network | sed "s/\//g"`
if [ "$value_n" -lt "$delay" ];
then
echo "检查结果为"
echo "网络通畅"
echo "网络延迟为$network秒"
echo "########################"
else
/etc/initd/network restart
fi
fi
sleep $nexttime
done
不给分不给力啊
我认为从一下几个方面考虑:
1、如果是在你从linux系统ping路由器的过程中有丢包的话,就要检查虚拟机外的网络结构了,因为有平通的数据包;
2、如果是在启动虚拟机后,有时ping通有时ping不通的话,有可能是因为你系统的本地网卡没有连接路由器,没有学习到对端地址,建议在虚拟机窗口下方的桥接网卡断开后重启即可;
3、既然能有时ping通的话,虚拟机的网卡设置没有问题,ip地址设置没有问题,重点看看上边两条提示;
linuxprobe作者?
刘遄,计算机信息技术方向教育学硕士,LinuxProbe作者
虚拟机安装Linux,已经到最后一步结果出现了一排英文,怎么做都不行?
报错:安装时出现以下错误:这是一个致命的错误,将中止安装,巴拉巴拉我看了报错信息,这个错误是重试了10次之后的报错:是您的RHEL7镜像文件有问题,建议您重新下载镜像文件安装。
http://wwwlinuxprobecom/tools这个链接可以直接下载,包含虚拟机软件,RHEL7镜像文件,文件校验工具。您可以下载结束之后,用文件校验工具校验一下您的文件,以免当网络不好,产生丢包现象,影响您的使用。modprobe命令Linux命令:modprobe。功能说明:自动处理可载入模块。语法:modprobe。补充说明:modprobe可载入指定的个别模块,或是载入一组相依的模块。modprobe会根据depmod所产生的相依关系,决定要载入哪些模块。若在载入过程中发生错误,在modprobe会卸载整组的模块。内容
1、modprobe命令是根据depmod-a的输出/lib/modules/version/modulesdep来加载全部的所需要模块。
2、删除模块的命令是:modprobe-rfilename。
3、系统启动后,正常工作的模块都在/proc/modules文件中列出。使用lsmod命令也可显示相同内容。
4、在内核中有一个“Automatickernelmoduleloading"功能被编译到了内核中。当用户尝试打开某类型的文件时,内核会根据需要尝试加载相应的模块。/etc/modulesconf或/etc/modprobeconf文件是一个自动处理内核模块的控制文件。modprobe命令主要用于在Linux26内核中加载和删除Linux内核模块。通过此命令用户可以轻松地加载和删除Linux内核模块,同时使用此命令加载Linux内核模块时,Linux内核会自动解决内核模块之间的依赖关系,将相互依赖的模块自动加载,如下所示:1)加载RAID1阵列级别模块:#modproberaid12)显示已加载的RAID1阵列级别模块:#lsmod|grepraid1raid12515303)删除RAID1阵列级别模块:#modprobe-rraid14)显示RAID1阵列级别模块:#lsmod|grepraid1modprobe命令在加载模块时会自动解决依赖的模块。当加载的模块需依赖另一个模块时,系统会自动将此模块加载。而当用户使用insmod命令加载模块时,则不会自动解决相对应的依赖模块。modprobe命令中的"-r"参数表示删除指定模块,"-c"参数表示显示/etc/modprobeconf配置文件的参数,"-C"参数表示指定内核配置文件,"-f"表示覆盖,"-l"表示显示模块的绝对路径。#modprobe-l|grepraid/lib/modules/2618-8el5/kernel/drivers/md/raid0ko/lib/modules/2618-8el5/kernel/drivers/md/raid456ko/lib/modules/2618-8el5/kernel/drivers/md/raid1ko/lib/modules/2618-8el5/kernel/drivers/md/raid10ko/lib/modules/2618-8el5/kernel/drivers/scsi/megaraidko/lib/modules/2618-8el5/kernel/drivers/scsi/aacraid/aacraidko/lib/modules/2618-8el5/kernel/drivers/scsi/megaraid/megaraid_mboxko/lib/modules/2618-8el5/kernel/drivers/scsi/megaraid/megaraid_mmko/lib/modules/2618-8el5/kernel/drivers/scsi/megaraid/megaraid_sasko/lib/modules/2618-8el5/kernel/drivers/scsi/raid_classko以上命令表示显示系统中所有的编译模块,并过滤包含有raid字符串的模块。
linux中的网卡驱动函数probe的具体作用?
probe在设备驱动被注册到内核中的时候,被总线型驱动调用。总线驱动类似于用轮训方法探测总线上的所有设备,将设备的识别型信息和关键数据结构(pciids,usbids,i2cidsandetc)传递给probe函数,probe就会识别是否是自己负责驱动的设备,并负责完成该设备的初始化操作。
0条评论