• opensue fstab故障恢复


    date: 20140505

    author: Jin

    故障背景:

    早上启动本本 无法启动,报错信息(几个关键)

    WARNING:Failed to connect to lvmetad: No such file direct

    [FAILED] Failed to mount  /var/run/user/1000/gvfs

    SEE 'systemctl status  var-run-user-1000-gvsfs.mount' for details.

    [DEPEND] Dependency failed for Local File System

    原因分析:

    根据报错初步判断,是否是我昨天关机的时候,系统没有sync导致,这样的话,进入单用户模式修复一下就可以了

    操作:

    1.按提示的操作进入恢复模式,无法输入操作。

    2.编辑

    load_video
    set gfxpayload=keep
    insmod gzio
    insmod part_msdos
    insmod ext2
    set root='hd0,msdos5'
    if [ x$feature_platform_search_hint = xy ]; then
    search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos5 --hint-efi=hd0,msdos5 --hint-baremetal=ahci0,msdos5 --hint='hd0,msdos5' 1db64f2a-65b4-4018-b921-cc344e361d9d
    else
    search --no-floppy --fs-uuid --set=root 1db64f2a-65b4-4018-b921-cc344e361d9d
    fi
    echo 'Loading Linux 3.11.10-7-desktop ...'
    linux /vmlinuz-3.11.10-7-desktop root=/dev/mapper/system-root quiet quiet liveinstall resume=/dev/system/swap splash=silent quiet showopts -S
    echo 'Loading initial ramdisk ...'
    initrd /initrd-3.11.10-7-desktop

    3.进入单用户模式

    提示需要输入密码,输入没有效果。仔细看,根本没有输入光标。

    4.baidu/google 如果不要密码进入

    redhat系进入单用户不要密码,suse需要

    http://blog.csdn.net/forlinux/article/details/2712676

    在启动linux的选项里加上init=/bin/bash,通过给内核传递init=/bin/bash参数使得OS在运行login程序之前运行bash,出现命令行。

    linux /vmlinuz-3.11.10-7-desktop root=/dev/mapper/system-root -S init=/bin/bash

    5.进入单用户模式后

    fsck修复各个分区

    root无法修复,因为已经挂载

     查看 lvm2-lvmetad.service  没有启动的 单用户

    6.启动系统确认

    一样无法系统

    原因再分析

    回想昨天取消fstab里面挂在smaba的操作(开启启动时需要输入密码),是不是这个操作引起。而且报错也是挂在的问题

    操作

    1.重新进入单用户模式

    2.查看stab

    cat /etc/fstab
    /dev/system/swap swap swap defaults 0 0
    /dev/system/root / ext4 acl,user_xattr 1 1
    /dev/disk/by-id/ata-HITACHI_HTS723232A7A364_E3834563JXVAKN-part5 /boot ext4 acl,user_xattr 1 2
    /dev/system/data /data ext4 acl,user_xattr 1 2
    /dev/system/home /home ext4 acl,user_xattr 1 2
    gvfsd-fuse /var/run/user/1000/gvfs fuse.gvfsd-fuse rw,nosuid,nodev,relatime,user_id=1000,group_id=100 0 0

    除了最后一行外,其他都没什么问题

    注释掉最后一行,启动

    3.正常了

    查看历史命令

    MyOpenSUSE:~ # history |grep fstab

    16 2014-04-28 13:19:46 tail -1 /etc/mtab >> /etc/fstab
    46 2014-04-29 09:34:07 cat /etc/fstab
    259 2014-05-04 14:06:22 tail -1 /etc/mtab >> /etc/fstab
    365 2014-05-04 11:27:02 vim /etc/fstab
    508 2014-05-05 10:48:07 history |grep fstab
    MyOpenSUSE:~ # tail -1 /etc/mtab
    gvfsd-fuse /var/run/user/1000/gvfs fuse.gvfsd-fuse rw,nosuid,nodev,relatime,user_id=1000,group_id=100 0 0

    是昨天查看自己程序日志时!tail操作了,然后没仔细看。

    自己手贱的问题

    总结

    1.碰到故障先查看报错信息,初步判断大致方向

    2.回想之前做过的操作,和大致方向集合,判断是什么操作引起

    3.系统崩溃的问题,进入单用户,进行fsck,恢复fstab kernel init-ran grub等

    后续提升

    opensuse和fedora和rhel7都使用systemd了,启动流程有一些变化,需要了解。

  • 相关阅读:
    闭包
    原型继承
    js时间戳转成日期格式
    常用正则表达式
    vue中如何实现pdf文件预览?
    Vue动画效果
    手把手教你封装 Vue 组件,并使用 npm 发布
    LCD驱动(FrameBuffer)实例开发讲解
    每个程序员都该阅读的书
    LCD platform_device(s5pv210)
  • 原文地址:https://www.cnblogs.com/diege/p/3708789.html
Copyright © 2020-2023  润新知