The project is to build a Linux Mint machine to have the identical functionality and ergonomics as the existing Windows 10 machine.
This stage relates to data synchronisation over the local area network (now that, at last, a useful network connection has been established!)
One alternative is already successfully tested and in use: Google Drive (via Backup & Sync for Windows and grive2 for Linux Mint). However, this is limited to the capacity of Google Drive. The capacity is 15Gb for free, then payable thereafter. This is a relatively expensive way of backing up >15Gb data and is no protection against undetected, unintended deletion of data. The sync agent is also quite unreliable, occasionally creating duplicate files in Windows (suffixed by "(1)" etc).
The only other alternative is to use a physical drive to copy data from one machine, then plug the physical drive into the destination machine and copy data for a second time.
The network needs to be secure, otherwise it would broadcast the data to any eavesdropper on the network.
The winner was FreeFileSync. Judgements follow.
It failed on the first hurdle, because it cannot handle transfer protocol SFTP in its free version. It can handle a network file share (NFS) or insecure file transfer protocol (FTP), but not secure file transfer protocol (SFTP) over SSH. So SyncBack fell out of the running.
Source: vendor.
cwRsync was supposedly free, but needed a fee of USD 6 to download the product. That didn't help sell it: the competition is free from end-to-end!
So rsync and cwRsync fell out of the running.
Sources: itefix.net, serverfault.com,
For rsync, the comment on serverfault with 48 votes is absolutely spot on. The author notes, that "I would say that rsync is just too freaking complicated," and "Windows users generally expect, well, windows, and menus, and to have a single app be an all-in-one solution, not just an independent piece of a tool chain."
The program successfully transferred a large library of photographs from Legolas to Gandalf, without incident.
The program also successfully reconciled a large library of music files from Legolas to Gandalf, previously synced by PSFTP and found no differences. This reconciliation prove that both FreeFileSync and PSFTP are consistent and, from this, arguably reliable.
With data able to flow freely between the two platforms Windows and Linux Mint, the project can now proceed.
Completed June 2018.
This stage relates to data synchronisation over the local area network (now that, at last, a useful network connection has been established!)
Environment & required functionality
The network should be a local network - to share files and folders - between the following machines:- The Linux Mint Xfce 18.3 laptop "Gandalf";
- The Windows 10 laptop "Legolas".
Alternatives
Peer-to-peer networking (file sharing, simple two-way server-and-client relationship) is the most efficient way for bulk data transfers, so if the network doesn’t work, then the test has failed.One alternative is already successfully tested and in use: Google Drive (via Backup & Sync for Windows and grive2 for Linux Mint). However, this is limited to the capacity of Google Drive. The capacity is 15Gb for free, then payable thereafter. This is a relatively expensive way of backing up >15Gb data and is no protection against undetected, unintended deletion of data. The sync agent is also quite unreliable, occasionally creating duplicate files in Windows (suffixed by "(1)" etc).
The only other alternative is to use a physical drive to copy data from one machine, then plug the physical drive into the destination machine and copy data for a second time.
The network needs to be secure, otherwise it would broadcast the data to any eavesdropper on the network.
Software selection
The following table summarises the scope of this test.The winner was FreeFileSync. Judgements follow.
SyncBack
SyncBack is software I've used before, so that was the first to test.It failed on the first hurdle, because it cannot handle transfer protocol SFTP in its free version. It can handle a network file share (NFS) or insecure file transfer protocol (FTP), but not secure file transfer protocol (SFTP) over SSH. So SyncBack fell out of the running.
Source: vendor.
rsync & cwRsync
rsync is a CLI tool native to Linux and cwRsync is a GUI tool for Windows that uses SFTP over SSH, so theoretically could work on either machine. As the successful test has Legolas/Windows accessing Gandalf/Linux Mint over SSH, then cwRsync would have been a good candidate for testing. But rsync is linked to Samba, and Samba doesn't work. Samba's failure is ultimately down to over-engineering, over-complexity, over-choice, over-customisation and unfocussed to the end user's objective requirements (i.e. obsessing with an obscure technical challenge in the middle of a process instead of actually fulfilling the end-user's objective demands). All of these issues flourish from woolly-headedness and sloppy design objectives, so any app associated with Samba - and therefore the same/similar development team - is likely to suffer the same problem.cwRsync was supposedly free, but needed a fee of USD 6 to download the product. That didn't help sell it: the competition is free from end-to-end!
So rsync and cwRsync fell out of the running.
Sources: itefix.net, serverfault.com,
For rsync, the comment on serverfault with 48 votes is absolutely spot on. The author notes, that "I would say that rsync is just too freaking complicated," and "Windows users generally expect, well, windows, and menus, and to have a single app be an all-in-one solution, not just an independent piece of a tool chain."
WinScp
WinScp is a Windows-only app. It landed in second place, and remains a potential replacement for the winner of this test. It seems to meet all of the functional requirements, but fell out of the running because it had no Linux version to hand and seems to have no prospect of having a Linux version to hand.
This lack of Linux version should not undermine the user's required functionality on Windows. This is because, with a connection of SFTP-over-SSH, it doesn't matter which machine pushes the data. That said, it is easier to connect from a Windows machine to a Linux machine. This means that one would need to spend time one doesn't have to test the program; there is a fair probability that WinScp would need to be running as a service on both machines to ensure that both machines are listening to eachother and have configured eachother's firewalls to ensure that listening is possible.
WinScp probably does not need to be installed on both machines, if it uses SFTP and therefore is compatible with the OpenSSH service already installed on Gandalf/Linux. But it's not worth the time finding out. Better to carry on looking for a program that sells itself better.
Filezilla
Filezilla is an app that runs on all three major platforms (Windows, Linux, Apple/iOS). It met all of the functional requirements. Being available for Linux meant that it would have been available to the ex-Windows user having migrated to Linux Mint.
But it fell out of the running because of its poor security. Incredibly, it does not support an SSH password management tool (such as Pageant). Worse, it stores users' passwords in plain-text!
FreeFileSync
FreeFileSync won the software selection in this test, found by Googling "alternatives to SyncBack".
It met the core functional requirements, and looks likely to meet future requirements too. It is available in both platforms Windows and Linux Mint, so works for the ex-Windows user migrating to Linux Mint (during the transitional period of the migration).
Screenshots are always a good way of selling a GUI program, because the user can imply a lot of functionality and clear-headedness of the developers by looking at the screens that emerged from the developers' design process. FreeFileSync's screenshots suggested a great deal of real-life experience in handling data and a mentality of continuous service improvement in the design of the app.
FreeFileSync's online manual was also a key attraction. If the developer can spell out the "how to" story to the end-user quickly, it allows for a much quicker buy-in. And it also points again to clear-headedness of the developers' design process. The developer himself said this in his vision:
"I like to think that good software design is finding the base vectors of the problem domain: If you have too few "vectors" (= program capability), your software doesn't satisfy enough of your users' needs. If you have too many, you are bloating the software with redundant options."
Finally, FreeFileSync is open source, publishes its source code and applies the GNU Licence v3 of 29 June 2007. This is superb, because it means that the code is open to constant peer-review.
Sources: vendor, alternativeto.net.
Installation experience
FreeFileSync uses SFTP over SSH. Therefore:- Gandalf/Linux Mint needed OpenSSH to be installed. This installation has already happened.
- Legolas/Windows needed the executable version of FreeFileSync.
User experience
Because FreeFileSync is a Windows app and designed by somebody who know what they are doing, the use of FreeFileSync is so simple that the user could figure it out from the screen without needing to refer to the user manual. As with all GUI, the end-user just needs to fill in the on-screen forms and the application does what it needs to do.The program successfully transferred a large library of photographs from Legolas to Gandalf, without incident.
The program also successfully reconciled a large library of music files from Legolas to Gandalf, previously synced by PSFTP and found no differences. This reconciliation prove that both FreeFileSync and PSFTP are consistent and, from this, arguably reliable.
Conclusion
FreeFileSync enables data synchronisation over secure file transfer protocol (SFTP) over secure shell SSH.With data able to flow freely between the two platforms Windows and Linux Mint, the project can now proceed.
Completed June 2018.
Comments
Post a Comment