文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Linux系统怎么启动与登录故障排查

2023-06-28 17:00

关注

这篇文章主要为大家分析了Linux系统怎么启动与登录故障排查的相关知识点,内容详细易懂,操作细节合理,具有一定参考价值。如果感兴趣的话,不妨跟着跟随小编一起来看看,下面跟着小编一起深入学习“Linux系统怎么启动与登录故障排查”的知识吧。

系统启动异常:

1,部分centos启动黑屏,无异常报错的场景,可以fsck一下系统盘

2,根分区空间满,以及inode耗尽

3,升级内核或者从老的共享实例迁移到独享规格导致的启动异常
3.1 手动注入驱动 (mkinitrd virtio相关驱动 )
3.2 修改grub 的启动顺序,优先尝试使用老内核启动
3.3 boot目录下面内核的关联文件是否全(下面仅为demo,不同系统内核版本文件不一致,部分内核版本boot下的i386目录也是有用的)

config-4.9.0-7-amd64 initrd.img-4.9.0-7-amd64  System.map-4.9.0-7-amd64 vmlinuz-4.9.0-7-amd64

4 /boot/grub/device.map里面的hda改成vda

4,fstab/grub中的 uuid不对,可以直接修改为/dev/vda1这种形式尝试
数据盘分区异常加载起不来的场景,可以去注释ftab所有的行,添加类似下面的启动项尝试,也适用用系统盘快照创建云盘挂载后,uuid一致导致的启动异常,改成非UUID的挂载即可

/dev/vda1 / ext4 defaults 1 1

5,根目录777(部分目录777)也会导致启动异常,或者ssh登陆异常

6,常见的关键目录缺失,有的是软链,也可以看看对应目录下面的文件数量(文件数量要跟同内核版本或者相差不大的版本对比),简单判断

/bin  /sbin /lib  /lib32 /lib64 /etc /boot /usr/bin /usr/sbin /usr/lib /usr/lib64等目录或文件缺失for i in /bin  /sbin /lib  /lib32 /lib64 /etc /boot /usr/bin /usr/sbin /usr/lib /usr/lib64 ;do ls -l $i |wc -l ;done

7,影响启动的参数
如果参数设置不当,是会导致启动异常的,如/etc/sysctl.conf以及检查rc.local的配置,profile的检查

vm.nr_hugepages vm.min_free_kbytes

8,centos的需要selinux需要关闭,走

# cat /etc/selinux/config   # This file controls the state of SELinux on the system.# SELINUX= can take one of these three values:#     enforcing - SELinux security policy is enforced.#     permissive - SELinux prints warnings instead of enforcing.#     disabled - No SELinux policy is loaded.SELINUX=disabled 把这一行改成disabled# SELINUXTYPE= can take one of three values:#     targeted - Targeted processes are protected,#     minimum - Modification of targeted policy. Only selected processes are protected.#     mls - Multi Level Security protection.SELINUXTYPE=targeted
实战案例1–grub修复
背景信息:/boot/grub/grub.conf被误操作清空,系统启动就进入grub状态(centos 6.8)

1,find /boot/grub/stage1
显示为 (hd0,0)
2,确认一下内核的具体版本ls -l /boot去看
Linux系统怎么启动与登录故障排查

3,手动设置grub,具体步骤
grub> root (hd0,0) #是说跟分区在第一块硬盘的第1个分区 实际对于前面的find出来的那个文件
grub> kernel /boot/vmlinuz-2.6.32-696.3.2.el6.x86_64 ro root=/dev/vda1 #指明内核路径和根分区,注意ro是只读
grub> initrd /boot/initramfs-2.6.32-696.3.2.el6.x86_64.img #指明initramfs路径启动系统加载驱动
grub> boot #启动上面指定的系统,如果是reboot就等于重启整个系统了,刚才的设置就失效了
如果没有报错的话,即可成功启动,进入到系统内部后需要继续执行下面的操作
4,mount -e remount,rw / 重新挂载分区为读写
5,service network restart
如果提示eth0 eth2失败,ifconfig看不到网卡的话
6,lsmod |grep net
看下virtio_net 这个驱动有没有,如果没有的话(网卡报错基本都不会有)
7,

insmod /lib/modules/2.6.32-696.3.2.el6.x86_64/kernel/drivers/net/virtio_net.ko


8, 重启网络服务,嗨~网通了
9,登陆ssh,找个同版本系统的grub.conf, 拷贝一份过来,不然重启之后又进grub了

实战案例2–文件丢失类异常处理

背景信息:客户反馈系统无法远程登陆,实际系统启动本身就有问题
Linux系统怎么启动与登录故障排查

根据报错信息来看,是系统内读取user有问题,需要挂盘查看
1,挂盘后chroot如下 ihave no name,这里本身就是有问题了,说明系统内缺少了什么文件导致异常
Linux系统怎么启动与登录故障排查

