压缩系统节点

压缩系统节点

假设我正在打包 chroot。如果它尝试打包系统节点,比如说,这合理吗/dev/zero?或者这听起来很愚蠢,导致 tar 无限尝试找到零的末尾以便压缩它们?

答案1

tar相当智能。当被告知要存档特殊节点(如)时,它会存储创建这些文件所需的/dev/{zero,urandom,...}主设备号和次设备号(在命令中使用):mknod

$ tar cf foo.tar /dev/zero                  
tar: Removing leading `/' from member names
$ tar tvf foo.tar         
crw-rw-rw- root/root       1,5 2016-12-25 13:06 dev/zero
$ tar xf foo.tar                            
tar: dev/zero: Cannot mknod: Operation not permitted
tar: Exiting with failure status due to previous errors

它也不直接归档块设备。请参阅如何让 tar(等等)存档块设备内容?

相关内容