The tar program included in the Busybox is not compliant regarding preserving the original permissions of files inside a tarball. I'm the maintainer of the Perl module Archive::Tar::Wrapper, and getting multiple failures of testing inside the Alpine Linux distribution, which failures can be seen in the link http://matrix.cpantesters.org/?dist=Archive-Tar-Wrapper%200.40;os=linux;perl=5.39.11;reports=1. Since is a wrapper, applying the command line option -p is not working as expected. I also made several attempts of achieving the same result manually, following the available manpage: localhost:~$ tar --help BusyBox v1.36.1 (2023-11-07 18:53:09 UTC) multi-call binary. Usage: tar c|x|t [-ZzJjahmvokO] [-f TARFILE] [-C DIR] [-T FILE] [-X FILE] [LONGOPT]... [FILE]... Create, extract, or list files from a tar file c Create x Extract t List -f FILE Name of TARFILE ('-' for stdin/out) -C DIR Change to DIR before operation -v Verbose -O Extract to stdout -m Don't restore mtime -o Don't restore user:group -k Don't replace existing files -Z (De)compress using compress -z (De)compress using gzip -J (De)compress using xz -j (De)compress using bzip2 --lzma (De)compress using lzma -a (De)compress based on extension -h Follow symlinks -T FILE File with names to include -X FILE File with glob patterns to exclude --exclude PATTERN Glob pattern to exclude --overwrite Replace existing files --strip-components NUM NUM of leading components to strip --no-recursion Don't descend in directories --numeric-owner Use numeric user:group --no-same-permissions Don't restore access permissions Nothing there about "-p", but "--no-same-permissions" tells me it should do it by default, which doesn't work either. After some effort to have manpages installed on Alpine, I got this: -p, --preserve-permissions, --same-permissions Set permissions of extracted files to those recorded in the archive (default for superuser). Then I tried all the three variations, with the following results: -p and --same-permissions are ignored --preserve-permissions is not accepted as a valid argument localhost:~/.cpan/build/Archive-Tar-Wrapper-0.40-0$ tar --same-permissions -xvf t/data/bar.tar bar/ bar/bar.dat bar/foo.dat localhost:~/.cpan/build/Archive-Tar-Wrapper-0.40-0$ ls -l bar/ total 8 -rw-r--r-- 1 goku goku 11 Jul 24 2005 bar.dat -rw-r--r-- 1 goku goku 11 Jul 24 2005 foo.dat localhost:~/.cpan/build/Archive-Tar-Wrapper-0.40-0$ rm -rf bar/ localhost:~/.cpan/build/Archive-Tar-Wrapper-0.40-0$ tar --preserve-permissions -xvf t/data/bar.tar tar: unrecognized option: preserve-permissions BusyBox v1.36.1 (2023-11-07 18:53:09 UTC) multi-call binary. Usage: tar c|x|t [-ZzJjahmvokO] [-f TARFILE] [-C DIR] [-T FILE] [-X FILE] [LONGOPT]... [FILE]... localhost:~/.cpan/build/Archive-Tar-Wrapper-0.40-0$ tar -x -v -p -f t/data/bar.tar bar/ bar/bar.dat bar/foo.dat localhost:~/.cpan/build/Archive-Tar-Wrapper-0.40-0$ ls -l bar/ total 8 -rw-r--r-- 1 goku goku 11 Jul 24 2005 bar.dat -rw-r--r-- 1 goku goku 11 Jul 24 2005 foo.dat As a reminder, Archive::Tar::Wrapper is expecting to get the group with "rw" permissions: localhost:~/.cpan/build/Archive-Tar-Wrapper-0.40-0$ tar -tvf t/data/bar.tar drwxrwxr-x mschilli/mschilli 0 2005-07-24 16:15:34 bar/ -rw-rw-r-- mschilli/mschilli 11 2005-07-24 16:15:27 bar/bar.dat -rw-rw-r-- mschilli/mschilli 11 2005-07-24 16:15:34 bar/foo.dat Please let me know if you need additional information.