首页 > 代码库 > 远程控制-备份策略-系统故障排除

远程控制-备份策略-系统故障排除

 

Linux远程控制

Linux备份策略

系统故障排除

#################################################

 

 

一、Linux远程控制

 

OpenSSHSecure SHell

    服务端程序:sshd

    服务配置:/etc/ssh/sshd_config

           Port 22                        SSH协议的标准端口】

           UseDNS no                          【不使用DNS解析】

 

Linux客户端的SSH程序

     远程登录:

         ssh用户名@服务器地址

                ssh -X  用户名@服务器地址

         **客户端得运行在桌面下,手动加载图形程序)

 

     远程安全复制:

         scp-r 用户名@服务器地址:/文件路径  本地路径

               scp -r 本地文件或目录路径  用户名@服务器地址:远程路径

 

     远程安全FTPsftp 用户名@服务器地址

 

Windows客户端的SSH程序

   SecureCRT

   Putty....

   F-Secure

WinSCP

 

支持X图形

screen 屏幕共享

 

 

 

二、Linux备份策略

 

   基本备份方式

          cp(选项 -p、制作镜像)               【选项 -p 保持权限等属性】

  

          tar 完全备份

         --newer-mtime  yyyy-mm-dd:备份..后修改过的文档

         -p:小写的-p,保留原有的属性/权限

         -P:大写的-P,保留原有的绝对路径不变

         --exclude:排除不需备份的文档

         **执行“stat  文件”可查看指定文件的详细时间(访问、修改、改变)属性

 

   设备克隆工具

         dd  if=输入设备  of=输出设备

         dd  if=输入设备  of=输出设备  bs=块大小  count=块数量

 

         **if --- Input Fileof --- Output File

         **bs --- Block Size

 

 

三、系统故障排除

 