2,strace跟踪一下chroot的过程,看下丢失的文件

strace -F -ff -t -tt -s 256 -o ch.out chroot /mntgrep -i "no such" ch.out.pid |grep "so"

Linux系统怎么启动与登录故障排查

3,查看对应文件的关系(测试机补图)
Linux系统怎么启动与登录故障排查

4,确认系统上丢了最终的libnss_files-2.12.so,尝试拷贝一个

ifconfig eth2 ip netmask maskroute add default gw gwip

Linux系统怎么启动与登录故障排查

5,此时已经可以上网了,去拷贝一个同版本的文件试试吧

root登录异常类:

1,/etc/passwd /etc/shadow (用户名 root polikt dbus等关键用户存在与否,文件为空,格式乱(dos2unix)

2,/etc/pam.d 目录下是否有为空的文件及参数设置是否正常,如常见的 system-auth passwd

3,/etc/pam.d 下面所有文件里面涉及的so文件,看看文件是否存在,是否为空 /usr/lib64/security

4,查/etc /lib64 /bin /sbin /usr/bin /usr/sbin等目录有没有size为0的文件

5,/etc/profile /etc/profile.d(打印列表) /etc/bashrc /root/.bash_profile /root/.bashrc 等涉及登陆环境设置的文件是否异常

6,注意内核版本,是否存在新老内核,多更换几个内核试下

7,系统日志也是一个比较重要的检查项(后面介绍下无法登陆怎么检查)

9,ubuntu1204登陆异常 在/etc/login.defs 里面配置了错误的ERASECHAR导致,恢复默认0177即可

configuration error - cannot parse erasechar value

10,输入root后直接login失败三连,日志如下
找个同内核版本的机器对比发现没有/etc/pam.d/login 有一个login.defs
rpm包校验一下,确认login没了,手动创建一个,内容拷贝过来,好了

[root@iZbp1cabe6lyx26ikmjie2Z pam.d]# rpm -V util-linuxmissing   c /etc/pam.d/login[root@iZbp1cabe6lyx26ikmjie2Z pam.d]# rpm -ql util-linux|egrep -vi "gz|mo|share"/etc/mtab/etc/pam.d/chfn/etc/pam.d/chsh/etc/pam.d/login/etc/pam.d/runuser/etc/pam.d/runuser-l/etc/pam.d/su/etc/pam.d/su-l

12,/etc/ssh/sshd_config 相关参数如 LoginGraceTime/Allowusers/PermitRootLogin

13,问题不好确认的时候,可以将shadow密码字段清空,看看登陆是否正常,可以判断是否到密码验证阶段了

实战案例3–ssh可以登陆root,但是管理终端无法登陆root用户
ssh可以登陆,管理终端无法登陆root,
提示 login in…

cat /var/log/secureJun  2 09:26:48 iZbp1begsz1x269nxhtip4Z login: FAILED LOGIN 1 FROM tty1 FOR root, Authentication failure

看日志是login验证模块的问题,检查相关模块的设置

# cat /etc/pam.d/login #%PAM-1.0auth required pam_succeed_if.so user != root quietauth [user_unknown=ignore success=ok ignore=ignore default=bad] pam_securetty.soauth       substack     system-authauth       include      postloginaccount    required     pam_nologin.soaccount    include      system-authpassword   include      system-auth# pam_selinux.so close should be the first session rulesession    required     pam_selinux.so closesession    required     pam_loginuid.sosession    optional     pam_console.so# pam_selinux.so open should only be followed by sessions to be executed in the user contextsession    required     pam_selinux.so opensession    required     pam_namespace.sosession    optional     pam_keyinit.so force revokesession    include      system-authsession    include      postlogin-session   optional     pam_ck_connector.so

这一行比较关键

auth required pam_succeed_if.so user != root quiet

禁止本地登陆了,注释掉即可

实战案例4–centos 登陆“卡住”

背景:登陆卡住,需要ctrl +c 才能进去,如图
Linux系统怎么启动与登录故障排查

如果一直等的话,会提示
Linux系统怎么启动与登录故障排查

原因:
/etc/profile 里面有 source /etc/profile 引起死循环,注释即可
Linux系统怎么启动与登录故障排查

系统登陆不进去了,不挂盘的情况下怎么操作?

阿里云新推出的卸载系统盘功能,可以把系统盘卸载掉,作为数据盘挂载到一个新的机器,这样就可以执行上面的检查了
详见:云服务器ECS卸载和挂载系统盘

场景覆盖:
Linux系统常见问题诊断服务覆盖以下场景:
Linux系统怎么启动与登录故障排查
Linux系统常见启动问题修复覆盖以下场景:
Linux系统怎么启动与登录故障排查

关于“Linux系统怎么启动与登录故障排查”就介绍到这了,更多相关内容可以搜索编程网以前的文章,希望能够帮助大家答疑解惑,请多多支持编程网网站!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-人工智能
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