教你在Linux中如何歸檔和備份
保護系統的資料安全是計算機系統管理的重中之重,解決方法就是透過實時備份系統檔案,來保護資料,也就是常說的資料容災備份。在這篇文章中,我們將會描述幾個常用來管理檔案集合的命令程式,即檔案壓縮程式和歸檔程式,從而掌握在 系統中如何歸檔和備份資料。
壓縮檔案
• gzip – 壓縮或者展開檔案
• bzip2 – 塊排序檔案壓縮器
資料壓縮的原理就是一個刪除冗餘資料的處理過程。壓縮演算法或任務主要分為兩大類,即無失真壓縮和有失真壓縮。無失真壓縮的目標是在實現壓縮的基礎上,保留原始檔案的所有資料。而有失真壓縮呢,在執行壓縮操作的過程中會刪除一些資料,從而實現更大的壓縮目標。 有失真壓縮的 例項 有JPEG (圖 像)檔案和 MP3 (音訊)檔案。我們 主要描述 完全無失真壓縮, 原因是 計算機中的 大多數資料是不能允許丟失任何資料的。
Gzip 命令
gzip 命令支援 壓縮一個或 著 多個檔案。當執行gzip 命令時, 那麼 原始檔案的壓縮版會替代 原始檔案。相對應的 gunzip 命令將 壓縮檔案復原為沒有被壓縮的版本。
例項如下:
[ centos @ linuxprobe ~]$ ls -l /etc > test.txt
[centos@linuxprobe ~]$ ls -l foo.*
-rw-r--r-- 1 centos centos 15738 2008-10-14 07:15 test.txt
[centos@linuxprobe ~]$ gzip test.txt
[centos@linuxprobe ~]$ ls -l foo.*
-rw-r--r-- 1 centos centos 3230 2008-10-14 07:15 test.txt.gz
[centos@linuxprobe ~]$ gunzip test.txt.gz
[centos@linuxprobe ~]$ ls -l foo.*
-rw-r--r-- 1 centos centos 15738 2008-10-14 07:15 test.txt
首先,我們建立了一個名為 test.txt 的文字檔案 。其次,我們執行 gzip 命令, 將 原始檔案替換為一個叫做test.txt.gz 的壓縮檔案。在 foo.* 檔案列表中, 檢視得出 原始檔案已被壓縮檔案替代, 大小 約 為 原始文 件的五分之一,許可權和時間戳相同。
最後,我們執行 gunzip 程式來解壓縮檔案。隨後, 壓縮檔案解壓縮後得到的檔案,其大小、許可權和時間戳都無變化,實現了無失真壓縮。
bzip2 命令
與gzip 命令 相似, 區別是 使用不同的壓縮演算法,舍 棄了壓縮速度,從而實現更高的壓縮級別; 由bzip2 壓縮的檔案,用副檔名 .bz2 來表示 。在大多數情況下,它的工作模式及方式等同於 gzip 命令 。
bunzip2 和 bzcat 命令用來 解壓縮檔案。
bzip2 命令 也帶有bzip2recover 程式,其會試圖恢復受損的 .bz2 檔案。
例項如下:
[centos@linuxprobe ~]$ ls -l /etc > test.txt
[centos@linuxprobe ~]$ ls -l test.txt
-rw-r--r-- 1 centos centos 15738 2008-10-17 13:51 test.txt
[centos@linuxprobe ~]$ bzip2 test.txt
[centos@linuxprobe ~]$ ls -l test.txt.bz2
-rw-r--r-- 1 centos centos 2792 2008-10-17 13:51 test.txt.bz2
[centos@linuxprobe ~]$ bunzip2 test.txt.bz2
歸檔檔案
• tar – 打包 檔案 工具
• zip – 打包和壓縮檔案
與檔案壓縮相互結合的檔案管理任務是歸檔。歸檔就是收集多個檔案,並將它們捆綁成一個大檔案的過程。歸檔經常作為系統備份的組成部分來使用。當將一些舊的資料從一個系統遷移到某種型別的長期儲存裝置中時,也會用到歸檔程式。
tar
tar 命令可以說是 用來歸檔檔案的經典工具。 其檔案的副檔名為 .tar 或者 .tgz ,它們各自 所表達的含義是 “普通”的 tar 包和被 gzip 程式壓縮過的 tar 包。一個 tar 包可以由一組獨立的檔案,一 個或者多個目錄,或者兩者混合體組成。
命令語法如下:
tar mode[options] pathname...
mode 是指以下操作模式 之一:
模式說明
c 為檔案和/或目錄列表建立歸檔檔案。
x 抽取歸檔檔案。
r 追加具體的路徑到歸檔檔案的末尾。
t 列出歸檔檔案的內容。
[centos@linuxprobe ~]$ tar xf ../ txt .tar
[centos@linuxprobe ~]$ ls
txt
透過檢視 /foo/playground 目錄中的內容,這個歸檔檔案已被 建立 , 同時也建立了一個原始檔案副本。
注意:從歸檔檔案中抽取的檔案和目錄的所有權由執行此復原操作的使用者所擁有,不屬於原始所有者。
zip
zip 命令 既是 一個 壓縮工具, 同時 也是一個打包工具。在Linux 中 gzip 是主要的壓縮 命令 程式, 而 uzip 是主要的解壓縮命令程式。
zip/unzip 命令程式 可以完成 一些大家平常的一些 基本操作 , 它們兩個都有許多選項 引數 , 從而 增加了 運用靈活性。 zip 和 unzip 命令的說明手冊 也 都相當不錯,並且 包含了許多例項。值得注意的是,這些程式的主要用途是為了和 Windows 系統交換檔案,而不是在 Linux 系統中執行壓縮和打包操作, tar 和 gzip 程式在 Linux 系統中更 常用 。
在這裡討論的所有命令的手冊文件都講解的清清楚楚明明白白,且附上有用的例項。我們需要熟練掌握它們。在編寫這篇文章過程中我還參考了 這本書,內容很貼近實踐,很有理論指導實踐價值的一本書籍。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69955379/viewspace-2777150/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 在Linux中,如何進行備份或歸檔檔案(tar 命令)?Linux
- 在 Linux 中如何歸檔檔案和目錄Linux
- 在Linux中,如何建立檔案系統的備份?Linux
- oracle 如何不備份已經備份的歸檔Oracle
- 在Linux中,如何使用tar命令建立和恢復備份?Linux
- 在Linux中,如何配置和管理系統備份和恢復策略?Linux
- 在Linux中,如何備份一個資料庫?Linux資料庫
- RMAN備份整庫和歸檔日誌的方法
- Oracle設定多個歸檔路徑生成多份歸檔日誌,Rman備份時也只備份其中的一份歸檔日誌Oracle
- 在Linux中,什麼是快照備份?Linux
- rman開啟備份優化對備份歸檔的影響優化
- 如何使用 TimeShift 備份和還原 Ubuntu LinuxUbuntuLinux
- 在Linux中,如何建立、刪除和修改檔案?Linux
- 在Linux中,mysql 資料備份工具有哪些?LinuxMySql
- 如何快速找到備份過最近、最大序號的歸檔日誌
- Oracle使用備份檔案集恢復歸檔日誌Oracle
- 如何備份及恢復Linux檔案許可權Linux
- 在Linux中,如何備份某個使用者的任務計劃?Linux
- DM7使用DMRMAN執行歸檔備份
- 【RMAN】Oracle中如何備份控制檔案?備份控制檔案的方式有哪幾種?Oracle
- 手工rm刪除歸檔日誌對備份歸檔日誌的影響
- ORACLE NBU調取oracle rman指令碼備份歸檔不自動刪除歸檔Oracle指令碼
- 如何使用 Find 和 Locate 在 Linux 中搜尋檔案Linux
- MySQL中如何選擇合適的備份策略和備份工具MySql
- dg丟失歸檔,使用rman增量備份恢復
- 在 Linux 中如何移動檔案Linux
- 在Oracle中,如何定時刪除歸檔日誌檔案?Oracle
- 在Linux中,如何管理和最佳化日誌檔案?Linux
- 如何從Active Backup for Business備份中恢復檔案
- Linux中XFS檔案系統的備份,恢復,修復Linux
- Linux中檔案/檔案系統的壓縮、打包和備份總結(基於rhel7)Linux
- Linux mysql 備份和匯入命令LinuxMySql
- 在Linux中,如何建立、檢查和修復檔案系統?Linux
- 在Linux中,如何實現檔案系統的快照和克隆?Linux
- 在Linux中,如何建立、移動和刪除檔案和資料夾?Linux
- 【備份】RMAN中對控制檔案的幾種備份方法
- 在 Linux 中如何刪除檔案中的空行Linux
- 如何將Docker中GitLab資料備份到宿主Linux上DockerGitlabLinux