lesson - 2 笔记 yum /single /rescue /

一、 yum 
作用:
                    yum 命令是在Fedora 和RedHat 以及SUSE 中基于rpm 的软件包管理器,它可以使系统管理人员交互和自动化地更新与管理RPM软件包, 能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系, 并且一次安装所有依赖的软件包, 无需繁琐地一次次下载安装。yum 提供了查找、安装、删除某一个、一组甚至全部软件包的命令,而且命令简单又好记。
语法:
 yum (选项)(参数)
选项:
          -c    指定配置文件
                    -C    完全从缓存中运行,而不去下载或者更新任何头文件
                    -d    设置调试级别(0-10)
                    -e    设置错误等级 (0-10)
                    -h    显示帮助信息
                    -q    安静模式
                    -R    设置yum 处理的一个命令的最大等待时间
                    -v     详细模式
                    -y     对所有提问回答‘yes‘
参数:
install: 安装rpm 软件包
update:更新rpm软件包
check-update:检查是否有可用的更新rpm软件包
remove:删除指定的rpm软件包
list: 显示软件包的信息
search: 检查软件包的信息
info: 显示指定的rpm阮家宝的描述信息和概要信息
clean:清理yum过期的缓存
shell:进入yum 的shell提示符
resolvedep: 显示rpm软件包的依赖关系
localinstall : 安装本地的rpm软件包
localupdate:显示本地rpm软件包进行更新
deplist: 显示rpm软件包的所有依赖关系
 
二、单用户模式
作用:
Linux环境下忘记root 密码以及磁盘自动挂载后,丢失磁盘等情况下,无法正常进入Linux系统。为了解决这一情况, Linux系统提供的单用户模式进入修改密码

操作:

root 密码忘记
1.重启电脑: reboot / init 6 / shutdown -r now

2.在倒计时5秒内键入

3.选中内核 - 键入e编辑 grub 菜单选项- root/kernel  选中kernel 键入e编辑 -  ......rhgb quite - 1/S/single  回车 -   b  boot启动  - 进入单用户模式 - runlevel  查看运行级别 - 修改密码 passwd  - 键入新密码 -reboot .

4.使用新密码登陆  (删除进度条:/boot/grub/grub.conf  删除rhgb )

 

磁盘扇区错乱:

1.系统启动时磁盘可能有坏道或者扇区错乱(数据损坏)的情况, 多由于异常断电,不正常关机导致。   

2. 系统启动时,屏幕显示 Press root passwoed or ctrl+D :

3.输入root密码系统自动进入单用户模式,输入“fsck -y /dev/hda6” 系统检测修复发生错误的磁盘分区

4.reboot 重启

 

GRUB选项设置错误:Error 15: file not found

1.grub 选项设置错误:键入任意键修改grub 配置文件 - 回车保存 - b boot 启动 - 进入系统修改grub.conf 配置文件相同错误。

2.grub引导故障排除:Linux启动后直接进入GRUB命令行界面(只有”grub>“提示符), 一般而言常见原因有两个:一是GRUB配置文件中选项设置错误;二是GRUB配置文件丢失(少数原因,如内核文件或镜像文件损坏、丢失,/boot 目录误删除等), 如果是第一种,可以首先通过GRUB命令引导系统后修复。 二种,则要使用Linux救援模式修复。

 

样例: ”title Fedora Core(2.6.18-1.2798.fc6)“ 段被误删除

1.查找/boot/grub/grub.conf 文件所在分区 ,GRUB> find /boot/grub/grub.conf  (hd0,0)

2.查看grub.conf 文件错误,GRUB> cat (hd0,0) /boot/grub/grub.conf

3.先通过命令行方式完成GRUB引导,进入系统后再行修复grub.conf 文件错误,

指定/boot分区: root (hd0,0)

指定内核加载: kernel /boot/vmlinuz-...../rhcb quite 

指定镜像文件所在位置: initrd /boot/initrd-....img

4.从/boot分区启动, 命令行模式可以在GRUB菜单模式中通过键入”c“ 调用,也可以用于测试新编译的内核(设置kernel,initrd引导新内核以及镜像文件)。增加对GRUb引导以及linux系统引导的了解。

 

注意事项:

Linux引导进入根shell ,网络被禁用,只有少数进程运行。 单用户模式可以用来修改文件系统损坏,还原配置文件。移动用户数据等。
 