故障修复

   1. 遗忘root密码

         1)重启,在GRUB菜单按e键,

         2)修改kernel行(添加single,或字母s、数字1),回车保存

         3)按 b 键启动,免密码验证进系统

         4)重设 root 的口令

 

   2. EXT分区超级块故障

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

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

         2)重新挂载/重启时报错

                 [root@svr5 ~]# mount  -o remount /dev/sdb1  /mnt

                 .. .. mount: you must specify thefilesystem type

         3)进修复模式执行fsck修复

                 fsck -y -t ext3 /dev/sdb1

         4)重新挂载及访问分区

 

   3. 检测磁盘坏道

         badblocks    [选项]...    磁盘或分区

        

         **选项 -s 显示进度,-v 输出详细信息

         **比如 badblocks  -sv  /dev/sdb

 

   4. MBR扇区破坏

         1)备份MBR扇区,存放到其他磁盘(切记!!!!

                 ** 假设将要备份磁盘/dev/sdaLinux系统所在盘)的MBR记录

                 ** 另一块磁盘上的分区/dev/sdb1已挂载到/mnt/sdb1/

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

       2)破坏MBR扇区数据,重启后无法进系统

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

         3RHEL5光盘引导,进入救援模式(获得临时Shell

                 boot: linux rescue

         4)从备份文件中恢复MBR扇区

                 sh-3.2# mkdir  /tdir                           【创建临时挂载点】

                 sh-3.2# mount  /dev/sdb1 /tdir                 【挂载存放有MBR备份的分区】

                 sh-3.2# dd  if=/tdir/sda.mbr  of=/dev/sda  【回写MBR备份】

         5)重启后,MBR恢复正常

                 sh-3.2# exit                       【退出修复环境,自动重启】

 

   5. GRUB引导故障

         1)先备份,再移除/boot/grub/grub.conf文件

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

         2)重启后无法进系统

                 会停滞在“grub>”提示符状态

         3)在 grub> 提示符后,手动执行引导

                 grub> root (hd0,0)                               【进/boot分区】

                 grub> kernel /vmlinuz-2.6.18-348.el5ro root=LABEL=/        【起内核、找根分区】

                 grub> initrd/initrd-2.6.18-348.el5.img                   【起initrd

                 grub> boot                                          【引导Linux系统】

 

                 ** 不足:操作比较麻烦,最好先知道内核、initrd镜像、根分区的位置

                 ** 若手动引导失败,可进RHEL5光盘救援模式,再做恢复操作(参考45步)

 

         4)进入系统后,重建grub.conf 配置文件

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

                 reboot

 

         5)【补注】若MBR中的引导器损坏,则grub>将不可用

                 ** 先进RHEL5光盘的rescue模式

                 ** 待修复的Linux系统会自动挂载到/mnt/sysimage/

                 sh-3.2# chroot  /mnt/sysimage          【切换至待修复系统】

                 sh-3.2# grub-install  /dev/sda    【重装GRUB引导器】

                 sh-3.2# exit                       【退出chroot环境】

                 sh-3.2# exit                       【退出修复环境,自动重启】

 

   6. 系统文件丢失(/etc/inittab

         故障现象:

                 启动提示 ... INIT: No inittabfile found

                 系统停滞,无法完成初始化

         解决思路:

                 进入急救模式,从备份文件中恢复

                 或者,在急救模式中重装initscripts 软件包

 

         sh-3.2#chroot  /mnt/sysimage

         sh-3.2#mount  /dev/hdc  /mnt         //挂载RHEL5光盘设备

         sh-3.2#rpm  -ivh --force /mnt/Server/initscripts-*.rpm

 

#################################################

 

 

############################    ###################

##   备选扩展:                              ##    ##

############################    ###################

 

    7. 误删除恢复 rm -rf

         1)注意不能再写入—— umount

         2)准备一个恢复工具,比如 extundelete

                 查看列表:extundelete  --inode 2 /dev/sda1

                 恢复所有:extundelete  --restore-all /dev/sda1

                 恢复指定文件:extundelete  --restore-file  文件路径  /dev/sda1

                 恢复指定目录:extundelete  --restore-directorie  目录路径  /dev/sda1

 

                 ** extundelete  --help 获取帮助

 

   8. i节点耗尽验证(尽管有磁盘空间,但已无法写入文件)

         建一个小分区(40MB),

         格式化:mkfs -text3 /dev/sdb10

                   |-->创建超级块(superblock)—— inode数量、blocks数量

                查看超级块:tune2fs-l /dev/sdb10

         快速消耗i节点资源:

                 mkdir /mnt/testdir

                 mount /dev/sdb10  /mnt/testdir

                 for i  in $(seq 15000) ; do  touch "/mnt/testdir/file$i.txt" ;  done

                                             |--> 设一个超过可用i节点数量的数值

 

         **seq命令用来生成一个数字序列,for是一个循环语句(Shell课程会详细介绍)

         **inodei节点—— 档案编号,每一个文件都需要

         **文件名 --> i节点 --> 文件内容

 

   9. 软链接、硬链接

         ln-s 建软链接:   

                 链接文件 --> 被链接文件 -->i节点 -->文件内容

                 ** 一旦删除“被链接文件”,剩下的“链接文件”将不可用

 

         ln建硬链接:

                 链接文件 --> i节点 -->文件内容

                 被链接文件 --> i节点 -->文件内容

                 ** 即使删除“被链接文件”,剩下的“链接文件”仍然可用

 

         主要特点:

                 ** 软链接可以跨EXT文件系统(源和目标可在不同EXT分区)

                 ** 硬链接不能跨EXT文件系统(源和目标必须在同一个EXT分区)

                 ** 不能为目录建立硬链接,而软链接是可以的

 

   10. logwatch日志报告

         logwatch--range all --print | less

        

         **--range可以指定为 allyesterdaytoday

         **未指定 --range 选项时,缺省只列出前一天(yesterday)的日志报告

 

   11. 提取rpm包内的个别文件

         1)查看文件清单

                 rpm -qpl  softname-1.0.rpm

         2)确认相对路径

                 rpm2cpio  softname-1.0.rpm  |  cpio-t

         3)提取个别文件

                 rpm2cpio  softname-1.0.rpm | cpio   -idv   文件相对路径

         4)提取所有文件

                 rpm2cpio  softname-1.0.rpm | cpio   -idv

        

         选项说明:

                 -t--list:查看可用的文件列表

                 -i--extract:提取文件

                 -d--make-directories:创建目录结构

                 -v--verbose:详细输出

 

   12. wget下载整个网站:

         wget  -crpk -np http://www.lfs.org.cn/book/index.html

 

         选项说明:

                 -r--recursive:递归下载所有链接

                 -p--page-requisites:包括页面显示必需的目标

                 -k--convert-links:下载完成后转换链接目标以便本地浏览

                 -np--noparent:只向下递归,防止下载父级链接或外部链接等网页对象

                 -c--continue:支持断点续传

                 -t--tries=:指定重试次数

 

         **LFS项目,Linux From Scratch

         **—— 从零开始,全手工打造自己的Linux系统

 

#################################################


远程控制-备份策略-系统故障排除