#################
###linux系统恢复技术
#################
linux中MBR分区原理:
446 Byte 硬盘主引导记录
64 Byte 硬盘分区表(linux最多有四个分区,每个16byte)
2 Byte 硬盘有效标志
=======
如果 mbr 分区前446个字节坏了, 可以用光驱启动修复
dd if=/dev/zero of=/dev/vda bs=446 count=1
进入挽救模式后,执行 grub2-install /dev/vda
========
如果引导文件坏了或丢失,系统启动不了(grub.cfg),
在重启系统后的界面输入以下命令:
set root='hd0,msdos1' ##hd0 代表第一块硬盘,msdos1 代表第一个分区
linux16 /boot/vmlinuz-3........ root=/dev/vda1
initrd16 /boot/initramfs-3...
boot
开机之后执行 grub2-mkconfig
========
误删或其他原因导致的内核文件丢失 如/boot/vmlinuz...... 丢失
1>可以使用网卡启动
下载镜像里的 Packages/kernel-3........rpm
rpm2cpio kernel-3.... | cpio -id
解压后会有一个boot目录
在boot目录里面拷贝丢失的文件到 /boot 下就ok了
2>使用光驱启动的话
进入挽救模式, chroot /mnt/sysimages
mount /dev/cdrom /opt
cp /opt/Packages/kernel-3....rpm /mnt
rpm2cpio kernel-3.... | cpio -id
解压后会有一个boot目录
在boot目录里面拷贝丢失的文件到 /boot 下就ok了
###########
当boot下的文件全部丢失后
###########
进入挽救模式,逐一恢复启动文件
grub2 grub2/grub.cfg initramfs-$(uname -r).img vmlinuz-$(uname -r)
1>恢复grub2:
grub2-install /dev/vda
2>恢复vmlinuz-$(uname -r):
yum reinstall kernel-$(uname -r)
或者拷贝一个相同版本镜像下的内核文件:
..iso/Packages/kernel.$(uname-r).rpm
rpm2cpio kernel.$(uname -r).rpm | cpio-id
cp kernel.$(uname -r) /boot
3>恢复initramfs-$(uname -r).img:
mkinitrd initramfs-$(uname -r).img$(uname -r)
4>恢复grub2/grub.cfg:
grub2-mkconfig >/boot/grub2/grub.cfg
启动级别
runlever0.target -> poweroff.target
runlever1.target -> rescue.target
runlever2.target -> multi-user.target
runlever3.target -> multi-user.target
runlever4.target -> multi-user.target
runlever5.target -> grapical.target
runlever6.target -> reboot.target
设定启动级别
• systemctl set-default + 启动级别
• /etc/systemd/system/default.target
##########
网络共享文件服务
##########
=====
cifs
yum install samba-client -y
vim /etc/yum.repos.d/rhel_dvd.repo
yum clean all
smbclient -L //172.25.254.250/
smbclient -L//172.25.254.250/westos1
mount //172.25.254.250/westos1 /mnt -ousername=guest
=====
nfs
yum install autofs -y
systemctl start autofs
cd /net/172.25.254.250
ls
cd nfsshare/nfs1
df
更改自动挂载时间:
7.0系统:
/etc/sysconfig/autofs
7.2系统:
/etc/autofs.conf
更改自动挂载目录:
/etc/auto.master
--------
/mnt 172.25.254.250
vim /etc/autofs.mnt