Linux命令學習手冊 cpio命令

2021-08-27 05:25:54 字數 2084 閱讀 5105

cpio [選項] > 檔名或者裝置名

cpio [選項] < 檔名或者裝置名

[功能]

cpio命令是通過重定向的方式將檔案進行打包備份,還原恢復的工具,它可以解壓以「.cpio」或者「.tar」結尾的檔案。

[描述]

選項說明:詳細選項說明參看下表

選項 含義

-o 將檔案拷貝打包成檔案或者將檔案輸出到裝置上。

-i 將打包檔案解壓或者將裝置上的備份還原到系統。

-t 檢視cpio打包的檔案內容或者輸出到裝置上的檔案內容。

-v 顯示打包過程中的檔名稱。

-d 在cpio還原檔案的過程中,自動的建立相應的目錄。

-c 一種較新的儲存方式。

-b 讓預設的blocks可以增大到5120 bytes,預設blocks為512 bytes,這樣做的好處是可以加快訪問速度。

注意,

1)cpio恢復的路徑,如果cpio在打包備份的時候用的是絕對路徑,那麼在恢復的時候會自動恢復到這些絕對路徑下,同理,如果在打包備份用的是相對路徑,還原時也將恢復到相對路徑下。

2)cpio無法直接讀取檔案,它需要每個檔案或者目錄的完整路徑名才能識別讀取,而find命令的輸出剛好做到了這點,因此,cpio命令一般和find命令配合使用。

3)cpio恢復的時候不會自動覆蓋同名檔案。

4)不會建立目錄而是直接解壓到當前資料夾。

[舉例]

*將etc目錄備份:

find ./etc -print |cpio -ov >etc.cpio

*要恢復檔案的時候

*只是檢視etc.cpio檔案,可以使用

輸入之後,輸出如下:

drwxrwxr-x 4 quiethea quiethea 0 nov 4 17:14 etc

-rw-rw-r– 1 quiethea quiethea 0 nov 4 17:07 etc/2

drwxrwxr-x 2 quiethea quiethea 0 nov 4 17:07 etc/11

-rw-rw-r– 1 quiethea quiethea 0 nov 4 17:07 etc/11/11

-rw-rw-r– 1 quiethea quiethea 0 nov 4 17:07 etc/4

drwxrwxr-x 2 quiethea quiethea 0 nov 4 17:07 etc/22

-rw-rw-r– 1 quiethea quiethea 0 nov 4 17:07 etc/3

-rw-rw-r– 1 quiethea quiethea 0 nov 4 17:07 etc/1

-rw-rw-r– 1 quiethea quiethea 0 nov 4 17:07 etc/5

這樣顯示得是將要恢復得檔案得名稱。

[其它]

現在,核心剛剛啟動的時候,會事先掛乙個initrd記憶體檔案系統,這個initrd檔案系統映象可以由cpio製作。參見核心原始碼文件initrd.txt.

*例如我有乙個非常簡單的檔案系統rootfs.製作映象方法如下: cd

root

fsc dr

ootf

sfind . | cpio -c -o -v |gzip -9 -n >../ramdisk.img

這樣,父目錄下會生成乙個ramdisk.img壓縮檔案系統映象。

*將映象解壓恢復成檔案系統的命令: mk

dirr

ootf

s mkd

irro

otfs

cp ramdisk.img rootfs cd

root

fsc dr

ootf

smv ramdisk.img ramdisk.img.gz gu

nzip

ramd

isk.

img.

gzg un

zipr

amdi

sk.i

mg.g

zcpio -i

$rm ramdisk.img

這樣,當前目錄下就是原來rootfs中的內容了。

Linux基礎命令 cpio

cpio 從歸檔中複製檔案,或者複製檔案到歸檔中。此命令的適用範圍 redhat rhel ubuntu centos suse opensuse fedora。cpio命令有三種工作模式 1 copy out mode,cpio指令將檔案複製到歸檔。它讀取標準輸入上的檔名列表 每行乙個 將歸檔包寫...

Linux基礎命令 cpio

cpio 從歸檔中複製檔案,或者複製檔案到歸檔中。此命令的適用範圍 redhat rhel ubuntu centos suse opensuse fedora。cpio命令有三種工作模式 1 copy out mode,cpio指令將檔案複製到歸檔。它讀取標準輸入上的檔名列表 每行乙個 將歸檔包寫...

Linux基礎命令 cpio

cpio 從歸檔中複製檔案,或者複製檔案到歸檔中。此命令的適用範圍 redhat rhel ubuntu centos suse opensuse fedora。cpio命令有三種工作模式 1 copy out mode,cpio指令將檔案複製到歸檔。它讀取標準輸入上的檔名列表 每行乙個 將歸檔包寫...