Skip to main content

A fail: networking Windows and Linux Mint using Samba

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 networking the Windows 10 machine to the Linux Mint machine.

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";
The network is a local area network from a domestic router, the usual 192.168.x.x thing.

Windows 10 is already configured to use Samba (wiki) (the SMB protocol, wiki) out-of-the-box, although it turned out that there was a twist to the configuration.

Alternatives

There are ways to transmit occasional data between the two machines other than peer-to-peer networking, e.g. grive2.  However, 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.

Peer-to-peer networking is also the simplest of simple networks to do, so it really should be a very easy thing to activate and just use.

Software selection

Gandalf required Samba prior to use.  Linux Mint Xfce did not have Samba installed by default.

Installation experience

Gandalf installed Samba easily and quickly, using the Software Manager.

User experience

Gandalf was set as the server, Legolas as the client.

In spite of extensive assistance from the Linux Mint community, Legolas could not discover Gandalf (network discovery failed to see Gandalf).

The community was unable to replicate the fault.  One member of the community flattened his test machine in an attempt to replicate the fault!  Away from the support forum, plenty of other users had different issues; yet an equal number say they had no issues at all.

A much more extensive test would be required to identify the root cause with this particular setup.

In view of my time taken to debug this - a total of 6h40m, well in excess of what a typical Windows user would invest into a domestic toy - this counts as a fail on the project.

However, the likely culprit is that Samba, as installed on Gandalf, was out-of-date relative to the standards defined in Windows 10.  Supposedly, Windows 10 should be Samba-ready.  But since WannaCry, Microsoft disabled the earliest protocol SMB1 on the grounds of network security.  The community doesn’t seem to have caught up with this (source, source).

Support from the community was quite fantastic, but objectively should not have been necessary at all.

Conclusion

Windows 10 was unable to network with Linux Mint Xfce after:
  • extensive re-configuration in Linux Mint Xfce; and
  • no changes at all in Windows 10.
Gandalf was never visible to Legolas via network discovery, so this test failed.

The test included an assumed timeframe from start to working functionality of 10 minutes: 6h40m is arguably excessively generous to debug something so functionally simple.

The implication for this project is to move onto the next test, and attempt again to solve this issue on a different day.

Reflections

The implication of this finding for a typical Windows user is probably more profound: a typical Windows user migrating to Linux Mint would enough friction to deter the user from migration, and thus stick with Windows.

It seems bizarre that Linux Mint, a project ostensibly aimed at poaching Windows users into the Linux fold, published a distro (in this case, Xfce) that wasn't already configured to use Samba SMB3, with a graphic user interface - somewhere in the settings - that allowed the user to switch Samba on or off.

Next tests

  • Force Samba on Linux Mint to use SMB3 and see whether Windows can then discover Linux Mint on the local network.
  • Swap the relationship, i.e. make Windows the server and Linux the client.
  • Flatten Gandalf, re-install Linux Mint from scratch, re-test the network connection with Linux Mint in its “factory-fresh” condition, installing Samba only if necessary.
  • Use WinScp instead of Samba.
  • Use ssh and/or sftp instead of Samba (although the source forum post doesn't give much hope that the desired functionality may be even possible!).
  • Wait a few months a new version of Samba that also deactivates SMB1, to mirror Windows.
  • Expect lots more bugs and general dysfunctionality.
  • Copy everything to a flash drive from Windows, copy everything from the flash drive into Linux!


End of blog post.

Comments

Popular posts from this blog

OnlyOffice: keyboard inaccessible, so not useable, therefore not tested

I installed OnlyOffice https://www.onlyoffice.com/. I had intended to test it with my now-standard test suite of two linked workbooks.

Unfortunately, in spite of a promising look, I quickly discovered that - with one exception - everything was navigable only by mouse.

That makes it a child's toy.  Unfit for purpose!  No point in testing it further.

I uninstalled it within 10 minutes of installing it.


Adjusting screen brightness

The machine on which Linux Mint is installed an old Acer Aspire 5732Z ("Gandalf")

It has buttons to adjust the brightness of the screen's backlight.  When the user uses these buttons, Linux Mint correctly presented a fading-popup box (a slider bar) to denote relative brightness.  But Linux Mint did not actually adjust the brightness of the screen.

It seems to be a known issue in the Linux Mint forums and solved in multiple  stages by the Easy Tips Project.

I followed the instructions on Easy Tips section 5.2 in Gandalf's admin account, then re-booted, then logged in using the user account, and the brightness adjustment function worked correctly.

Easy Tips asks the user to discover the relevant property of the machine, then creates a file that contains a script of parameters that other programs in Linux Mint understand.

This method worked for Gandalf, because Gandalf has an integrated Intel chipset.

Useful commands at the Terminal ALT+T (or the Mint) menu gets to the …

Keepass and KeepassX

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 password manager, Keepass.
Environment & required functionality A number of encrypted password vaults synchronise between three machines:

The Linux Mint Xfce laptop "Gandalf";The Windows 10 laptop "Legolas";Another Windows 10 machine, name withheld to protect the guilty.
The synchronisation agent is Google Drive in Windows 10, and grive2 in Linux Mint.
Alternatives My original decision to use Keepass was in 2016 and was based on:

Keepass is open-source;Keepass is locally stored, not stored in the cloud;Keepass does not automatically plug into the browser (a plugin permits this if ever necessary);higher security standards at the office, worth deploying at home;portability of the password vault via Google Drive, encrypted such that Google would not be able to slurp data from an otherwise-unencrypted vault.overall …