码迷,mamicode.com
首页 > 其他好文 > 详细

/var 变为只读系统的解决

时间:2015-11-29 06:51:04      阅读:188      评论:0      收藏:0      [点我收藏+]

标签:系统 只读

背景:

    某台rsync服务端突然出现问题,客户端无法rsync文件过去,登录服务器查看,发现/var变为只读了,所有文件都无法对其写入操作,从而导致无法写入日志,而重启服务亦说是磁盘是只读的;在对/var进行了多方面的操作后(fsck/remount),都无法把该分区变为rw,死活都是只读,而查看dmesg下有很多错误信息:SCSI error : <0 0 0 0> return code = 0x8000002 Info fld=0x16e5296, Deferred sda: sense key Hardware Error,一般处理方法都是在/etc/fstab把该段注释掉,然后reboot再remount,但由于该台服务器的特殊性,害怕重启后无法启动而影响业务,故采取以下方法解决:


[root@app1 /]#mkdir /home1/bak/varbackup
[root@app1 /]#mount --move /var /home1/bak/varbackup
[root@app1 /]#rm -rf /var 
[root@app1 /]#cd /
[root@app1 /]#mkdir -p /home1/bak/var
[root@app1 /]#ln -s /home1/bak/var  /var
[root@app1 /]#cp -R /home1/bak/varbackup/* /var/
修改/etc/fstab:
[root@app1 /]# cat /etc/fstab
LABEL=/ / ext3 defaults 1 1
LABEL=/boot /boot ext3 defaults 1 2
none /dev/pts devpts gid=5,mode=620  0 0
none /dev/shm tmpfs defaults 0 0
LABEL=/home /home ext3    defaults        1 2
LABEL=/home1 /home1 ext3    defaults        1 2
LABEL=/home2 /home2 ext3    defaults        1 2
LABEL=/home3 /home3 ext3    defaults        1 2
LABEL=/data2 /data2 ext3    defaults        0 0
none /proc proc    defaults        0 0
none /sys sysfs   defaults        0 0
LABEL=/tmp /tmp ext3    defaults        1 2
LABEL=/usr /usr ext3    defaults        1 2
#LABEL=/var /var ext3    defaults        1 2
LABEL=/var /home1/bak/var ext3    defaults        1 2
LABEL=SWAP-sda3 swap swap    defaults        0 0
/dev/hda /media/cdrom auto    pamconsole,exec,noauto,managed 0 0
/dev/fd0 /media/floppy auto    pamconsole,exec,noauto,managed 0 0

  修改fstab,使服务器能正常重启,并能挂载/var,此时把原有的相关服务重启,重启成功,/var变为可读写。

  此时使用mount查看:

[root@app1 bak]# mount 
/dev/sda2 on / type ext3 (rw)
none on /proc type proc (rw)
none on /sys type sysfs (rw)
none on /dev/pts type devpts (rw,gid=5,mode=620)
usbfs on /proc/bus/usb type usbfs (rw)
/dev/sda1 on /boot type ext3 (rw)
none on /dev/shm type tmpfs (rw)
/dev/sda8 on /home type ext3 (rw)
/dev/sdb1 on /home1 type ext3 (rw)
/dev/sdc1 on /home2 type ext3 (rw)
/dev/sdd1 on /home3 type ext3 (rw)
/dev/sda5 on /tmp type ext3 (rw)
/dev/sda6 on /usr type ext3 (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)
/dev/sde1 on /data2 type ext3 (rw)
/home1/bak/var on /home1/bak/varbackup type none (rw)

有问题的分区已经屏蔽,/var已经使用了新的分区。


mount move参数:Move a subtree to some other place.


从 Linux 2.5.1 开始,可以完整地将一个子树移动到另一个位置。调用的方法是

mount --move olddir newdir

 这样不影响系统的挂载服务。




本文出自 “冥思苦想之旅” 博客,请务必保留此出处http://shen445122.blog.51cto.com/6716303/1717755

/var 变为只读系统的解决

标签:系统 只读

原文地址:http://shen445122.blog.51cto.com/6716303/1717755

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!