OS X keeps "losing" my Linux Samba shares

I have a Linux server (Ubuntu 8.10) and a Macbook (10.5.7). The Linux server has some Samba shares which I mount on the Macbook.

They are set to mount on boot using the "Open Applications at Startup" option in OS X.

I either use the Macbook connected to my wired network or my wireless network and frequently switch between (depending on which room I am in). I just shut the lid to let it sleep when I am moving it around the house.

I normally leave the Macbook to sleep overnight and tend not to shut it down that often (unless I have to as described below).

My problem if that after a day or two of using it as described the samba shares are viewable but show no files. What I mean is that I double click the share on my desktop and it opens but it's empty - no files are shown.

If I try to unmount the share nothing happens, the shared drive icon just stays on my desktop. If I try to umount using Terminal the command just hangs indefinitely.

At this point the only fix I know of is to reboot - however, this never works. I choose "Shut down" and confirm then after a long wait I get an error about some program (a random one from the ones I am running) being unable to shut down. Using "Force Quit" on that command achieves nothing.

The only solution then is to hold the power button down until it shuts down.

This used to happen rarely but seems to be happening more and more frequently lately.

Has anyone else experienced similar problems? I've had my Macbook for about two years and I wonder if it just needs a re-install or something. I used to run Windows and found it benefited from a re-install periodically, will my Macbook benefit from the same thing? Or does it sound more like a hardware problem?

Thanks in advance for any help.


This is a Samba protocol problem, not an OS X problem (specifically). I've had the same thing happen connecting to SMB volumes from my Macbook and from a Linux laptop as well with almost the same results.

The way I fixed this was to install Netatalk on my Linux system and connect to the same shares using AFP instead. I also use this to backup with Time Machine.

There's two main things to do, and there's some links below about setting up the whole thing (AFP+Time Machine).

  • Rebuild the netatalk package to encrypt authentication. Leopard requires this, but its not enabled on Debian/Ubuntu by default.
  • Set up the volumes you want to share on the server and restart the netatalk service.

If you're not using TM you can just do the netatalk/afp stuff. Here's the commands I used:

sudo apt-get build-dep netatalk
sudo apt-get install cracklib2-dev fakeroot libssl-dev
sudo apt-get source netatalk
cd netatalk-2*
sudo DEB_BUILD_OPTIONS=ssl dpkg-buildpackage -rfakeroot
sudo dpkg -i ~/netatalk_2*.deb
sudo dpkg -i ~/tmp/netatalk_2*.deb
echo "netatalk hold" | sudo dpkg --set-selections
sudo vi /etc/netatalk/AppleVolumes.default
# add a line similar to:
/path/to/share SharedVolume allow:username cnidscheme:cdb options:usedots,upriv

Additional steps for Time Machine.

  • Disable the strict checking for Time Machine volumes on OS X. I don't recall the specific command, but this is easy to find.
  • Create a sparsebundle file with the HD Util, and copy to the server.
  • Tell Time Machine to connect to the server.

http://www.kremalicious.com/2008/06/ubuntu-as-mac-file-server-and-time-machine-volume/

http://blog.damontimm.com/how-to-install-netatalk-afp-on-ubuntu-with-encrypted-authentication/

http://holyarmy.org/benjamin/2008/01/time-machine-backup-to-linux-via-netatalk/

I used to run Windows and found it benefited from a re-install periodically, will my Macbook benefit from the same thing? Or does it sound more like a hardware problem?

No, Mac OS X does not suffer from the same OS design issues that Windows does where this is a common practice to "fix" systems that have been running for awhile.