VMware主机 几次断电后,挂载的磁盘报错了,系统无法启动


由于断电,挂载的磁盘出错:

task mount:1153 blocked for more than 120 seconds
"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message

task mount:9943 blocked for more than 120 seconds

 磁盘挂载位置: /dev/mapper/centos-home  /home

解决方法:

1.进入单用户模式:

按 e   把ro改成 rw init=/sysroot/bin/sh ,按ctrl+x启动

进入单用户页面后,要执行

chroot /sysroot,获取root权限

设置grub
(1)在 GRUB_CMDLINE_LINUX 中添加 net.ifnames=0 biosdevname=0

[root@localhost ~]# vi /etc/sysconfig/grub GRUB_TIMEOUT=5 GRUB_DISTRIBUTOR="$(sed ‘s, release .*$,,g‘ /etc/system-release)" GRUB_DEFAULT=saved GRUB_DISABLE_SUBMENU=true GRUB_TERMINAL_OUTPUT="console" GRUB_CMDLINE_LINUX="crashkernel=128M rd.lvm.lv=centos/root rhgb quiet net.ifnames=0 biosdevname=0" GRUB_DISABLE_RECOVERY="true"

 

生成菜单

[root@localhost ~]# grub2-mkconfig -o /boot/grub2/grub.cfg Generating grub configuration file ... Found linux image: /boot/vmlinuz-3.10.0-327.el7.x86_64 Found initrd image: /boot/initramfs-3.10.0-327.el7.x86_64.img Found linux image: /boot/vmlinuz-0-rescue-8058723e5e754d3aabc51842d9108e3b Found initrd image: /boot/initramfs-0-rescue-8058723e5e754d3aabc51842d9108e3b.img done

vi /etc/fstab

#/dev/mapper/centos-home /home xfs default 0 0
重启系统。

重启成功后进入正常模式,这时可以查看/home挂载的问题
(1)  lvs -a -o +devices查看磁盘详细信息,可以看到home的attr参数没有a(激活)未激活状态
(2)  lvchange -a y /dev/mapper/centos-home 激活home

lvsdisplay

 

 

 

使用xfs_repair来修复,但是要注意xfs_repair修复的分区中的文件都会丢失,即使是du能正常显示的文件也会丢失。

  处理步骤:
  1、umount /dev/mapper/centos-home
  2、xfs_repair /dev/mapper/centos-home 或者xfs_repair /dev/mapper/centos-home -L
       3、执行:mount /dev/mapper/centos-home   /home


   4、取消已挂载:umount /dev/mapper/centos-home

   vi /etc/fstab   #去掉之前的注释

/dev/mapper/centos-home /home xfs default 0 0

   5、关闭linux虚拟机,再重启,这时linux虚拟机就可以正常启动了



————————————————
原文链接:https://blog.csdn.net/glongljl/article/details/80157162

 

 

其他设置:

journalctl -xb

sysctl -a |grep dirty
vi /etc/sysctl.conf
vm.dirty_background_ratio = 5
vm.dirty_ratio = 10

vi /etc/init.d/rcS
vm.dirty_ratio = 10
vm.dirty_background_ratio = 5


sysctl -p

sysctl -a | grep hung_task_timeout_secs
sysctl -w kernel.hung_task_timeout_secs=0

cat /sys/block/sda/queue/scheduler
echo noop >/sys/block/sda/queue/scheduler

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM