歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux技術 >> linux學習日記六 文件與文件系統的壓縮與打包

linux學習日記六 文件與文件系統的壓縮與打包

日期:2017/3/1 18:03:41   编辑:Linux技術

====gzip壓縮命令====

# gzip [-cdtv#] 文件名 –> 可以解開compress,zip,gzip軟件壓縮的文件

-c:將壓縮數據輸出到屏幕上,可通過數據重定向來處理

-d:解壓縮參數

-t:驗證一個壓縮文件的一致性,看看文件是否有無錯誤

-v:顯示源文件/壓縮文件的壓縮比等信息

-#:壓縮等級,-1最快,但壓縮比最差,-9最慢,但壓縮比最好。默認-6

====bzip2壓縮命令====

# bzip2 [-cdkzv#] 文件名

-c:將壓縮過程中產生的數據輸出到屏幕上

-d:解壓縮命令

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

-z:壓縮參數

-v:顯示源文件/壓縮文件的壓縮比等信息

====壓縮/解壓縮並打包命令tar====

# tar -jcvf file.tar.bz2 file1 file2 file3… –> 利用bzip2來壓縮並打包

# tar -jxvf file.tar.bz2 -C 目錄 –> 利用bzip2解壓縮到指定文件夾

# tar -jtvf file.tar.bz2 –> 查看bz2的壓縮文件內容

——————————————————————————-

# tar -zcvf file.tar.gz file1 file2 file3… –> 利用gzip來壓縮並打包

# tar -zxvf file.tar.gz -C 目錄 –> 利用gzip來解壓縮到指定文件夾

# tar -ztvf file.tar.gz –> 查看gz的壓縮文件內容

——————————————————————————–

-p:保留備份數據的原本權限與屬性,常用語備份(-c)重要的配置文件(常用)

-P:保留絕對路徑,即允許備份數據中含有根目錄存在之意(不常用)

–exclude=FILE:在壓縮過程中,不要將FILE打包

如果只想解開一個單獨的文件,可以使用命令:

先查看:# tar -jtvf file.tar.bz2 | grep ‘myfile’

# tar -jxvf file.tar.bz2 待解開文件名

====dump備份完整的文件系統====

# dump -S /dev/sda1 –> 僅僅列出需要多少磁盤空間才能備份

# dump -0u -f /root/boot.dump /boot –> 備份等級為0表示完整備份,-u表示並且將dump的時間記錄到/etc/dumpdatas文件中

如果是一個目錄而非單一的文件系統,則只能完整備份並且不能使用-u參數,而且需要備份的數據都在這個目錄下:

# dump -0j -f /root/etc.dump.bz2 /etc

====restore 恢復dump備份的東東====

# restore [-tir] -f dumpfile

# restore -C -f dumpfile -D 掛載點 –> 比較dump與實際文件

-t:查看dump文件內容

-i:進入互動模式

-r:整個文件系統的還原

====光盤寫入工具====

* 先將所需要備份的數據構建成一個鏡像文件(ISO),利用mkisofs命令

* 將該鏡像文件刻錄至光盤或DVD中,利用cdrecord命令

# mkisofs -o 鏡像文件 -rv -m file 待備份文件… -v vol -graft-point isodir=systemdir

舉個例子:# mkisofs -r -v ‘linux_file’ -o /tmp/system.img -m /home/lost+found -graft-point /root=/root /home=/home /etc=/etc

接下來講講光盤刻錄工具cdrecord

# cdrecord -scanbus dev=ATA <==查詢刻錄機的位置

# cdrecord -v dev=ATA:x,y,z blank=[fast|all] <==抹除重復讀寫片

# cdrecord -v dev=ATA:x,y,z -format <==格式化DVD+RW

# cdrecord -v dev=ATA:x,y,z [參數列表] file.iso

參數列表:

-data:指定以數據格式寫入,而不是以默認的CD音軌(-audio)方式寫入

speed=X:指定刻錄速度,例如CD可用speed=40,DVD可用speed=4之類。

-eject:刻錄完自動彈出

fs=8m指定多少緩沖存儲器,默認4M,可用增加到8M

針對DVD參數功能:

driveropts=burnfree:打開Buffer Underrun Free模式的寫入功能

-sao:支持DVD-RW的格式

一個完整的利用DVD-RW刻錄的例子:

先擦除數據:# cdrecord -v dev=ATA:1,1,0 blank=fast

開始寫入:# cdrecord -v dev=ATA:1,1,0 fs=8m -data -sao driveropts=burnfree /tmp/system.img

# mount /dev/cdrom /mnt

# df -h /mnt <==看看光盤裡面有沒有刻錄的數據吧

# umount /mnt <== 卸載光盤

====備份工具dd====

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

# dd if=/dev/hdc of=/tmp/mbr.bak bs=512 count=1 <==將自己的磁盤第一個扇區備份下來(放置MBR和磁盤分區表的那個扇區)

注:tar用來備份重要數據,而dd用來備份整塊分區或者是整塊磁盤,dd甚至可以完整復制啟動扇區(boot sector)的區塊,這個是tar無法做到的

Copyright © Linux教程網 All Rights Reserved