Here's my quick-n-dirty method for turning a pile of Intel hardware into a Samba server.

Disclaimer: this guide does not cover security at all. This quickie guide was written to get Samba up and runing quickly in a small, simple, trusted environment. If you're concerned about security, buy a book or RTFM.

  1. Install RedHat Linux 7.x
    (I've added some notes from my recent Fedora Core 2 installation)
  2. Log in as root, type setup, and choose System Services.
  3. Enable smb. (This will cause smbd to start at boot.)
  4. Edit the file /etc/samba/smb.conf and change the workgroup name to match your workgroup's name.
  5. Issue testparm to make verify the validity of your smb.conf file.
  6. Now, either a) reboot or b) issue service smb start. If you change smb.conf further, restart the service with service smb restart. (The four main options to use with 'service' are start, stop, restart, and status. You can also say reload and condrestart but I don't know what they do.)
  7. Now, just add users with the 'smbadduser' command. (OR with 'smbpasswd'; see below.) The syntax is smbadduser UNIX username:Windows username so assuming you've got a pretty small shop, it shouldn't be too hard to make sure that each user has a Windows login name that matches an account on your Linux server. For me, for example, it's just a matter of saying smbadduser brian:brian. Some text will fly by and you will be prompted to enter a password twice. There are, of course, ways to automate this, or take advantage of an already existing list, but for now, just add each user by hand, first with Linux's useradd command, then with smbadduser.

    On Fedora Core 2 with Samba 3: Create the users with Linux's useradd command, then say smbpasswd -a username for each user. Just one step but you need the -a flag on each, like
    smbpasswd -a larry
    smbpasswd -a curly
    smbpasswd -a moe
  8. Now you can connect to the server by mapping a network drive to \\ip.address\username. (In my case, on a system I just built, it was \\192.168.0.5\brian.) This will mount your home directory (/home/username) as a drive in Windows.
  9. There is much more that can be done. The most common thing is to assign a NETBIOS name to the server. Also, you can create common shared areas, share printers, have users added automatically, have their passwords synced with their local UNIX passwords, etc. SAMBA can even be a primary domain controller. However, if you just want to get a new box with a big shared drive up and running, this is all that needs to be done.
  10. You might have to mess with the "encrypt passwords = yes" line. I ran into trouble on my last go-round. Not sure if the defaults in smb.conf change from one version to the next, or if I was using old versions of Windows in the past, or what. But, if it is commented out when it should be uncommented or yes when it should be no you won't be able to connect to any shares from Windows.
  11. (what follows is under construction)
  12. Everyone likes PDFs, right? Here's how to make a virtual network printer that you can print to from Windows that will make a PDF for you.

Valid HTML 4.01!