Learning Debian GNU/LinuxBy Bill McCarty
1st Edition September 1999
1-56592-705-2, Order Number: 7052
360 pages, $34.95 , Includes CD-ROM
Once you've got your Samba server up and running, you can access it via Microsoft Windows, Linux, and other operating systems. This section shows you how to do so and also how to use your Samba server to create backups of important data files on client systems.
Microsoft Windows 3.11, 9x, and NT have built-in support for the SMB protocol, so systems running these operating systems can easily access your Samba server's resources. Under Microsoft Windows 9x and NT, you can access Samba resources by using the Windows Explorer. Log on using a userid that's authorized to access Samba resources. Then click on Network Neighborhood and you should see a subtree that corresponds to your Samba server. By expanding the subtree, you can see the browseable file and printer shares that are available. You can easily drag and drop files to and from a shared directory, assuming your userid is permitted the necessary access.
To use a shared printer, click on Start Settings Printers and then double click on Add Printer. The wizard will guide you through the setup procedure. Simply choose the Network Printer option and then browse to select the desired printer. If you configured the printer share without the browseable option, you cannot browse and therefore must type the name of the printer share. To do so, type two backslashes, followed by the name of your Samba server, followed by a single backslash, followed by the name of the printer share. For example, if you want to access a printer share named lp on the Samba server known as SERVER, you'd type \\SERVER\lp.
You can map a file share to a drive letter by using the Tools Map Network Drive menu item of the Windows Explorer. Simply select an available drive letter and type the name of the file share, which consists of two backslashes, followed by the name of your Samba server, followed by a single backslash, followed by the name of the file share. For example, if you want to access a file share named db on the Samba server known as SERVER, you'd type \\SERVER\db.
If you have difficulty connecting to your Samba server, follow the procedure given in the preceding section on troubleshooting.
Of course, an SMB client is available for Linux; you'll learn about it in the next subsection. SMB clients are also available for most popular operating systems, including IBM OS/2 and Mac OS. You shouldn't expect to have trouble getting them to work with Samba. If your client seems not to work, simply follow the procedure given in the troubleshooting section.
The Samba packages include a simple SMB client that can access your Samba server and other SMB servers accessible to your system. To demonstrate that your client and server are working, log on using a userid that has Samba authorization and issue the following command:smbclient -L localhost
You should see a list of the browseable shares available on your server. To query a different SMB server, issue the following command:smbclient -L server
serveris the name of the SMB server you want to contact. Rather than log on using a authorized userid, you can explicitly specify a userid by using this command form:smbclient -L server -U userid
To actually access resources via SMB, use the following command form:smbclient -L service -U userid
servicespecifies the name of the SMB host and share and
useridspecifies the userid to be used. The name of the SMB host should be preceded by two backslashes and followed by one backslash.
If the SMB server accepts your request, the client displays a special prompt:smb: dir>
dirindicates the current working directory on the SMB server.
To download a file from the server, issue the command:get file
filespecifies the name of the file. To upload a file to the server, issue the command:put file
filespecifies the name of the file. To list the contents of the current directory, issue the command:dir
filespecifies the name of the file. To enter a subdirectory, issue the command:cd dir
dirspecifies the name of the subdirectory. You can return to the parent directory by issuing the command:cd ..
To exit the SMB client, issue the command exit. You can obtain a list of commands by issuing the command help or obtain help on a particular command by issuing the command:help command:
commandspecifies the command for which you want help.
Ivan Volosuk has written an X11 interface for
smbclient, which you may find easier to use. You can learn more about it from his web page, available at http://www.rt.mipt.ru/frtk/ivan/.
You can use smbprint script included in the Samba package to print Linux files by using a printer share. However, you'll probably have to do some tweaking of configuration files and adjusting of shell scripts to get smbprint to work. This might be a good project for you to tackle after you've read Chapter 13, Conquering the BASH Shell.
One of the most practical uses of the Linux SMB client is creating backup copies of files stored on a Microsoft Windows system. To do so, simply share the drive or directory containing the files you want to backup: using the Windows Explorer, right click on the drive or directory, click on Properties, click on the Sharing tab, and select the desired share options. Then, access the share from Linux using smbclient. Once you have the SMB prompt, move to the directory you want to backup, and issue the following SMB command:tar c backup.tar
The files of the current directory and all its subdirectories will be backed up and stored in the file backup.tar on your Linux system. Of course, you can specify a filename other than backup.tar, if you wish. Once you've created the backup file, you can write it to a tape, a writable CD-ROM, or other media, if you need an offsite copy. If your backup requirements are meager, it may be sufficient merely to have a copy of the file on both your Windows system and your Linux system.
To restore a backup, move to the directory to which you want the files restored and issue the following SMB command:tar x backup.tar
The SMB client restores each file from the tar file. Of course, you must have write access to the shared directory in order to be able to write the restored files.
Back to: Learning Debian GNU/Linux
© 2001, O'Reilly & Associates, Inc.