1.壓縮
常見格式 | 壓縮程序 | 解壓程序 | 備註 |
---|---|---|---|
*.Z | compress | uncompress | 被gzip取代 |
*.zip | zip | unzip | |
*.gz | gzip | gunzip | 兼容*.Z和*.zip |
*.bz2 | bzip2 | bunzip | |
*.xz | xz | unxz | |
*.tar | tar | tar | |
.tar. | tar+壓縮 |
1.2 壓縮工具——zip、gzip、bzip2、xz
命令:gzip [ -acdfhklLnNrqtvV19 ] [–rsyncable] [-S suffix] [filenames…]
bzip2 [ -cdfkhqstvzVL123456789 ] [ filenames …]
xz [ -cedfkhqtvzV123456789 ] [ filenames …]
描述:壓縮或者解壓縮文件,查看壓縮文件信息。默認分別自動添加.gz,.bz2,.xz後綴。
常用選項 | 作用 | 備註 |
---|---|---|
-c | 將壓縮的數據輸出到屏幕上 | |
-d | 解壓縮 | |
-f | 目標存在時覆蓋,或原文件是符號鏈接 | |
-k | 不刪除原文件 | |
-q | 不顯示警告信息 | |
-t | 檢驗一個壓縮文件的一致 | |
-v | 壓縮時顯示相關信息 | |
-# | 爲壓縮等級,1-9,默認6 | |
-l | 查看壓縮文件的壓縮比列等信息 | bzip2不支持 |
-r | 遞歸壓縮或解壓目錄中的每個文件,但不是打包 | 僅gzip支持 |
-z | 壓縮 | gzip不支持 |
-s | 使用小內存 | 僅bzip2支持 |
-S SUF | 添加後綴SUF | 僅gzip支持 |
-e | 極限模式 | 僅xz支持 |
1.2 解壓縮工具——unzip、gunzip、bunzip2、unxz
命令:gunzip [ -acfhklLnNrtvV ] [-S suffix] [filenames…]
bunzip2 [ -fkvsVL ] [ filenames … ]
unxz [ -cdfkhqtvzV123456789 ] [ filenames … ]
描述:解壓縮文件,查看壓縮文件信息。
常用選項 | 作用 | 備註 |
---|---|---|
-c | 將壓縮的數據輸出到屏幕上 | |
-d | 解壓縮;默認選項 | |
-f | 目標存在時覆蓋,或原文件是符號鏈接 | |
-k | 不刪除原文件,默認刪除執行完後刪除源文件 | |
-q | 不顯示警告信息 | |
-t | 檢驗一個壓縮文件的一致性 | |
-v | 解壓縮時顯示相關信息 | |
-# | 爲表壓縮等級,1最快,壓縮比最差,預設是6 | |
-l | 查看壓縮文件的壓縮比列等信息 | bunzip2不支持 |
-r | 遞歸壓縮或解壓目錄中的每個文件,但不是打包 | 僅gunzip支持 |
-S SUF | 添加後綴SUF | 僅gunzip支持 |
-z | 壓縮 | gunzip不支持 |
-e | 極限模式 | 僅unxz支持 |
1.3 自解壓工具——gzexe、bzexe
命令:gzexe [ -d ] [exe_file…]
bzexe [ -d ] [exe_file…]
描述:壓縮可執行文件爲運行時自解壓文件,解壓縮自解壓文件。輸出文件會在文件名後加上後綴~。
常用選項 | 作用 |
---|---|
-d | 解壓縮 |
1.4 .Z轉爲.gz格式——znew
命令:znew [ -ftv9PK] [ name.Z … ]
描述:將*.Z文件重新壓縮爲*.gz文件。
常用選項 | 作用 |
---|---|
-f | 強制執行轉換操作,即是目標“.gz”已經存在 |
-t | 刪除原文件前測試新文件 |
-v | 顯示文件名和每個文件的壓縮比 |
-9 | 食用油花的壓縮比,速度較慢 |
-P | 使用管道完成轉換操作,以降低磁盤空間使用 |
-k | 當“.Z”文件比“.gz”文件小時,保留“.Z”文件。 |
2 打包——tar
命令:tar [ -z|j|J ] [ -x|c|t ] [ -v ] -f [ dest ] srv
tar [ -Adr ] [ –delete ] -f [ dest ] srv
描述:將多個目錄或文件打包成一個大文件,同時還可以通過 gzip/bzip2/xz 的支持,將該文件同時進行壓縮! 如果只想解打包單獨的文件,只需目標文件爲該文件即可。
常用選項 | 作用 |
---|---|
-A | 新增文件到已存在的打包文件 |
-c | 建立新的打包文件 |
-C dir | 將打包文件拆放在dir目錄下 |
-d | 找出歸檔文件和文件系統之間的差異 |
-x | 解打包文件 |
-t | 列出打包文件的內容 |
-z | 通過gzip指令處理備份文件 |
-j | 通過bzip2處理文件 |
-J | 通過xz處理文件 |
-f 文件 | 指定要處理的文件,該選項只能在最末尾 |
-v | 顯示指令執行過程 |
-r | 添加文件到打包文件末尾 |
-p | 保留原本權限與屬性,常用於備份(-c)重要的配置文件 |
-P | 保留絕對路徑,即允許備份數據中含有根目錄 |
-delete | 從打包文件刪除文件 |
-exclude=FILE | 在打包過程中,不要將FILE 打包 |
-newer TIME | 僅打包mtime 與 ctime 新於TIME的文件 |
-newer-mtime TIME | 僅打包mtime新於TIME的文件 |
3 分割文件—split
命令:split [OPTION]… [FILE [PREFIX]]
描述:將一個文件分割爲多個文件,合併分割文件則是使用重定向。
常用選項 | 作用 |
---|---|
-a N | 後綴長度N,默認爲2 |
-b SIZE | 每個分割文件的大小 |
-C SIZE | 分割文件中單行最大字節 |
-d | 使用數字而不是字母作爲切割後的小文件的後綴 |
-l | 每個分割文件的行數 |
PREFIX | 分割文件名的前綴爲PREFIX |
4 文件系統備份與還原
4.1 xfs文件系統備份——xfsdump
命令:xfsdump [-L S_label] [-M M_label] [-l #] [-f 備 份名] 待備份文件
xfsdump -I
描述:xfsdump是通過文件系統的UUID來分辨各個備份檔的,因此不能備份兩個具有相同UUID的文件系統,僅支持文件系統的備份,不支持特定目錄的備份,不支持沒有掛載的文件系統備份,必須使用root權限,只能備份XFS,備份文件只能用xfsrestore解析。
常用選項 | 作用 |
---|---|
-L | 紀錄每次備份的 session 標頭,這裏填寫針對此文件系統的簡易說明 |
-M | 紀錄儲存媒體的標頭,這裏可以填寫此媒體的簡易說明 |
-l # | 指定備份等級,0~9, 0完整備份,1-9僅備份與前一級備份的差異 |
-f 備份名 | 產生的文件,/dev/st0裝置文件名或其他一般文件檔名等 |
-I | 從 /var/lib/xfsdump/inventory 列出目前備份的信息狀態 |
4.2 xfs文件系統恢復——xfsrestore
命令:xfsrestore -I
xfsrestore [-f 備份文件 ] [-L S_label] 待復原目錄
xfsrestore [-f 備份文件 ] [-L S_label] [-s] 單一目錄或文件 待復原目錄
xfsrestore [-f 備份文件 ] -r 待復原目錄
xfsrestore [-f 備份文件 ] -i 待復原目錄
描述:文件系統恢復,恢復順序與備份順序一樣。
常用選項 | 作用 |
---|---|
-I | 查詢備份數據,包括 Label 名稱與備份時間等 |
-f | 後面接的就是備份文件 |
-L | 就是 Session 的 Label name 喔!可用 -I 查詢到數據 |
-s | 需要接某特定目錄,即僅復原某一個文件或目錄 |
-r | 如果是用文件來儲存備份數據,那這個就不需要使用。如果是一個磁帶內有多個文件,需要這東西來達成累積復原 |
-i | 進入互動模式,進階管理員使用的!一般我們不太需要操作它 |
4.3 ext文件系統備份——dump
命令:dump [- Suvj] [-level] [-f 備份文件] 待備份文件
dump -w
描述:備份文件系統或目錄。當備份文件系統時可以使用dump的完整功能,和0-9級,可以使用掛載點或設備文件名;當備份目錄時,所有待備份數據都要在該目錄,只支持0級,不支持-u。
常用選項 | 作用 |
---|---|
-S | 僅顯示待備份數據需要多少磁盤空間 |
-u | 將這次dump時間記錄到/etc/dumpdates |
-v | 顯示dump過程 |
-j | 加入bzip2支持,將數據壓縮,默認等級爲2 |
-level | 備份等級,0-9,0是完整備份,1-9爲差異備份 |
-f | 產生的備份文件 |
-w | 列出在/etc/fstab裏面的具有dump設置的分區是否備份過 |
4.4 ext文件系統恢復——restore
命令:restore -t [-f dumpfile] [-h]
restore -C [-f dumpfile] [-D 掛載點]
restore -i [-f dumpfile] [-h]
restore -r [-f dumpfile] [-h]
描述:文件系統恢復,恢復順序與備份順序一樣。
常用選項 | 作用 |
---|---|
-t | 查看備份文件中的重要數據 |
-C | 列出備份文件中與當前文件系統不一樣的文件 |
-i | 互動模式。可以僅還原部分文件 |
-r | 將整個文件系統還原的一種模式,用於還原文件系統的備份 |
-f | 接要處理的備份文件。 |
-D | 與-C搭配,可以查出後面接的掛載點與dump內有不同的文件 |
5 光盤刻錄
5.1 建立映像文件——mkisofs、genisoimage
命令:mkisofs|genisoimage [-o 映像文件 ] [-Jrv] [-V vol] [-m file]
待備份文件… -graft-point isodir=systemdir…
描述:製作映像文件。
常用選項 | 作用 |
---|---|
-o | 後面接你想要產生的那個映像文件。 |
-J | 產生兼容windows機器的文件名結構,可增加文件名長度到64個unicode字符 |
-r | 通過Rock Ridge擴展來記錄unix文件系統的數據,否則只支持dos系統 |
-v | 顯示建置 ISO 文件的過程 |
-V vol | 建立 Volume,有點像Windows在文件管理器內看到的CD title的東西 |
-m file | 要排除的文件,後面的文件不備份到映像檔中,克使用*通配符 |
-graft-point | 將實際路徑與映像文件中的路徑對應起來,否則直接加到映像文件的根目錄 |
5.2 刻錄工具——cdrecord、wodim
命令:wodim –devices dev=/dev/sr0…
wodim -v dev=/dev/sr0 blank=[fast|all]
wodim -v dev=/dev/sr0 -format
wodim -v dev=/dev/sr0 [可用選項功能] file.iso
cdrecord -scanbuSdev=ATA
cdrecord -v dev=ATA:x,y,z blank=[fast|all]
cdrecord -v dev=ATA:x,y,z -format
cdrecord -v dev=ATA:x,y,z [可用選項功能] file.iso
描述:將映像文件刻錄到光盤。
常用選項 | 作用 |
---|---|
-scanbuSdev | 掃瞄磁盤總線並找出可用的刻錄機,後續的裝置爲 ATA 接口 |
–devices | 掃瞄磁盤總線並找出可用的刻錄機,後續的裝置爲 ATA 接口 |
-v | 在 cdrecord 運作的過程中,顯示過程而已。 |
dev=/dev/sr0 | 可以找出此光驅的 bus 地址,非常重要! |
dev=ATA:x,y,z | 後續x,y,z爲刻錄機所有位置,非常重要! |
blank | blank 爲抹除可重複寫入的 CD/DVD-RW,使用 fast 較快,all 較完整 |
-format | 對光盤片進行格式化,但是僅針對 DVD+RW 這種格式的 DVD 而已; |
[可用選項] | 主要是寫入 CD/DVD 時可使用的選項,常見的選項包括有: |
-data | 指定後面的文件以數據格式寫入,不是以 CD 音軌(-audio)方式寫入! |
speed=X | 指定刻錄速度,例如 CD 可用 speed=40 爲 40 倍數,DVD 則可用 speed=4 之類 |
-eject | 指定刻錄完畢後自動退出光盤 |
fs=Ym | 指定多少緩衝存儲器,可用在將映像檔先暫存至緩衝存儲器。預設爲 4m,一般建議可增加到 8m ,不過,還是得視你的刻錄機而定。 |
針對 DVD 的選項 | |
driveropts=burnfree | 打開 Buffer Underrun Free 模式的寫入功能 |
-sao | 支持 DVD-RW 的格式 |
6 其他常見的壓縮與備份工具
6.1 磁盤備份——dd
命令:dd if=”input_file” of=”output_file” bs=”block_size” count=”number”
描述:讀取磁盤裝置的內容,然後將整個裝置備份成一個文件呢!此外還可以備份文件,製作指定大小的文件。dd是一個一個扇區去讀/寫的,即使沒有用到的扇區也會倍寫入備份文件中!因此這個文件會變得跟原本的磁盤一模一樣大!不過,dd就是因爲不理會文件系統,單純有啥紀錄啥,因此不論該磁盤內的文件系統你是否認識,它都可以備份、還原的!
常用選項 | 作用 |
---|---|
if | 就是 input file 囉~也可以是裝置喔! |
of | 就是 output file 喔~也可以是裝置; |
bs | 一個 block 的大小,若未指定則預設是 512 bytes(一個 sector 的大小) |
count | 多少個 bs 的意思。 |
6.2 標準IO備份——cpio
命令:cpio -ovcB > [file|device]
cpio -ivcdu < [file|device]
cpio -ivct < [file|device]
描述:可以備份任何東西,包括裝置設備文件。 cpio 不會主動的去找文件來備份!所以cpio得要配合類似find等可以找到文件名的指令來告知 cpio 該被備份的數據在哪裏。
常用選項 | 作用 |
---|---|
-o | 將數據 copy 輸出到文件或裝置上 |
-B | 讓預設的Blocks可以增加至5120 bytes ,預設是 512 bytes !讓大文件的儲存速度加快 |
還原選項 | |
-i | 將數據自文件或裝置 copy 出來系統當中 |
-d | 自動建立目錄!使用cpio所備份的數據內容不見得會在同一層目錄中,因此必須讓cpio在還原時可以建立新目 |
-u | 自動的將較新的文件覆蓋較舊的文件! |
-t | 需配合 -i 選項,可用在”察看”以 cpio 建立的文件或裝置的內容 |
共享選項 | |
-v | 讓儲存的過程中文件名可以在屏幕上顯示 |
-c | 一種較新的 portable format 方式儲存 |