Linux系統有系統還原這一說嗎?

梅宜明


應邀回答行業問題

對於Linux系統,沒有系統還原一說。對於windos系統有系統還原點還原,還有GHOST還原。Linux大多是做為服務器操作做系統,它做為企業業務系統的載體,為用戶提供服務,業務數據最為重要,需要經常備份。

目前虛擬化、雲平臺盛行,只要業務數據不丟失,幾秒鐘就可以複製一個操作系統,所以操作系統備份就顯得不重要了。

當然可以選擇性備份系統配置文件,在需要時快速換還原,比較常用的就是tar命令。如果非要對Linux系統做備份,可以使用dd命令,它可以直接讀取磁盤,類似於磁盤拷貝,我簡單說明下使用方法。

dd備份還原Linux系統

Linux中dd命令系統是默認安裝的,它可以對磁盤的某一個分區或者磁盤的一個偏移範圍進行克隆,這裡對整塊硬盤進行克隆,我們需要mount一塊比原始硬盤更大的磁盤,才能使用這個命令,對於原始硬盤來說既讀取又寫入,那樣就會亂套了。

從命令可以簡單理解,if就是原始文件,of就是目標文件,bs就是每個塊1M,count讀取5000個塊,那麼備份的數據就是5G。

#dd if=/dev/vda of=/mnt/img.bin bs=1M count=5000

這樣寫比較佔用空間,可以在備份的同時把鏡像文件直接壓縮,就可以節省不少空間。

#dd if=/dev/vda | gzip >/mnt/img.gz

我們利用管道符號,將輸出的字符傳遞給gzip做為壓縮的原始數據,最後得到壓縮包。當然我們備份的硬盤如果是一塊新硬盤,得到的鏡像會比較小。如果是使用過很長時間的硬盤,即使壓縮也不會節省多少空間,因為磁盤連續字符比較少。

備份完了就需要還原,同理可以使用gzip解壓,這裡要注意在解壓縮時,需要保留原始文件使用-c參數,dd參數of做為輸出接收解壓後的數據,命令如下:

#gzip -dc /mnt/img.gz | dd of=/dev/vda

至此,使用dd備份還原Linux系統完畢,當然dd命令還有很多用法,比如測試硬盤I/O、擦除硬盤數據等。

  • 在不同塊下寫1G數據測試磁盤I/O

#dd if=/dev/urandom of=test.binbs=4k count=256000#dd if=/dev/urandom of=test.bin bs=8k count=128000#dd if=/dev/urandom of=test.bin bs=1M count=1000#dd if=/dev/urandom of=test.bin bs=4M count=256
  • 擦除不用硬盤的數據,防止被惡意讀取照片什麼的。

#dd if=/dev/urandom of=/dev/vda bs=4M

tar備份文件

比如我們要備份linux系統/etc/、/boot目錄,進入/目錄執行:

#tar -zcvf system.tar.g /etc/ /boot

還原時進入更目錄執行:

#tar -zxvf system.tar.gz

tar 用法還有很多,在上圖的圖片中已經詳細說明了,有感興趣的可查一下。

總結,Linux系統想要使用類似windos一鍵還原的功能,那就使用dd命令整盤拷貝吧。

以上希望能夠幫助到,歡迎評論留言。


IT大叔Cc


Linux也有類似的系統還原工具,我用的是timeshift,圖形界面,操作相對簡單,不需要特別設置很多參數。對於初學者來說還是很實用的。dd和tar備份有點麻煩。

具體安裝使用可以自行搜索(適用於Debian、Ubuntu和衍生Linux系統)。



山204131956


昨天裝deepin,發現高級啟動選項裡有個recovery啟動,從字面上理解,選擇這個應該就是還原系統了。不知道對不對,有待以後去驗證。


逍遙遊ing


Linux 下面的系統還原都是企業級的還原軟件,很多還有傳統的磁帶備份支持功能。Linux 本身的設計就是隻有管理員(Linux 下面叫根用戶)才能操控整個網絡,用戶使用計算機時,只能修改自己個人目錄的文件,所以一般不需要系統級別的備份,都是數據備份為主。 如果樓主你想備份系統,傳統的 tar 命令或者 dd 命令就可以了。前者是文件級別的備份,後者是基於整個存儲器設備數據流的備份。


分享到:


相關文章: