1

re the closure of this question:
This contrived supposed objection, i.e. that the question is not clear, is clearly not the case. If people have a reason to wish to close a question they must give legitimate reasons why. In this particular case, it is clear that I identify a particular requirement the answer to which is not trivial or obvious. The answers constitute a perfectly legitimate answer to a real need which may be useful to many people.


NB specifically for Windows OS

Say the directory in question is D:\My Documents.

On computer A, a desktop, my main machine, I mess around with stuff under D:\My Documents... then someone rings me up and tells me to go somewhere in the next hour, for a week, and to take my laptop with me. My laptop also has a directory D:\My Documents. The vast bulk of the files under there are identical to the files under the desktop's D:\My Documents. Indeed if I can find a good way to mirror, fast enough to make it usable, and reliably enough to make it usable, I can update the laptop each month, in semi-readiness for needing to rush off.

What I have tried:

  • both machines have Backup and Sync from Google (backing up to different gmail accounts' GDrives). This is not a bad solution, but has 2 disadvantages: 1) B&S can't be guaranteed to back up a particular file within a given time of its being modified; 2) even if B&S has updated all the files, identifying the ones you want (i.e. the ones which differ) and then downloading them would then be no trivial task.

  • Ease US. If I have a very regular backup plan, say doing an incremental every 10 minutes to an external hard drive, I can hook up that hard drive to the laptop and do a "recovery" operation from the latest incremental image to the laptop D:\My Documents location. Oh dear: intensely slow. It laboriously loops through every file seeing whether it exists (plus I'm not clear whether it does a file comparison on name alone, name + size alone, or name + size + CRC comparison).

  • SyncBack. This doesn't seem to work either. SyncBack often seems to do things rather confusingly... for example leaving pre-existing files in the destination location which are not part of the mirror's source location when you are trying to do a "hard and destructive" mirror operation to the destination.

  • Brute force copying: to a USB, for example. D:\My Documents is only about 7 GB in volume currently. It is thus possible just to format a USB stick, copy the desktop's D:\My Documents to it, and rush out the door: the replacement of the laptop's D:\My Documents can thus be done in transit, or on reaching a destination. But this is not elegant. There must be a better way!

Some app which is capable of, presumably, quickly scanning the source location, building a database of the existing directory and file structure, with details allowing a CRC comparison of files, and then quickly updating only those parts of the directory structure which actually need updating, possibly involving a USB drive to do the transfer from the desktop to the laptop.

Incidentally, it's kind of essential that the operation should be able to operate in the other direction too: from the laptop to the desktop, i.e. after one comes home after spending those 7 days away from home.

I have looked around for a solution for some time now... so far nothing really seems to work satisfactorily.

Albin
  • 9,307
  • 11
  • 50
  • 89
mike rodent
  • 653
  • 1
  • 9
  • 24
  • Before OneDrive, I used to do this with Toucan. Toucan can do manual directory syncs and updates. But, now with OneDrive, I never worry about my files being synced between computers. I also travel quite a bit, and hate working off of two different sets of directories. OneDrive solved this problem for me. I even eventually gave into syncing the Desktop and My Documents folders with OneDrive, so anything I drop in those folders gets synced between computers without any thought. Both computers are always running, so the syncs are always up to date. I pay for Office 365, and have the 1TB OneDrive. – Jim Diroff II Aug 19 '20 at 18:16
  • @JimDiroffII Thanks very much. I'll have to look up how OneDrive operates, but I don't quite understand, with a purely Cloud-based operation: what happens if your Net connection fails or malfunctions, or you're going somewhere where the Net is VERY slow (I live in the UK and this is not a trivial problem, e.g. in rural locations) ... But for that slight issue, it sounds like a good solution. I'll look up Toucan too (never heard of it). – mike rodent Aug 19 '20 at 18:42
  • what's fast? only real time? – Albin Aug 19 '20 at 18:47
  • @Albin Sorry, could you be more specific in your question? And maybe if you have a proposed solution you might put it in an answer? – mike rodent Aug 19 '20 at 18:53
  • you need to specify... fast and reliably are pretty subjective terms, what is fast enough and reliably enough for you? – Albin Aug 19 '20 at 18:54
  • I myself have used robocopy for this. I have also used a network drive attached to my router as the "main copy" – Señor CMasMas Aug 19 '20 at 18:55
  • @Albin Fast and reliable enough to be practical as a solution: what can optimally be achieved. But please don't continue this line here: we will soon get a warning about not having "discussions" in a comment thread. If you have a possible solution please put it in an **answer**. – mike rodent Aug 19 '20 at 18:57
  • @mikerodent It isn't purely cloud, OneDrive has a desktop client. You need to set the option to "Always keep files on this computer," so it will download and keep the entire folder. Then, if you are offline or on a slow connection, you still have access to everything locally, and any local changes sync up when you get back to a faster connection. – Jim Diroff II Aug 19 '20 at 19:07
  • @JimDiroffII Ah, yes, I was wondering whether there'd be something more sophisticated like that. That does in fact sound great. I'll have to look at the pricing. – mike rodent Aug 19 '20 at 19:09
  • @mikerodent I would vote to reopen once you specify "fast and reliable" objectively ("practical" is still a subjective term). For some people fast is only "real-time" others like me don't mind to wait a few minutes. Although I'm glad I could help with my answer, but honestly, it was just an educated guess usually I hold myself to higher standards. – Albin Aug 20 '20 at 07:43
  • @Albin But you said before that you thought "fast" was a subjective stipulation. I don't really see that the addition of any adjectives would transform this question from an illegitimate question (to those who are determined to perceive it as such) to a legitimate one. The question is a simple one which addresses an obvious need, particularly when viewed in combination with the opening lines of the description/explanation, so I don't really understand your issue. – mike rodent Aug 20 '20 at 08:07
  • @mikerodent you are right, other (subjective) adjectives won't help... you need to apply "numbers" (how much delay is still acceptable) or adjectives that imply them. An example would be "real-time". This term implies the backup needs to be virtually instant (with a zero time delay), that it will effectively rule solution in/out. In this case, it will rule out all file-based solutions leaving for example sector-based backup options. If you don't want to specify just leave out the adjectives entirely or just use e.g. "the faster the better" which will allow comparison between solutions. – Albin Aug 20 '20 at 08:18
  • @mikerodent it's a little better know, but it still makes it hard for the reader to know what exactly you are looking for. Usable might mean to me something completely different then it means to you. Maybe you could try to give an example on what you would consider too much time and what would be "fast enough"?! Maybe this will make things easier for you. I admire that you keep on trying to improve it - keep at it! As a motivation I'll give you the +1 ;) – Albin Aug 20 '20 at 16:34

