You could create a tar file, then use 7z to compress it, but that would be non-standard. Tar is designed to work on Unix-like OSes, so it has supported symlinks for decades. ZIP was created for MS-DOS which doesn't support symlinks - heck, NTFS didn't support symlinks correctly until after Win7.
Use the right tool, for the right job. That's about all I can say on this.
You can use a number of compression tools (gzip, bzip2, xz, compress, others ... ) with tar files, if you like. GnuTar has support built-in for compressing and decompressing ... let me check the manpage,
Code:
-j, --bzip2
Filter the archive through bzip2(1).
-J, --xz
Filter the archive through xz(1).
--lzip Filter the archive through lzip(1).
--lzma Filter the archive through lzma(1).
--lzop Filter the archive through lzop(1).
--no-auto-compress
Do not use archive suffix to determine the compression program.
-z, --gzip, --gunzip, --ungzip
Filter the archive through gzip(1).
-Z, --compress, --uncompress
Filter the archive through compress(1).
Or any other, compression tool using the
Code:
-I, --use-compress-program=COMMAND
Filter data through COMMAND. It must accept the -d option, for decompression. The argument can
contain command line options.
Lots of options. You may notice that ZIP tools aren't built-in. I'd guess that's because there are too many variants which make compatibility difficult.
BTW, if root/sudo isn't used with tar, no absolute paths will be stored. The leading / will be removed, thus retaining the directory structure, but it won't be restored from / down, unless sudo/root is used for the tar x.... de-archiving.
Bookmarks