linux服务错误如何排查,init中的服务故障如何排除

我们假设ypbind出故障

首先我们设 ypbind服务开机启动

chkconfig yubind on

然后查看服务

chkconfig --list

3c8ce6380daa33c267ccb0e2e66a02de.png

默认是2345启动

3c8ce6380daa33c267ccb0e2e66a02de.png

然后更改这个脚本,里面寄一个长期的休眠时间,模仿为错误

sleep 休眠时间

然后重新启动,看看系统如何报错。

3c8ce6380daa33c267ccb0e2e66a02de.png

然后系统等到要启动该服务的时候回一直处于等待中

3c8ce6380daa33c267ccb0e2e66a02de.png

如果该脚本出错,那么系统也会该我们错误提示。

因为默认是在模式2345中启动。

所以模式1默认不启动服务 ,可以用模式1登录进行排查。

重启系统

人后在登录等待中按esc会进到这个页面

3c8ce6380daa33c267ccb0e2e66a02de.png

根据下面的提示 ,按a

3c8ce6380daa33c267ccb0e2e66a02de.png

进入到一个开机设置的脚本中。

然后再最后一行添加要进入的模式。

我们这里要进1模式,所以我在最后面添加1

然后按回车启动

relevel查看现在模式

3c8ce6380daa33c267ccb0e2e66a02de.png

这里我们可以进去了。

然后可以在这个模式里进行拍错。

找到刚刚我们模拟的错误修改回来保存重启就行

如果把1模式也设为on(启动)

chkconfig --level 1 yubind on

该程序也属于init 中的启动

3c8ce6380daa33c267ccb0e2e66a02de.png

那我们只能绕过init启动

系统重启,然后跟刚刚一样。

还是启动用a

系统默认情况下是找/sbin/init启动

这次我们可以更改一下,用非默认。

这次在最后加上 init=/ bin/bash

这意味着是bash启动

这个就等于绕过了init

3c8ce6380daa33c267ccb0e2e66a02de.png

相当于先启动bash 启动后进命令模式

然后在排查init中启动文件夹的错误

3c8ce6380daa33c267ccb0e2e66a02de.png

更改文件时发现不让更改

查看一下挂载情况

mount

3c8ce6380daa33c267ccb0e2e66a02de.png

登进去后属于只读挂载

3c8ce6380daa33c267ccb0e2e66a02de.png

mount -o remount,rw /(重新挂根)

chkconfig yubind off (关闭损坏的服务)

然后再重启系统

重启后再排除故障

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值