BusyBox Tar显示与GNU Tar不同的所有权


3

更新:我发现我可以使用GNU Tar上的“--numeric-owner”标志以原始权限查看/提取。但是,我仍然想知道tar在这里做了什么,因为我不清楚,特别是因为“33”用户确实存在于Ubuntu 16.04系统上。


我有一个运行BusyBox的嵌入式系统v1.01(2010.02.12-18:03 + 0000)内置外壳(灰)。

我注意到当我创建一个tarball(特别是一个gzip的tarball,tgz)时,文件的所有权在嵌入式系统和我的Ubuntu 16.04系统(运行GNU tar 1.28)之间似乎不一致。

忙箱系统:

# touch my_file
# chown 33:0 my_file
# tar -zcvf /mnt/usb/myfile.tgz my_file
# tar -ztvf /mnt/usb/myfile.tgz
-rw-r--r-- 33/0        12 1970-03-18 21:21:39 my_file

正如您所看到的,当我在BusyBox中再次查看该文件(实际上,提取它)时,它拥有33/0的所有权。

但是当我在Ubuntu 16.04中查看相同的文件时,它显示为具有root / root所有权:

Ubuntu 16.04:

# tar -tvf myfile.tgz
-rw-r--r-- root/root        12 1970-03-18 17:21 my_file

当然,如果我以root用户身份提取文件,那么它由root / root拥有,而不是像我期望的那样33(root)(man page在以root身份提取时默认为--same-owner)。

我以前从未在tar中看到这样的行为...为什么在Ubuntu中查看文件时不保留所有权?

另外,有没有办法在Ubuntu中提取文件,同时保持BusyBox系统的原始33/0权限?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.