Samba共享可以由SMB客户在Windows或Linux平台访问。Windows访问Linux系统共享文件一般通过网络邻居或Windows的IE浏览器;Linux访问Windows系统下共享文件一般通过smbclient和smbmount命令实现。
(1) Windows客户使用Linux系统共享文件
一个正确配置的Samba共享可以通过Windows网络邻居或Windows的IE浏览器访问。其访问路径一般具有如下格式:
网上邻居\整个网络\工作组名\Linux机器名\Linux系统下目录
如果有问题,最值得怀疑的是Windows还不知道Samba服务器、用户和口令大小写的问题以及明文和加密口令问题。如果是Windows还不知 道Samba服务器,则在找到该计算机的Windows窗口刷新屏幕,等待几分钟或者重新引导Windows客户。如果是用户和口令大小写的问题,则在 [global]段中临时将用户名级和口令级设置足够大,如100。如果是明文和加密口令问题则在[global]段中设置encrypt passwords=yes和smb passwdfile=/etc/smbpasswd。
(2)用smbclient工具访问局域网上的Windows系统
在Linux系统下访问局域网上其他系统(包括Windows系统和Linux系统)的共享文件,有很多种不同的方式。下面我们先介绍smbclient工具。
用smbclient工具可以访问局域网上的Windows系统的SMB共享。smbclient提供一个类似FTP的界面,允许与另一个运行 SMB服务器的网络共享的计算机进行文件传输。mbclient将另一个共享作为本地目录加载。smbclient提供命令行选项查询服务器可用的共享目 录或者交换文件。关于所有命令行选项的详细信息,参考smbclient手册页。表1列出了smbclient工具最常用的一些命令及其功能。例如可使用 如下命令列出计算机15.26.40.9上所有共享文件:
#smbclient –L 15.26.40.9
其中,- L参数要求列表输出,15.26.40.9是欲访问机器的IP地址,也可以使用任何可以解析为该IP地址的机器名。若要传输一个文件,必须首先使用以下命令连接到Samba服务器:
#smbclient //15.26.40.9/homes -U gong
其中,参数//15.26.40.9/homes指定另一台计算机上的远程服务。通常是一个文件系统目录或者打印机。任何解析为该IP地址的名字都 可以替换该IP地址。-U选项允许指定希望用于连接的用户名。还有许多其他的smbclient命令配置,详细的信息请参阅smbclient手册页。如 果该用户需要口令,则smbclient工具提示输入口令,然后出现如下提示:
smb: \
\表示当前工作目录。下面列出smbclient的所有命令参数如表1所示:
表1 smbclient的参数及其含义
参 数 |
含 义 |
?或help [命令] |
提供命令的帮助消息,当不指定命令时提供一般的帮助 |
![shell命令] |
执行指定的shell命令或者为用户提供shell提示符 |
cd [目录] |
更改服务器上的指定目录(不是本地计算机)。如果不指定目录,则smbclient报告当前的工作目录 |
lcd[目录] |
在本地计算机上更改到指定的目录。如果不指定目录,则smb-client报告本地计算机上当前的工作目录 |
el[文件] |
如果用户拥有权限,则删除服务器上的指定文件。文件可以包含通配符 |
dir或ls[文件] |
列表显示指定的文件 |
exit或quit |
退出smbclient程序 |
get |
获得指定的远程文件并在本地服务器上保存该文件。如果指定了本地名称,则复制的文件以该文件名而不是远程服务器上的名称保存 |
mget[文件 |
复制所有指定的文件,包括所有匹配通配符的文件到本地计算机 |
md或mkdir[目录] |
在远程计算机上创建指定的目录 |
rd或rmdir[目录] |
在远程计算机上删除指定的目录 |
put |
从本地计算机上复制指定的文件到服务器 |
mput[文件] |
从本地计算机上复制所有指定的文件到服务器 |
print[文件] |
在远程计算机上打印指定的文件 |
queue |
显示在远程服务器上排队的所有打印作业 |
(3)用smbclient工具访问局域网上的其他系统
为了访问方便,可以使用smbmount命令允许将一个Samba共享加载为本地目录。要实现该功能,在本地工作站创建一个/mnt/test目录。使用root用户运行以下命令:
#/usr/sbin/smbmount ‘//15.26.40.10/homes’ ‘/mnt/test’ –U gong
该命令应在本地机器上运行,而且该机器应已经包含/mnt/test目录。Samba服务器在IP地址为15.26.40.9的机器上,本地机器可 以通过网络可以访问此服务器。注意任何解析为该IP地址的名字都可以替换该IP地址。在本地计算机上运行上述命令,以用户gong登录,将[homes] 段中定义的共享加载到本地/mnt/test目录。
要卸载该目录,可作为root用户运行下面的命令:
#smbumount /mnt/test
(4)用LinNeighborhood访问局域网上其他系统的共享文件
LinNeighborhood基于GUI界面,可用于在Linux系统下浏览局域网上运行Windows操作系统的“网络邻居”或其他运行Samba的Linux系统共享文件。下面介绍LinNeighborhood的用法。
1)下载LinNeighborhood软件包:首先到网上下载LinNeighborhood软件包。一般情况下LinNeighborhood 软件包的提供形式是.tar.gz文件,现在的最新版本是0.6.5版,其文件名为LinNeighborhood-0.6.5.glibc- i386.tar.gz。下载后保存到某个目录。这里假设用户保存到/temp目录。
2)解压缩并解包文件:执行下述命令可以完成文件的解压缩和解包。
#cd /temp //切换目录 #tar xvfz LinNeighborhood-0.6.5.glibc-i386.tar.gz //解压缩
3)执行程序:软件不用任何设置,就可以直接执行。若欲执行LinNeighborhood,直接找到可执行文件输入LinNeighborhood命令即可。例如步骤(2)解压缩解包后,可以输入以下命令执行程序:
//找到LinNeighborhood可执行文件所在目录,输入可执行文件名打开LinNeighborhood
#cd /temp/LinNeighborhood-0.6.5.glibc-i386 #./LinNeighborhood
打开程序出现如图3所示界面。
图3 LinNeighborhood窗口
以上就是Samba服务器的简易使用说明。在Linux下实现资源共享还有其他几种方法,我们将在接下来几天为您一一分解。