三、救援模式

作用:

当系统连单用户模式都无法进入或出现GRUB命令行也不能解决的引导问题的时候,我们就需要使用Linux救援模式来进行故障排除。

操作:

1.将Linux安装盘放入光驱,设置BIOS为光盘引导, 在”Boot“ 提示符后输入”linux rescue“ 回车进入救援模式

2.系统会检测硬件, 引导光盘上的Linux环境,一次提示选择救援模式下的使用语言,键盘设置以及网络设置等。

3.接下来系统将试图查找根分区。

默认在救援模式下,硬盘的根分区将挂在到光盘Linux 环境的/mnt/sysimage目录下, 默认选项continue 表示挂在权限为读写; Read-only 为只读,如果出现检测失败可以选择skip 跳过, 因为要对系统进行修复,一般选择continue进入下一步,系统提示执行”chroot /mnt/sysimage“ 命令,,可以将根目录挂在到我们硬盘系统的根目录中。

样例:

双系统启动修复:当我们安装双系统环境,先安装Linux再安装Windows ,或者已经安装好双系统环境的Windows损坏,在重新安装Windows后, 保存GRUB的MBR会被Windows系统的自举程序NTLDR 所覆盖,造成Linux系统无法引导。

1.恢复双系统引导,先进入救援模式,执行chroot 命令:  chroot /mnt/sysimage

2.将根目录切换到硬盘系统的根目录中,执行grub-install 命令重新安装GRUB:grub install /dev/hda   具体硬盘名称需调整

3.一次执行exit命令, 退出chroot模式以及救援模式。 执行两次exit命令

4.系统重启。

 

系统配置文件丢失修复:系统引导期间,很重要的一个过程就是init进程读取其配置文件/etc/inittab,启动系统基本服务程序以及默认运行级别的服务程序完成系统引导,如果inittab 误删除或者修改错误,Linux将无法正常启动。 此时只有救援模式可以解决。

1.有备份文件的恢复办法: 进入救援模式,执行chroot命令后, 直接拷贝备份文件,退出重启即可。如果是配置文件修改错误,可以直接修改恢复。  chroot /mnt/sysimage    ;cp /etc/inittab.bak /etc/inittab

2.没有备份文件的恢复办法: 重新安装软件包来恢复丢失文件。 chroot /mnt/sysimage ; rpm -qf /etc/inittab ;退出chroot模式 exit;  覆盖安装inittab 文件所在的RPM包, rpm -ivh --replacepkgs --root /mnt/sysimage /mnt/source/Fodora/RPMS/initscripts-8.45.3-1.i386.rpm。

如果只是提取inittab文件的话,进入救援模式后执行:rpm2cpio /mnt/source/Fedora/RPMS/initscripts-8.45.3-1.i386.rpm | cpio -idv ./etc/inittab; cp etc/inittab /mnt/sysimage/etc。此命令执行时不能讲文件直接恢复至/etc目录, 只能提取到当前目录下, 且恢复的文件所在路径要是绝对路径, 提取成功后, 将文件复制到/mnt/sysimage 目录下的对应目录即可。

 

参考:

无法挂载根分区                         救援模式
无法使用的内核                         救援模式,引导光盘
无法使用的引导装载程序                  救援模式,引导光盘
错误指定的根分区(内核挂载)             grub编辑(指定正确的分区)
rc.sysinit使用的设置错误的配置文件       gurb附加  emergency (或者init=/bin/sh)
错误指定的根分区(rc.sysinit重新挂载)   gurb附加  emergency (或者init=/bin/sh)
服务脚本设置错误的配置文件               grub附加(1 或者 s)
错误配置的认证(或者根口令丢失)          grub附加(1 或者 s)
虚拟机中:
1.关机 - 右键电源 - 启动时进入BIOS - Boot - +/- 号移动CD-ROM Driver 至首位 - F10 保存启动 - Rescue installed system - 选择语言 English - network start  yes -  continue  读写 -  /mnt/sysimage  -  shell start shell -   bash-4.1# -  chroot /mnt/sysimage - sh-4.1# -  修复操作  -  exit chroot - reboot 
 
 
 
 
 
 
 
 
 
 
上一篇:老李分享:持续集成学好jenkins之Git和Maven配置


下一篇:jasper 常用知识点总结