I'm not sure Tar can do that. It should be possible, though, to untar both backups (to different directories), then use something along the lines of
cd /mnt/oldbackup ;
find ./ -exec getfacl {} | setfacl /mnt/newbackup/{}
as the output of getfacl
can be used as stdin for setfacl
according to the manpage.
It's fine.
Remember, it's your home directory; you can do anything you want in there. GNOME/KDE/whatever might complain if you go around deleting .config, but anything you do in your home directory will, by definition, only affect you. Adding some directories in .local is harmless.
Putting something in a dot directory will be mildly inconvenient, depending on your workflow. How much it will affect you depends on how you navigate the filesystem and how often you'll need to do it. If it was me, I'd make a regular directory to act as a root (probably call it local or apps) and use it that way, but that's personal preference.
Where you'll run into problems is that the system isn't set up to see your directory. You'll need to adjust PATH, MANPATH, INFOPATH, and LD_LIBRARY_PATH in your .bashrc (or whatever is appropriate for your shell). There will likely be other small "gotchas" as well.
I'm willing to be that there aren't many posts here about it because not many people need to do it. If it's a personal machine, there are few reasons not to use /usr/local. Everything's already set up for it in most distributions. If you're just installing a few apps, a lot of people make directories in /opt (like /opt/blender). Solaris does this when you install a package.
The only real use case for what you're describing is for developers or people who don't have root on their machine. Most people who don't have root just ask the admin to install a program for them - they probably wouldn't know how to compile a program anyway.
Best Answer
By default, the owner and group of
/usr/local
and all subdirectories (includingbin
) should beroot.root
and the permissions should berwxr-xr-x
. This means that users of the system can read and execute in (and from) this directory structure, but cannot create or edit files there. Only theroot
account (or an administrator usingsudo
) should be able to create and edit files in this location. Even though there is only one user on the system, it's generally a bad idea to change permissions of this directory structure to writable to any user other thanroot
.I would suggest placing your script/binary/executable into
/usr/local/bin
using the root account. It's a good habit to get into. You could also place the script/binary/executable into $HOME/bin and make sure $HOME/bin is in your $PATH.See this question for more discussion: Where should a local executable be placed?