cpio 文件格式
用途
描述副本进/出 (Cpio) 归档文件。
描述
Cpio 实用程序将备份和恢复文件。 这些文件将以 Cpio 格式保存在备份介质上。
当 Cpio 命令与 -c 标志配合使用时, Cpio 结构的头将如下所示:
sscanf(Chdr,"%6ho%6ho%6ho%6ho%6ho%6ho%6ho%6ho%11lo%6ho%11lo%s",
&Hdr.h_magic, &Hdr.h_dev, &Hdr.h_ino, &Hdr.h_mode,
&Hdr.h_uid, &Hdr.h_gid, &Hdr.h_nlink, &Hdr.h_rdev,
&Longtime, &Hdr.h_namesize, &Longfile, &Hdr.h_name);Longtime和Longfile相当于Hdr.h_mtime和Hdr.h_filesize,分别。 每个文件的内容以及描述该文件的其他项都记录在具有不同长度的结构数组中的元素中。
注: 使用 -c 标志保存的文件必须使用 -c 标志进行复原。
如果未使用 Cpio 命令的 -c 标志,那么头结构将包含下列字段:
| 项 | 描述 |
|---|---|
| h_magic | 包含常量八进制 070707 (或 0x71c7)。 |
| h_dev | 包含该文件的目录条目的设备。 |
| h_ino | 用于标识文件系统的输入文件的 I 节点号。 |
| h_mode | 输入文件的方式,如 mode.h 文件中所定义。 |
| h_uid | 输入文件所有者的用户标识。 |
| h_gid | 输入文件所有者的组标识。 |
对于远程文件,这些字段包含反向转换后的标识:
| 项 | 描述 |
|---|---|
| h_nlink | 连接到输入文件的链接数量。 |
| h_rdev | 从中取出输入文件的远程设备的标识。 |
| h_mtime | 数据最后修改的时间。 对于远程文件,此字段包含服务器上的时间。 可以通过 克里特, 弗克拉夫, 截断, 姆克诺德, 奥佩克斯, 管道, 乌特或 写 子例程来更改此时间。 |
| h_namesize | 路径名的长度 (包括终止空字节)。 |
| h_filesize | 文件长度(以字节计)。 这是遵循标题结构的数据节的长度。 |
| h_name | 以 null 结束的路径名。 路径名 (包括空字节) 的长度由 N 变量指示,其中 N 等于((h_namesize % 2) + h_namesize). 即, N 变量等于h_namesize字段 (如果h_namesize字段为偶数。 如果h_namesize字段为奇数,且 N 变量等于h_namesize字段 + 1。 |
归档的最后一个记录始终包含该名称TRAILER!!!.特殊文件,目录和预告片将记录在 h_filesize字段等于 0。