linux文件系統的壓縮,打包與備份

linux系統常見的壓縮文件擴展名:

*.Z               compress程序壓縮的文件
*.Zip            Zip程序壓縮的文件
*.gz              gzip程序壓縮的文件
*.bz2            bzip2 程序壓縮的文件
*.xZ              xZ程序壓縮的文件
*.tar             tar程序打包的數據,沒有壓縮過
*.tar.gz         tar程序打包的文件,經過gzip的壓縮
*.tar.bz2       tar程序打包的文件,經過bzip2的壓縮

*.tar.xz          tar程序打包的文件,經過xz的壓縮

linux上常見的壓縮指令就是gzip,bzip2以及xz,至於compress已經退流行了。

 

1 、gzip,zcat/zmore/zless/zgrep

gzip語法:gzip [-cdtv#] 文件名

            參數:-c  : 將壓縮的數據輸出到屏幕上,可透過數據流衝到向來處理

                      -d  :解壓縮的參數

                      -t   :可以用來檢驗一個壓縮文件的一致性,看文件有無錯誤

                      -v  :可以顯示出原文件/壓縮文件的壓縮比等信息

                      -# :#爲數字,1~9代表壓縮等級,-1最快,壓縮比最差,-9最慢,但壓縮比最好,默認是-6.

查看壓縮文件的內容:  zcat 文件名.gz  /zmore 文件名.gz /zless 文件名.gz

解壓縮:  gzip -d 文件名.gz

查找關鍵詞:zgrep -n '關鍵詞' 文件.gz

 

2、bzip2,bzcat/bzmore/bzless/bzgrep

bzip2的壓縮比比gzip好,至於語法則幾乎與gzip相同。

 

bzip2語法:bzip2 [-cdkzv#] 文件名

            參數:-c  : 將壓縮的數據輸出到屏幕上,可透過數據流衝到向來處理

                      -d  :解壓縮的參數

                      -k   :保留源文件,而不會刪除原始文件

                      -z   :壓縮的參數(默認值,可以不加)

                      -v  :可以顯示出原文件/壓縮文件的壓縮比等信息

                      -# :#爲數字,1~9代表壓縮等級,-1最快,壓縮比最差,-9最慢,但壓縮比最好,默認是-6.

查看壓縮文件的內容:  bzcat 文件名.gz  /bzmore 文件名.gz /bzless 文件名.gz

解壓縮:  bzip2 -d 文件名.gz

查找關鍵詞:bzgrep -n '關鍵詞' 文件.gz

 

3、 xz,xzcat/xzmore/xzless/xzgrep    

  xz的壓縮比比把bizp2還要高,其用法則與bzip2幾乎一模一樣,本文就不在多說了,參考bzip2即可。但是相對的更好的壓縮比意味着要話費更多的壓縮時間。

 

4、tar包

語法如下:

tar [-z|-j|-J] [cv] [-f 待建立的新包名] filename    打包與壓縮
tar [-z|-j|-J] [tv] [-f 現有的tar包名]              查看包名
tar [-z|-j|-J] [xv] [-f 現有的tar包名]  [-C 目錄]   解壓縮

 

選項與參數:

-c : 建立打包文件
-t : 查看打包文件的內容包含哪些文件名
-x : 解打包或解壓縮的功能,搭配-C在特定目錄中揭開
-z : 通過gzip的支持進行壓縮/解壓縮,文件名後綴最好爲*.tar.gz
-j : 通過bzip2的支持進行壓縮/解壓縮,文件名後綴最好爲*.tar.bz2
-J : 通過xz 的支持進行壓縮/解壓縮,文件名後綴最好爲*.tar.xz
-v : 在壓縮/解壓縮的過程中,將正在處理的文件名顯示出來
-f : -f後面要立即接將要被處理的文件名,所以在將參數連起來寫的時候,需要將f放在最後
-C : 解壓縮指定目錄
-p(小寫) : 保留備份數據的原本權限與屬性
-P(大寫) : 保留絕對路徑,即允許備份數據中含有根目錄存在
--exclude=FILE : 在壓縮的過程中,不要講FILE打包


範例一:  壓縮     tar -jcvf filename.tar.bz2  filename
              查詢     tar -jtvf filename.tar.bz2 
              解壓縮 tar -jxvf filename.tar.bz2 -C 欲解壓縮的目錄

5.  dd命令

dd if=''input_file'' of=''output_file'' bs=''block_size'' count=''number''

選項與參數:

if :   就是input file 

of :  就是output file

bs:  規劃的一個block塊的大小,如果沒有指定就預設是512bytes

count:多少個bs的意思

 

範例一:將/etc/passwd 備份到 /tmp/passwd.bak 當中

 dd if=/etc/passwd of=/tmp/passwd.back

 

 

 

 

 

 

 

 

 

 

 

 

 

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