明明白白你的Linux服务器——故障篇
创始人
2024-07-13 06:30:38
0

在Linux/unix服务器的维护过程中,遇到各种各样的问题;有的严重,有的很好解决,有的解决过程我就记录下来与大家分享下,希望能给大家带来帮助。

51CTO特别推荐:明明白白你的Linux服务器

故障一、

今天早上来的第一件事,就是检查昨天晚上刚刚重新安装的一台64位的CentOS 5.5服务器,那台服务器是四块硬盘作的二个RAID1,一个专用于OS,一个用于data,

在安装系统的过程中,为了不损失数据,data分区我碰也碰过,今天用root进系统后,我用mount /dev/mapper/ddf1_datap1 /data进行挂载,很顺利的挂载上去了,结果进去用ll命令一看,我靠,文件全出错了,都不正常了,吓我一跳,data分区里有的数据很重要,特别是mysql数据库,我问了下同事,同事也不是太清楚什么回事,我突然想起,这个是不是没正确挂载的原因,所以将其写进/etc/fstab里,如

/dev/mapper/ddf1_datap1 /data ext3 defaults 0 0

大家别小看defaults选项,这个默认会作许多事情的,reboot后一切正常,虚惊一场,特此记录工作心得,希望也给大家带来帮助;最后是将所有的数据备份后再仔细的fsck一遍,确认无误再进行挂载。

故障二、

故障描述:我们的jail母机192.168.21.36,因root的shell设置成的bash,而其依赖的库文件libintl.so.8发生丢失,导致了root不能登陆,具体报障如下:

/libexec/ld-elf.so.1: Shared object "libintl.so.8" not found, required by "bash"
Connection to 192.168.21.36 closed.

解决方法如下:

1.用单用户模式进入系统;

2.扫描磁盘(此步非做不可,而且是安全的)

fsck -y 

3.将文件系统重新挂载

mount -a 

4.将root的默认shell切换到sh

chsh -s sh 

重启后一切正常

故障三、

在某台工作机上,不小心删除了GRUB所在的分区怎么办?今天闲来无事,不小心删除了grub所在的分区/dev/hdb8,因为装的是windows2003和Centos5.3双系统,搞得连windows也进不了,想想看这已经是第二次犯错了。因为我的工作机上没有光驱和软驱(以前本着经济的原则配置的),上次是借别人的光驱,难道这次又要借,不行,我一定要自己想办法搞定了。花了不少时间把我的台电酷闪8G的优盘量产成了USB-CDROM+USB-HDD双启动的优盘,工作机居然不支持,晕。天寒地冻的,难道真要出门,忽然想起了,工作站支持网络引导,呵呵,那就应该有办法了。请出心爱的网刻软件MaxDOS_71PXE_G115.exe,以下为实验步骤截图:

搞定后原以为万事大吉了,发现一启动还是回到了gub报错状态,呵呵,看来还要想心思;不选择"克隆结束后重启计算机",这样就能回到Dos界面下,选择一款MBR修复软件,diskgen或spfdisk即可;或直接fdisk/mbr;其实还有个办法也可行:在“grub>”提示符后输入:“rootnoverify (hd0,0)” 回车将第一块硬盘(hd0)的第一个分区(0)设为根分区/root设备,但不加载文件系统;在“grub>”提示符后输入:“chainloader +1” 回车,将启动引导权转交给当前分区的首扇区(Windows系统所在分区的首扇区)。

其实,这只是一个很简单的、常遇见的grub错误,只要有dos引导盘即可,但关键是我的工作机比较老,即无光驱、软驱,连U盘引导也不支持,如果网络引导也不支持的话,可以用第二种办法尝试(或者强大的Linux命令dd)。修复后重启,故障排除;将以上步骤记录下,方便下次犯错时能迅速排障和重温习下网络Ghost。

故障四、

有台同事在处理Linux服务器时,他移走了一块硬盘,然后就直接启动红帽RHEL5,发现进了Emergency模式,焦急中他连忙跑过来找我;我第一句就是问他:你改动了硬件没,他说他移走了硬盘后就直接启动了,不是跟windows2003一样嘛,有什么问题?我都无语了,没办法 ,耐心跟他讲解 linux下/etc/fatab的作 用及语法,最后告诉他可以在Emergency模式下输入root密码进入此模式,然后用mount –o remount,rw /将/分区设置成可读写,编辑/etc/fatab,将移除的硬盘用#号屏蔽掉后重启服务器,故障解除。

故障五、

FreeBSD下的某台jail虚拟机,可能发生了程序错误形成了死循环,在不停的写某个文件,导致/usr占满,此时Nagios狂报警;这时候 需要快速将其抓取出来,这时候可以先新建 一个测试文件 touch test ,然后 用命令find / -newer test,为了证明其通用性,我特的选择了FreeBSD服务器

……

以上仅仅只是我遇到的形形色色的各种Linux/unix服务器故障之一二而已,我总结了下平时Linux/unix应该注意的事项:

①服务器中最容易坏掉的是风扇,如果是电信机房要注意检查;如果是自己内网服务器机房,平时注意将温度控制在19度以下即可;

②DELL的机器的RAID卡放电和充电都是正常现象,如果有Nagios报警也是正常的;

③有时间就多巡视下机房,检查下服务器的硬盘灯指示情况;

④注意网线不要松脱 了,不然你使用Heartbeat的服务器就很麻烦了;

⑤平时如果有时间和机会,可以作一些关于Keepalived和Heartbeat的模拟故障实验,保证其高可用性。

⑥虚心学习网络相关方面的知识和疑难问题,有时绝大多数的问题是网络方面引起来的;另外,电信一般会封掉80端口的,就不要在这些问题上纠结了。

遇到服务器故障时,一定要胆大心细,谨慎操作,因为有时是线上环境,稍有不慎就灰飞烟灭了,多总结多思考,这样才能成长得更快。

【编辑推荐】

  1. 明明白白你的Linux服务器——技巧篇
  2. 明明白白你的Linux服务器——安全篇
  3. 明明白白你的Linux服务器——日志篇
  4. 明明白白你的Linux服务器——网络篇
  5. 明明白白你的Linux服务器——硬件篇

相关内容

热门资讯

如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
Windows恶意软件20年“... 在Windows的早期年代,病毒游走于系统之间,偶尔删除文件(但被删除的文件几乎都是可恢复的),并弹...
规避非法攻击 用好路由器远程管... 单位在市区不同位置设立了科技服务点,每一个服务点的员工都通过宽带路由器进行共享上网,和单位网络保持联...
20个非常棒的扁平设计免费资源 Apple设备的平面图标PSD免费平板UI 平板UI套件24平图标Freen平板UI套件PSD径向平...
范例解读VB.NET获取环境变... VB.NET编程语言的使用范围非常广泛,可以帮助开发人员处理各种程序中的需求,而且还能对移动设备进行...
德国电信门户网站可实时显示全球... 德国电信周三推出一个门户网站,直观地实时提供其安装在全球各地的传感器网络检测到的网络攻击状况。该网站...