功能描述
使用cpio命令可以通過重定向的方式將文件進行打包備份及還原恢復,它可以解壓縮以“.cpio”或者“.tar”結尾的文件。
命令語 法
cpio [選項] [目標目錄]
選項含義
選項
含義
-o
執行 copy-out 模式,建立備份檔。
-i
執行 copy-in 模式,還原備份檔。
-I
從文件讀入而不是從標準輸入讀入
-O
指定備份檔的名稱,用來取代標準輸出,也能借此通過網絡 使用另一臺主機的保存設備存放備份檔。
-t
將輸入的內容呈現出來。
-c
使用舊 ASCII 備份格式。
-v
詳細顯示指令的執行過程。
-B
將輸入/輸出的區塊大小改成 5210 Bytes。
-d
如有需要 cpio 會自行建立目錄。
-u
置換所有文件,不論日期時間的新舊與否,皆不予詢問而直接覆蓋。
-r
當有文件名稱需要更動時,采用互動模式。
-R
設置所有文件的所有權信息到指定的用戶或組群
-L
不建立符號連接,直接復制該連接所指向的原始文件。
-A
附加到已存在的備份檔中,且這個備份檔必須存放在磁盤上,而不能放置于磁帶機里。
-f
讓 cpio 解開所有不符合范本條件的文件。
-1
在可行時鏈接文件而不是復制文件
-m
不去更換文件的更改時間。
例
備份/root/abc目錄(使用重向方式實現)
[root@localhost ~]# mkdir /root/www
[root@localhost ~]# cp /root/install.log /root/www
[root@localhost ~]# find /root/www|cpio -ov >/root/www.cpio
查看/root/www.cpio文件內容(使用重定向方式實現)
[root@localhost ~]#?cpio -tv
通過/root/www.cpio文件還原文件(使用重定向方式實現)
[root@localhost ~]#?cpio -iduv
備份/root/www目錄
[root@localhost ~]# find /root/www|cpio -o -O /root/www.cpio
查看/root/www.cpio文件內容
[root@localhost ~]# cpio -t -I /root/www.cpio
通過/root/www.cpio文件還原文件
[root@localhost ~]# cpio -iu -I /root/www.cpio
備份當前目錄為/root/www2.cpio文件,如果有符號鏈接文件,則將鏈接的目標文件進行備份
[root@localhost ~]# ls |cpio -o -O /root/www2.cpio -L
通過/root/www.cpio文件還原文件,但是不還原/root/www/install.log文件
[root@localhost ~]# cpio -i -I /root/www.cpio -f?/root/www/install.log
通過/root/www.cpio文件還原文件,并且設置還原出來的目錄和文件的用戶所有者和組群所有者為zhangsan
[root@localhost ~]# cpio -i -I /root/www.cpio -R zhangsan.zhangsan
通過/root/www.cpio文件還原文件,并且更改還原出來的目錄和文件名稱
[root@localhost ~]# cpio -i -I /root/www.cpio -r
將/root/www重命令為-> /root/ppp? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //更改目錄名稱
將/root/www/install.log重命令為-> /root/ppp/install.log? ? //更改文件名稱
查看tar文件/root/www.tar的內容。
[root@localhost ~]# cpio -t -I?/root/www.tar
解包/root/www.tar文件
[root@localhost ~]# cpio -iu -I?/root/www.tar