How Do Your Machines Talk to Each Other?
VonGuard asks: "I'd imagine this is a common scenario out there for Slashdot readers: I have multiple desktops, all sitting right next to each other and all running different OS's. Linux, Mac OS X and 9, Windows 98, and XP. The problem is, despite these machines being only inches arpart physically, in the digital world, they are miles apart. I have no single way to get them all to talk to each other. NFS is impossibly complex, Appletalk is unreliable thanks to netatalk, while PCMacLan, and Samba make me feel like I'm giving into the Empire. Isn't there a simpler way to get files from one of these machines to the other? Right now, I use webservers and write little HTML files that link to the files on each machine. Isn't there a better way to do this?" Is there really a network sharing standard that works across a number of operating systems aside from Samba? Truth be told, Samba "works-for-me", so that's what I us. However, when it comes to simple file copying, sometimes a simple scp is all I need. What protocols do you use in networks that consist of 3 or more operating systems?
well, you could always use that little protocol called "file transfer protocol". Go figure. A protocol used to copy files. Works on every platform know to man kind. If you wanted to pull out a good ol' system that fell into disuse, get gopher working! As a side, there are scp protocols for pretty much everything as well.
Linux-to-Windows and Linux-to-Netware was quite a bit harder. The SMB and Netware clients that come with most Linux distros are pretty good, but the most obvious and well-documented way to set them up is an ugly kludge where you initialize the clients in a hand-rolled script. I insisted on figuring out how to do it "correctly" by editing the network config files. Took too much time, and I never got it working exactly right. But it was servicable.
I don't remember most of what I did, but I do have an important hint: on Win2K you almost always want to map a share to a drive, rather than accessing the share directly. Very slow otherwise. I think XP is a little better this way.
I haven't worked a lot with Macs, but from what I've seen, they're particulary good with file sharing.
Since you ask right now, you are probably using the 'unstable' branch of Debian (where Netatalk recently broke for Mac OS X clients).
That's when I decided to dig into the world of NetInfo - the NIS-like information system for Mac OS X. Basically, I now configured my Mac OS X client as a NIS client, which also auto-mount file shares from my Linux server via NFS. It's not that hard to set up, really. A nice side effect is that the network drives perform significantly better than they did using AFP/Netatalk.
Of course, I also run Samba on my server. If you are looking for a single solution/protocol across platforms, then that's probably the route to go. Mac OS X comes with Samba.
Then, if you are looking for file synchronization tools (as opposed to network file sharing), let me recommend a little utility called "unison". Runs on Linux, Mac OS X (UNIX), and Windows.
It comes with Linux (of course) and for Windoes you can use WinSCP (do a google search for it). I know Mac Classic had a freeware SSH app, and with OS X you should have SSH.
Everytime you look at porn a devil gets their horns.
Creates a 1 pixel buffer at the edge of your screen. When you drag your mouse over it, it appears that the curser goes to other monitor, and the control of the keyboard too. Very handy. So with a combination of that, cygwin, samba, and netatalk, I can stay on top of all my files.
Also, OS-X speaks samba, so there's less and less need for the appletalk protocol.
CIFS/SMB for filesharing, since I have 2 Windows machines, and haven't taken the time to learn AFS/Coda. (samba, native windows implimentations)
Secure IMAP for sharing email. (courier-imap-ssl)
ssh, scp, and sftp for controlling, moving a few files, and forwarding X connections between machines. (openssh)
SMTP and NNTP proxies for mail and news. (exim in smarthost mode, leafnode/slrnpull)
midentd for forwarding identd requests in the NAT.
iptables for NATting the network, and xinetd to forward posts in.
Hmmm, I think that covers most of the information that my machines pass around to each other. :) You were probably just looking for imformation on
sharing files though.
Boxen: Mac, Linux, Sun, XP, XP, XP, XP + BSD via vmware, & sometimes Knoppix. Apologies for the plethora of XP..lots of gaming between family members.
Everything is configured to be an SMB server. Sun, Mac, Linux and BSD also export the shares as NFS servers. SMB, while an awful standard, just plain works thanks to the dedicated members of the Samba team (and all the forks of it). Use it and don't feel "slimy" just cause M$ made it so widely used. NFS isn't *that* difficult. If you've got many different types of boxes, you can easily do a "man" of the necessary stuff under everything but Mac OS X. Do a reply to this if you need to get it going on OS X since it's not as straightforward.
Three of the XP boxen are really just clients, so they normally pull from the rest when necessary (MP3, AVI, home dirs, etc). Unix boxen (except the Mac) use pam/ldap to avoid duplication and i'm working on getting kerberos to tie (most of) them all together (someday I'll have time). The good thing about network home dirs and central file servers is that backups are a cinch and folks can move from win machine to win machine and retain profiles, etc.
When I analyze traffic, I pretty much see most of the boxen accessing the Sun and Linux systems since they are the main storage beasts and one has the MP3's *:^)
One very nice thing about SMB is that it is easily tunneled via SSH, so you can access your shares - securely - from almost anywhere you can ssh port tunnel to/from (it's cake on linux and try the ssh client from netsarang.com to do the same - as easily - under M$...or just install cygwin).
I have to agree with one of the other posts: the Mac is just amazing when it comes to file sharing compatibility and speed (SMB shares map very fast and it handles NFS as a good BSD box should).
hope this helps.
Mind the gap...
Many moons ago (1997) I was administering a system that was mixed Win95/MacOS8/FreeBSD and had absolutely no problems running netatalk and samba sharing the same FS. This was production w/ maybe 30 users. I still use samba for my home server (BSD/WinXP), and I can't imagine the quality of netatalk has decreased over the past 6 years... At least you'll be able to share.
There are 3 linux boxes and an iMac on my LAN; I wanted some kind of cross-platform backup facility. Between AppleTalk, which required a kernel driver and a daemon, and FTP with PureFTPd, which I knew to be easy to install and configure, the choice was quickly made. FTP clients are also quite easy to use, even for lusers.
Of course, this sort of key issue has already been recognized and solved by the open-source community. You should at least take a look at the Andrew Filesystem which would provide one file sharing system across all your machines. Another good and reliable alternative it to use a Macintosh as a central file repository, since MacOS now comes pre-configured with Samba, NFS, and AFP file sharing.
Ouch! The truth hurts!
I've used AFS for a while now on Linux and various Unixes, and it does very well (even under "heavy loads", like moving a couple various gigabytes around at the same time). I know it works on the various Windows flavors that you have (although I've never used it on Windows), Linux support is there, and a glance at their download page shows that they have a Mac OS X package. Now whether it's stable or usable or not, I can't tell you. But if you can get satisfied with the Mac implementation, the rest ought to be a slam dunk. You'll still be out in the cold with the MacOS 9 box, however. A single FTP daemon on that machine might not be too great a concession.
There might be a slight learning curve to overcome in getting it all set up and ready to use, but once you get it where you like it, you shouldn't have to worry about it anymore. And it sounds like your needs are not quite enterprise-level, so you likely wouldn't need to expose yourself to its entire feature set anyway. I'd say given the diverse hardware in your office/lab it fits the bill pretty closely.
-B
Ash and Hickory, straight-grained and true, make excellent bludgeons, dandy for the cudgeling of vegetarians.