Eu tenho aqui uma chamada de arquivo tar POSIX Debian9.ova
.
Curiosamente, listá-lo tar
no MacOS High Sierra mostra:
$ tar -tvf Debian9.ova
-rw-r--r-- 0 someone someone 5344 26 Feb 13:57 Debian9.ovf
-rw-r--r-- 0 someone someone 179 26 Feb 13:57 Debian9.mf
-rw-r--r-- 0 someone someone 2113245184 26 Feb 13:59 Debian9-disk1.vmdk
Agora, o ponto interessante é que não tenho um someone
usuário e um grupo.
$ id someone
id: someone: no such user
Listando-o com --numeric-owner
, ele mostra como uid
64 e gid
64, que claramente não estão presentes no meu sistema.
$ tar -tvf Debian9.ova --numeric-owner
-rw-r--r-- 0 64 64 5344 26 Feb 13:57 Debian9.ovf
-rw-r--r-- 0 64 64 179 26 Feb 13:57 Debian9.mf
-rw-r--r-- 0 64 64 2113245184 26 Feb 13:59 Debian9-disk1.vmdk
Listando os usuários no sistema não encontra um somebody
usuário:
dscl . list /Users | grep someone
De onde vem então someone
? É um tar
"recurso" quando encontra um desconhecido uid
e gid
?
PS. No debian apenas para comparação:
$ tar -tvf a.tar
-rw-r--r-- 64/64 3212 2018-02-27 02:01 dead.letter
$ bsdtar -tvf a.tar
-rw-r--r-- 0 64 64 3212 Feb 27 02:01 dead.letter
Em um arquivo de formato padrão
tar
, as informações de cabeçalho para cada arquivo contêm campos para um usuário simbólico e nome de grupo e um usuário numérico e ID de grupo.Como você viu,
tar
pode listar um conjunto de campos ou outro.Com um
pax
utilitário compatível, deve-se ser capaz de listar esses campos completamente:No entanto, acredito que
pax
atualmente não exista nenhum utilitário em conformidade com o padrão.Leitura adicional
pax
. Especificação única do Unix . IEEE 1003.1-2008:2016.tar
. § 5. Manual de Formatos de Arquivo FreeBSD .