遠程控制-備份策略-系統故障排除

 

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/sysp_w_picpath/

                 sh-3.2# chroot  /mnt/sysp_w_picpath          【切換至待修復系統】

                 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/sysp_w_picpath

         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系統

 

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


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章