linux一个节点提示输入密码,Linux常见系统故障

Linux常见系统故障

1.修复MBR扇区故障

2.修复GRUB引导故障

3./etc/inittab文件丢失

4.遗忘root用户密码

5.修复文件系统

6.磁盘资源耗尽故障

一、修复MBR扇区故障

1.关机添加一块硬盘,开机查看硬盘设备分区列表,是否存在/dev/sdb设备信息

925873317de56934e0b7ba5fa8df1e42.png

2.对新硬盘分区

2.1新建一个主分区

8ddc4bb28c6a0d9ca1df2c776c50518a.png

2.2新建一个扩展分区

4121c2ecd52f22aa84f9e3304b280935.png

2.3新建两个逻辑分区,然后保存

29bdfe04c3cf5d58344de6287684bd4f.png

3.查看sdb中分区列表信息

fdisk -l /dev/sdb

bd193682ca956d05c391568bef47cc90.png

4.格式化文件系统,这里暂时只格式化/dev/sdb1

mkfs -t ext4 /dev/sdb1

efc8bca6473421dd5debeb8892f3b57e.png

5.创建一个挂载点,挂载sdb1分区

mkdir /sdb1

mount /dev/sdb1 /sdb1

4933e7f2a78aa0c4615db6fe79181d06.png

6.备份MBR扇区数据

dd if=/dev/sda of=/sdb1/sda.mbr.bak bs=512 count=1

d41fa4cb41195355b23c8350c700b3ea.png

7.模拟MBR被破坏的故障

dd if=/dev/zero of=/dev/sda bs=512 count=1

f8974002f6f511aac8ee4d2ad11d751d.png

8.然后重启系统,发现系统无法重启

f58daf5ac237cdb2c556e5f18f6fcdca.png

9.从备份文件中恢复MBR扇区

添加虚拟机与光盘的连接,重启系统,自动进入如下界面,现在第三个(救援模式)

041202c5d87762e8487796ec188bf9f6.png

10.系统加载后,一直下一步,直到出现如下图,选择第一个

8196a09960984aaee9535d732dbb0d46.png

11.执行fdisk -l 能看到sdb1分区,看不到sda设备,因为sda设备的MBR被破坏(linux 系统的分区记录存放在mbr中)

63e8f4e6251fde20b95157145551fc3c.png

12.在急救模式下的虚拟磁盘中建立sdb1分区的挂载点目录

mkdir  /sdb1

mount /dev/sdb1  /sdb1

dd if=/sdb1/sda.mbr.bak  of=/dev/sda bs=512 count=1

c73b2fe3a89e40e401624b94c91934d6.png

13.重启系统,然后系统就能正常工作了

二、修复GRUB引导故障

1.备份grub.conf文件(建议备份到第2块磁盘中)

mkdir  /backup

mount  /dev/sdb1  /backup

cp  /boot/grub/grub.conf  /backup/grub.conf.bak

247eb451038eec6cc1a1fb8ffdb994aa.png

2.模拟破环grub.conf文件

rm  -rf  /boot/grub/grub.conf

baa9b06fe01e368765b71e3841b4df58.png

3.重启系统,发现系统无法正常加载

729a729122073e763639052f433cbb06.png

4.进入救援模式,此时只能进入bios设置boot启动顺序,把光盘引导调整到前面,然后保存,此时系统会加载光盘

ab259cf76bd7c60b3c665a8cd6d2872d.png

5.查看硬盘分区情况,此时可以看到两个硬盘,因为grup配置文件损坏,但还是会成功加载分区记录

557b56bf83c25588ea68c3b0ec41874d.png

6.在急救模式下的虚拟磁盘中建立sdb1分区的挂载点目录,此时需要创建两个挂载点,以及挂载sda1(grup文件所在分区)和sdb1(备份grup配置文件所在分区)

mkdir /backup(在急救模式下的虚拟磁盘中建立sdb1分区的挂载点目录)

mkdir  /sda1(创建sda1分区的挂载点目录)

mount  /dev/sdb1  /backup

mount  /dev/sda1  /sda1

cp  /backup/grub.conf.bak  /sda1/grub/grub.conf

f40e970343dec625d9a7687ef2f9f3aa.png

7..重启系统,然后系统就能正常工作了

三、/etc/inittab文件丢失

1.备份/etc/inittab文件

cp  /etc/inittab  /root/inittab.bak

231225bae6d1ff15554da57f30cedc66.png

2.模拟inittab文件丢失

rm  -rf  /etc/inittab

e762dc64b2b9567dec7350ca38a35a73.png

3.重启系统进入文本命令模式,恢复inittab文件  #重新系统后,系统进入文本命令模式,因为运行级别配置文件(inittab)丢失

cp  /root/inittab.bak  /etc/inittab

3fec65a1b93fc65c8e5d1e7e992249f1.png

4.重启系统,然后系统就能正常进入图形界面了

aa4fe964d9667a3d11f172734531c265.png

四、遗忘root用户密码

解决方法:引导进入单用户模式,然后重设密码

1.重启系统,在引导界面按e键

68edda62264f4a13ea2140bcb2fff4d2.png

2.在按e,进入然后选第二项

4c2cbd82f7bcfe638bb98c7dd400cfc5.png

3.再按e进入,敲空格,输入1,然后回车   #1代表单用户模式

4913761faf513864f2f17503d098c73c.png