2 Answers2

2

I use Robocopy to "mirror" (strictly speaking it's a one-way copy) to a network folder every time I take a break (that's fast enough for me):

robocopy "C:\" "\\192.168.1.1\C-Drive" /copy:DAT /E /PURGE /FFT /W:1 /R:0

There is a switch for real mirroring as well and I think also for continues operation...

Albin
  • 9,307
  • 11
  • 50
  • 89
  • Wow, first results super-impressive. Although I just tested to an internal spinning-plates drive (not an external drive), the first mirror op took no more than a couple of minutes... and then when I added a couple of new files in an obscure directory under My Documents, the second mirror run took only 7 seconds! And there they were, in the mirror destination. NB I looked carefully through the switches but couldn't find the real-time thing, not that it matters much for my purposes. – mike rodent Aug 19 '20 at 20:02
  • Yes, even using an external HD this works really very well indeed. – mike rodent Aug 19 '20 at 20:22
  • @mikerodent could be that I'm mistaken about the continuous operation. Just as a side note, the switch only do a "one-way"-copy, if you change files on the network drive nothing will change. The second time was faster because fewer files were changed therefor fewer files needed to be copied. – Albin Aug 20 '20 at 07:35
  • Yes, I should have said that I know perfectly well that the first ("full") backup is always doing more work. I have no idea how robocopy goes about compariing source and destination on subsequent (i.e. after the first "full") mirror commands, but it's very impressive. – mike rodent Aug 20 '20 at 08:10
  • @mikerodent I think it uses time stamps and file length. I think you can use other attributes as well if you use the appropriate parameters. – Albin Aug 20 '20 at 08:22
  • https://superuser.com/questions/791053/how-does-robocopy-determine-if-a-file-is-changed - fraid not: no hashes, and seemingly no way of requiring anything more rigorous. Big mistake on the designers' part, IMHO, but I'll have to live with it, apparently. – mike rodent Aug 20 '20 at 08:30
  • @mikerodent interessting, thanks for checking, I think there's still the option to use the archive attribute but I might missremember. – Albin Aug 20 '20 at 08:36
  • As far as I can see, having read through the switches when you go "help robocopy", you can elect to copy such attributes, but you can't apparently stipulate anything about the comparison function. It is conceivable that there may be ways of doing this which are not documented in explanation given with "help robocopy": will do some searching on this when I get a moment! – mike rodent Aug 20 '20 at 08:40
0

I recommend using OneDrive, and change the desktop client setting to "Always keep files on this computer." This will download the entire synced directory, and keep them locally. You can modify these files offline, and they will sync once you come back online.

If for any reason a file is modified on two different computers and the synced changes conflict, OneDrive automatically adds a copy of the file with the computer name attached to the filename, so you can see both files, merge the changes, and delete the extra file.

OneDrive comes with 5 GB for free just for having a Microsoft account, and has all the features you require. If you sign up and pay for Office 365, all licenses come with at least a 1TB OneDrive. You could also buy a 100 GB OneDrive-only license for $1.99 a month.

https://www.microsoft.com/en-us/microsoft-365/onedrive/compare-onedrive-plans?activetab=tab%3aprimaryr1

There was an older app called Toucan that I used to use to do this manually. It is still available on the portableapps website.

Jim Diroff II
  • 1,081
  • 4
  • 10
  • Thanks. £60 a year would be worth it, particularly as I'm currently running Word 2007. I generally loathe Micro$oft and all its works, but professional realities sadly intrude. Currently experimenting with Toucan. It seems to stop copying when focus goes away from it, hmm, not sure what's going on there. – mike rodent Aug 19 '20 at 19:24
  • I feel you on Microsoft, but after I gave in and bought a legit Windows key and Office 365 license, work life became easier due to using the latest versions of everything. That Toucan app is old as dirt. I just checked the github repo and it says it is no longer being actively developed. Most of the code base is 6+ years old, so if it doesn't work for you in its current form, you might not be able to use it unfortunately. https://github.com/PortableApps/Toucan – Jim Diroff II Aug 19 '20 at 19:35
  • Later thought: having read around a bit and drawn on many unhappy memories of watching Net transmissions, I think that the small fly in the ointment here is the upload transmission rates (slower than download). For big files in particular. But I may sign up for the benefit of latest app versions and get OneDrive as a bonus. Toucan seems to be a bit defective (halts mid-flow), and yeah no longer an active project: not good. Robocopy (see other answer) is pretty amazing. – mike rodent Aug 19 '20 at 20:27