makingglitches / GooglePhotoDownload

Connects to Google Photos and downloads all content, keeping track of original data on disk and moving files only on the computer and already on server to respective directories, and tries to download the entire collection and store size info for quicker startup as well as original file sizes of those on disk, downloading the files still on disk first so they can be freed up. Supports multiple user accounts. Its just a better mousetrap. Google Takeout prepares whole archives of photos, this allows you to download them separately and keep track of some statistics as well on space usage.
6 stars 4 forks source link

Convert tables to hold device uuid and mountpoint #57

Open makingglitches opened 2 years ago

makingglitches commented 2 years ago

As previously looked at there really is no grand way of doing this. BTRFS for example throws some annoyances into things because mountpoints can be assigned to subvolumes meaning that there will be subdirectories inside the volume. So imagedirectories must specify the UUID and mountpoint or subvolume if possible for btrfs.

This is important if you place an image archive under /home or directly under / (which is of course not recommended).

Convert tables over to allow specific partition UUID's to be utilized when identifying where a file is located, so that if the mountpoint changes the tracking information is the same identifying the file as being on a specific volume.

Of course this UUID can be changed so some thought has to be put into migration as well.

Its choppy logic for keeping track of disk contents and image file contents, which themselves also have UUID's associated with them strangely.

blkid can't be used because it requires elevated permissions.

lsblk -fJ returns a json structure of present partitions with all relevant data and the block device the part resides on and there mount points.

makingglitches commented 2 years ago

see #55

makingglitches commented 2 years ago

Got busy before doesn't mean I wouldn't finish the damn thing !

makingglitches commented 2 years ago

I think I may be assuming things to be too systematic and orderly personally. These changes are assuming a partition table type that suuports UUID labeling and that all partitions are thus labeled. This is actually not a requirement of for example GPT it would seem.

makingglitches commented 2 years ago

however now the choice of what to support is coming to play and I'm choosing linux for starters.