Hot answers tagged backup
If you don't mind moving the files... You could do this by moving the files into a git repository, and symlinking them to their old locations; you'd end up with ~/gitrepo/somedir/otherdir/file1 moved from ~/somedir/otherdir/file1 ~/gitrepo/otherdir/somedir/file2 moved from ~/otherdir/somedir/file2 a symlink from ~/somedir/otherdir/file1 to ...
Simply feed it a list of everything you DO want counted using --files0-from find -type f -print0 | du --files0-from=-
tar can cope with partial archives after splitting. When you try to restore part of such an archive, it will skip over whatever it can't use at the start, and tell you about any partial file at the end; everything in between will be restored properly. You can instruct tar itself to split archives as it creates them, using the tape length options; see Create ...
A list of installed packages and dotfiles in your home is a good bet. The management of dotfiles is a sort of art, check https://dotfiles.github.io/
If you did it correctly then all your changes are in your $HOME. Just copy that $HOME folder around and your done. If you don't want to copy the entire folder then ~/.local/config is a good place to start, but your better off just copying over the entire folder.
The df is reporting a small number because you're mostly deleting directories, which are relatively small. Also, depending on the filesystem, changes to directories and changes to the number of links to a file are journaled and/or synced to the disk immediately, since they're critical for fault recovery, and thus slower. That's actually a testament to the ...
dd in your example does full system image backup, byte to byte mirroring /dev/sda to /dev/sdb. However you must be sure that /dev/sdb if equal or larger size disk. Modern systems do not permit plain copying like that because they embed some other unique identity information like UUIDs into volumes; there maybe issues with LVM setups, on-disk cryptography ...
Well it is always best to do a fresh install on empty partitions or otherwise you'll keep lots of unneeded files all over the place. There is no magic solution to know where you saved your files. They may be in /home but you could have saved then all over the place. It may be a good idea to also backup the list of installed packages for future ...
If you have GNU find, you can make it print the file sizes. find /source ! -type d -printf '%P %s\n' Sort the output to get deterministic output. If the filenames contain newlines, it's possible to get the same sorted output for different arrangements, but that's not going to happen unless deliberately engineered. comm -3 <(find /source ! -type d ...
Only top voted, non community-wiki answers of a minimum length are eligible