David Ramel

Networking Nightmare II: Adding Linux

By David Ramel
March 04, 2009 6:00 AM EST


Well, the nightmare part has kicked in.

Bear with me, folks, because I'm going into some detail so others may learn from my pain.

The other night I was up until past 3 a.m. trying to get the Linux machine to access shared folders on the Win 98 machine. At least I found out that many, many other Linux users faced the same problem. Even better news, thanks to somebody named Rafal and his "LANMAN fix," I got it to work. More on that later.

First some background.

Last time I documented the extent to which I could share files among my Windows (Win 98, Win XP and Vista) machines.

There was just one thing that didn't work, so I decided to add Mac and Linux machines into the mix before tackling it.

One big problem is that I'm a Linux newbie. I installed Ubuntu 8.10 (Intrepid Ibex) on my old work ThinkPad and have been learning Linux on the fly. It installed fine from a disk image I downloaded and burned onto a CD. I actually have dual-boot options with XP but Linux is the default.

Lousy documentation

At the risk (well, certainty) of being flamed, I must say that Linux documentation is abysmal. I tried local help files and Web documentation and both were almost useless.

I don't know if documentation isn't keeping up with the actual OS development or what. I know it's a free volunteer community effort and all, but there's an annoying disconnect between what the documentation describes and what the user actually sees, even in the most basic menu options.

And spelling and grammar errors are minor in effect but distracting and indicative of the general sloppiness. And instructions seem to be too complex and all over the place with no continuity in form or substance, with different packages needed, different ways to get them, etc. But you can usually find what you need thanks to the vast user community.

I ran into this sloppiness immediately. My Linux PC connected to my wireless network just fine (I've had hellish problems when the correct drivers weren't available). I clicked on "Places>Network" to bring up a WINDOWS NETWORK icon.

Opening that showed the HOME workgroup, which displayed the three Windows machines: "Windows shares on home." The location box displayed "SMB:///," indicating connections would take place via the Server Message Block file sharing protocol.

Win 98 problems

I could connect to XP and Vista shares, but not Win 98. The shares icons displayed fine, but clicking them brought up a log-in dialog box, asking for username, domain and password. No combination worked, and I must have tried literally dozens. Everything resulted in an error:

"Unable to mount location"
"Failed to mount windows share"

So I tried to approach it from the back way, accessing shared folders on the Linux PC from the Windows machines.

The help file wasn’t much help at first. Opening it and searching for "sharing" brought up documentation for a "Shared Folder Administration Tool." It said to start it up by clicking on the top-level "System" menu, then "Administration," then "Shared Folders," but there was no such menu item.

But it did list two alternative methods: opening a Terminal box and typing the command "shares-admin" or right-clicking on a local folder and selecting the option "Share Folder." There was no such option, but "Sharing Options" was close enough. Just another minor annoyance.

I right-clicked, selected the "Share this folder" check box and it asked me for the name of the share, which I supplied. Then I clicked on the "Create Share" button, supplied a password and got an error message:
"Samba's testparm returned error 1: Load smb config files from /etc/samba/smb.conf
Processing section "[printers]"
Processing section "[print$]"
Loaded services file OK.
ERROR: lock directory /var/run/samba does not exist
ERROR: pid directory /var/run/samba does not exist"


Up popped a box with the notice "Sharing service is not installed. You need to install Windows networks sharing service in order to share your folders."

I clicked on "Install Service" and this time it installed the Samba file-sharing service.

I wanted to make sure exactly how it worked so I installed the same Ubuntu package on a desktop drive and tried it again (after spending a couple hours tracking down and installing the right wireless driver.)

Same process, different result (?)

Strangely, the process was different.

This time, after clicking on "Create Share," it immediately downloaded Samba after I supplied the password. There was no initial error message.

But when it was done installing I clicked on the "Details" switch and that brought up a terminal window showing all the activity that had taken place. It said it was replacing the "smbclient" with a later version, and toward the end there were a bunch of error messages.

Perhaps this install included the "smbclient" somehow while the other didn't, because of an inadvertent update or something. I did use different install disks, but they were burned from the same file on the Ubuntu site.

Anyway, after rebooting, I could access the Linux shares from the Windows machines (and even the Mac, but that's a story for a different day). The Linux laptop showed up in a workgroup named "WORKGROUP" and the Windows PCs were in the "HOME" workgroup, but that didn't impede anything.

But I had the same problem as before: the Win 98 shares just wouldn't work. I couldn't get past the log-in box.

I searched the Web and found a lot of people had experienced the same exact problem, but no one had any answers. Many people said the problem hadn't existed in earlier versions such as 7.10, or prior to "Hardy."

Upon upgrading, they couldn't access authenticated shares in Win 98 and some other Windows versions. If the password protection was removed, the shares could be accessed -- which I verified. Some people were quite annoyed and didn't want to do that and actually reverted to earlier Ubuntu versions.

Finally I found the answer on a bug report site. It was titled "SMB error: Unable to mount location when server configured with security=share" and had some 160 posts about similar problems, ranging from March 31, 2008, to Feb. 23, 2009 -- just over a week ago. There were dozens of proposed solutions but none of them worked.

Rafal to the rescue!

But near the end, I found this post:
"Hi folks - I was trying to fix this for hours, and have a (albeit idiotically simple) fix that worked for me:

on the client, /etc/samba/smb.conf file

[global]

# THE LANMAN FIX
  client lanman auth = yes
  client ntlmv2 auth = no

  Notice the word CLIENT in front of both of those... try to re-mount the smb share again and it all works nicely.

Cheers.

/Rafal"


Bless your heart, Rafal, wherever you are. I don't know what those settings mean, but I plugged them into the smb.conf file and it worked like a charm. All the Windows machines can now access Linux shares and vice-versa.

Hopefully those settings didn't just deactivate all password protection on the Win 98 machine or do something else risky. I'm going to investigate that when I get a chance, to learn a little more about Linux.

But right now it's on to the next nightmare: the Mac.