4.上一步,回车后又返回以前,按b,重新引导,然后就进入单用户模式了,然后修改root用户密码

0d76075057d5e9df93410eaadffbe267.png

5.重启系统,用修改过的密码登录

五、修复文件系统

故障原因:

非正常关机、突然断电、设备读写失误等

文件系统的超级块(super-block)信息被破坏

故障现象

无法向分区中读取或写入数据

启动后提示“Give root password for maintenance” (启动硬盘super-block被破坏)

解决办法:

根据提示输入root口令,进入修复状态

使用fsck命令进行修复

1. 模拟对/dev/sdb1分区的破坏操作

dd if=/dev/zero of=/dev/sdb1 bs=512 count=4

1c8d2a6a9e4c5dc169f1d31be5436bcd.png

2. 检查是否能挂载该分区

a11e6711e58c12a52fb10539e5aba6e3.png

3.上图提示报错,没有指定文件类型,那我们就添加文件类型,但是添加文件类型还是报错,从下图的报错信息中可以看出,真正的原因是因为superblock(超级块出现问题)

0a9763bda9dfdce517383ae19b49e11a.png

4. 对/dev/sdb1分区进行修复

fsck –y -t ext4 /dev/sdb1

03c633d81db8202d8b290efecc31fc48.png

5.再次挂载该分区 无错误提示,修复成功

6e6f1c8a1ce24a330fff18e476c58a88.png

六、磁盘资源耗尽故障

故障原因:

磁盘空间已被大量的数据占满,空间耗尽

虽然还有可用空间,但文件数i节点耗尽

故障现象:

无法写入新的文件,提示“… : 设备上没有空间”

部分程序无法运行,甚至系统无法启动

解决思路:

清理磁盘空间,删除无用、冗余的文件

转移或删除占用大量i节点的琐碎文件

进入单用户模式、急救模式进行修复

为用户设置磁盘配额

1.这里只测试文件节点耗尽

2.写一个while 死循环,一直创建空文件,这里以/boot/test为例

i=1

while [ 1 ]

do

cd /boot/test

touch "$i".txt

let "i++"

done

3.没有运行脚本之前的/boot/test目录下的节点数

8303aad152dd397062c64979e8155ef6.png

4.运行完脚本之后/boot/test目录下的节点数已经用完,但是磁盘还有剩余空间

1cdf016c0b55afb5bcece5726d407f29.png

5.此时在向/boot/test写入数据,会提示失败,虽然还有空间剩余,这是因为Linux的安全存储机制,只要节点数或者空间任何一个使用完,都不能再进行写入数据

316b6e85da9392c3f690d28fb8605394.png

6.解决办法,删除占用大量i节点的琐碎文件

这里删除/boot/test目录下的所有文件,然后在写入数据测试

rm -fr   /boot/test/*

a71ce55c29ad47a6be11aa9d1883a797.png

7.磁盘配额

7.1. 磁盘限额需要安装quota软件包 yum install -y quota

7.2. 启用文件系统的配额支持(添加usrquota、grpquota挂载参数)

mkdir /sdb1

chmod 777 /sdb1(为/sdb1授权)

6b3956517eda26e9239d035775146ca0.png

b618d2d29a0f1c60ef6182d91630d105.png

注:第一个字段为被挂载的分区,第二个字段为挂载的目录,第三个字段是被挂载的分区的文件系统类型,后面的几个字段是支持quota的参数。各字段用空格分隔

reboot重启系统(或mount -a读取/etc/fstab文件,使重新挂载生效),重启进入文本编辑界面按回车

7.3

mount  | tail -1(查看是否挂载成功)mount(查看是否挂载成功)

mount | grep /dev/sdb1

/dev/sdb1 on /sdb1 type ext4 (rw,usrquota,grpquota)

ls  /sdb1

lost+found

b09944a20e30388b7add3da04e328b24.png

7.4检测磁盘配额并创建配额文件

quotacheck  -ugcv  /dev/sdb1

ls -l /sdb1/aquota.*(查看是否生成配额文件)

94776fa6d17be208304250d07a418672.png

7.5编辑用户和组帐号的配额设置(edquota命令)

edquota -u 用户名(编辑用户配额)

edquota -g 组名(编辑组配额)

例如:新建用户和组

c22a2f14090c77c83391804443be0438.png

edquota -u zhangsan  编辑用户配额

edquota -g students   编辑组配额

7e88df966f561c54a29bcdb9d47b8e7c.png

024dab43661e2110ed9f577ac0dc02a7.png

启用、关闭文件系统的配额功能(quotaon、quotaoff命令)

quotaon  -ugv /sdb1

9b17d816a9b78853bf06ce506628b0b6.png

普通用户对设置配额的分区(挂载目录)具有写入权限

chmod  777  /sdb1

切换到启用配额的用户身份su  -  zhangsan

切换到设置配额的分区(挂载目录)cd  /sdb1

6aa70f56188ebbf07067f4c79d568c21.png

创建指定数量的文件:使用touch命令,或cp命令

2fc51248de26203c2aedfb22e1248cf5.png

创建指定容量的文件:使用dd命令,或cp命令

rm  -rf  *.txt

c2026ae6d591ced547c77f9da752ce4c.png

关闭文件系统配额功能

0a6765f1e7a92b05a8b7b8d02bc3f923.png

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值