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

Scanning & OCRring to PDF: Simple Scan, gimagereader and gscan2pdf v NAPS2 for Windows

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 scanning paper documents to PDF and digitising the scanned text via optical character recognition. Environment & required functionality The scan-and-OCR function needs to run on the following machines: The Linux Mint Xfce 18.3 laptop " Gandalf "; A Linux Mint Xfce 18.3 virtual machine " Gimli "; The Windows 10 laptop " Legolas ". In any modern office - whether at home or at work - some transactional documents and documents from public authorities still arrive by snail-mail. This requires the ability to scan all documents, optionally with the digitisation of scanned text (typically via optical character recognition). The hardware is an old HP OfficeJet Pro 276dw, connected to the LAN instead of directly to a workstation. Alternatives There are two strategies: To use the software pr...

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 th...

FreeFileSync: data synchronisation over the local area network

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 !) 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. 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 th...