From the comfort of a terminal[1], a few options comes to mind,
git-annex[2] will allow you to index all, or just some, of those files where they are - and keep track if you shuffle them around. The really useful feature in your case, is that git-annex will keep tabs on even your disconnected harddrives, flashdrives or cloud storage. It will let you know if you have redundant copies and how many, or if you're about to trash the last known instance of IMG001.jpg. It will point you to specific storage media if query some file not currently local.
Note that it's not entirely as trivial as I make it out to be - git vcs experience helps. Some love it.
In your situation, I'd might try borg[3] - No experience, but I heard appreciative voices about it and docs seem OK.
Personally, I always end up using rmlint/fdupe and unix tools, but that's a secret.
git-annex[2] will allow you to index all, or just some, of those files where they are - and keep track if you shuffle them around. The really useful feature in your case, is that git-annex will keep tabs on even your disconnected harddrives, flashdrives or cloud storage. It will let you know if you have redundant copies and how many, or if you're about to trash the last known instance of IMG001.jpg. It will point you to specific storage media if query some file not currently local.
Note that it's not entirely as trivial as I make it out to be - git vcs experience helps. Some love it.
In your situation, I'd might try borg[3] - No experience, but I heard appreciative voices about it and docs seem OK.
Personally, I always end up using rmlint/fdupe and unix tools, but that's a secret.
[2] https://git-annex.branchable.com/ [2] https://github.com/borgbackup/borg [3] There's GUI implementations of these