@H_502_0@
@H_502_0@2、用TOP和free 查询,发现服务器内存剩余不是很多,JAVA进程占用很大内存空间,在暂时不能增加内存的情况下,考虑用重启服务器来释放内存,使服务有更多的内存空间; @H_502_0@
@H_502_0@3、重启服务器就启动不起来了 @H_502_0@
@H_502_0@4、以防万一,备份服务器数据,并转移应用到另外服务器,大费一番周折(拿了一块移动硬盘去,不认,提示格式不对,移动硬盘是NTFS格式,因服务器挂了上不了网络,后用FAT32的U盘拷贝NTFS-3g软件到服务器,安装出错,没有安装成功,只有用现有U盘一点点备份数据,我也是醉了。。。。) @H_502_0@
@H_502_0@5、接下来的一个星期就花在了导数据,恢复,部署,查错等事情上了; @H_502_0@
@H_502_0@6、数据是导出到了备用服务器上了,应用基本恢复,总算轻松了一些,但还是心有不甘,想办法恢复宕机的服务器,查了很多资料,还是一头雾水, @H_502_0@single进入单用户模式fsck -y /dev/sda1
@H_502_0@ fsck.ext4 -y /dev/sda1 @H_502_0@重启提示就是fsck.ext4:Unable to resolve 'UUID=' @H_502_0@还是无法正常启动 @H_502_0@找来光盘进入安全模式fsck.ext4 -y /dev/sda1 @H_502_0@情况依然,无法恢复 @H_502_0@
@H_502_0@网上查询到大量修复的是grub,但感觉使用在这个故障不合适 @H_502_0@
@H_502_0@: 进入Linux rescue模式后有几种方法引导系统: @H_502_0@chroot /mnt/sysimage 默认是挂载到/mnt/sysimage @H_502_0@
@H_502_0@方法1:
1. 在系统提示符#后输入:fdisk -l
//显示硬盘的分区,以便确定安装Linux的分区。
//本例是第一个硬盘的第三个主分区hda3
2. # grub-install /dev/hda
//重新安装GRUB引导程序在第一个硬盘上。
3. # exit;reboot
//退出并重启系统。 @H_502_0@方法2:
1. # grub
//进入GRUB命令行模式,出现提示符:grub>
2. grub> root (hd0,3)
//定位安装Linux的根分区,root与参数(hd0,3)间有一个空格。
3. grub> setup (hd0)
//在重新安装GRUB引导程序在第一个硬盘上,setup与参数(hd0)间有一个空格。
4. grub> exit;reboot
//退出并重启系统。 @H_502_0@方法3:
1. # grub
//进入GRUB命令行模式,出现提示符:grub>
2. grub> root (hd0,3)
3. grub> kernel (hd0,3)/boot/vmlinuz ro root=LABEL=/
//输入内核参数,注意内核的位置与名字。
4. grub> initrd (hd0,3)/boot/initrd-2.4.20-8.img
//传输映像文件,注意其所在的位置与名字。
5. grub> boot
//引导Linux系统启动。 @H_502_0@
@H_502_0@有查询了UUID 大概明白是fstabs文件中/devsda1:UUID出了问题 @H_502_0@
@H_502_0@7、进入single模式
@H_502_0@mount -o remount rw,/ 现在宕机系统默认为只读,此为重新挂载
@H_502_0@vim /etc/fstabs @H_502_0@我先将/dev/sda1 : UUID=“XXXXXXXXX”/boot更改为其他序列号,错误依然 @H_502_0@其次将/dev/sda1 : UUID=“XXXXXXXXX”/boot注释掉,提示信息如下 @H_502_0@
@H_502_0@再次将/dev/sda1 : UUID=“XXXXXXXXX”/boot中序列号XXXXXXXXX删除,保留/boot @H_502_0@
@H_502_0@重启成功,进入久违的登陆界面,进入系统 @H_502_0@# tune2fs -l /dev/sda1 |grep 'UUID' 查询系统UUID @H_502_0@将查询到的UUID序列号手动写入/etc/fstabs @H_502_0@/dev/sda1 : UUID=“XXXXXXXXX”/boot @H_502_0@
@H_502_0@重启成功,大功告成 @H_502_0@8、总结 @H_502_0@这个故障是突然的断电或重启使系统UUID不一致引起的无法启动,因为UUID是每个系统唯一的标志 @H_502_0@步骤; @H_502_0@1 single模式 @H_502_0@2 mount -o remount rw,/ @H_502_0@3 vim /etc/fstabs @H_502_0@删除或更改挂载目录/boot的UUID @H_502_0@4 重启,使系统重新加载 @H_502_0@5 查询UUID tune2fs -l /dev/sda1 |grep 'UUID'
@H_502_0@ 并更改到/etc/fstabs中/boot的UUID @H_502_0@6 保存重启