我们经常用的比较多的就是在winodws上共享linux主机的资源,如用linux做文件共享服务器、FTP服务器等。但是在linux上能否访问到windows的共享资源了,今天我们就做一个实验。

     在linux centos上访问windows的共享资源只需要在linux 上安装samba-client包并配置就可以实现了,具体方法如下。

1. 在windows上设置一个共享文件夹名称为windowsshare权限为所有人可读可写(设置成只读的也可以,但是不能上传东西)。
 
 
2.  然后在该文件下新建一个windows_share.txt的记事本。在centos上访问该资源
(1)安装samba-client包,并启动samba服务这个就不在介绍了。
(2)列出windows上的所有共享资源信息
             smbclient -L  192.168.100.9
 
 
上面显示的是输入root的密码,其实就是输入windows主机的Administrator的密码。
smbclient  //192.168.100.9/windowsshare -U  Administrator
在弹出的窗口中输入windows主机的Administrator的密码就可以了进入windowsshare文件夹了 。(在域环境下好像smbclient -L  192.168.100.9 输入密码之后报错了。但是smbclient  //192.168.100.9/windowsshare -U  Administrator  在域环境下的Administrator应该为 “域名/用户名”的格式,输入相应用户名的密码之后可以直接进入到共享文件夹的目录下。)

输入winodws主机的密码之后就可以进入到winodws共享文件夹下了,并且可以看到之前建立的共享文件windows share.txt.
在这个界面下面用的命令和FTP的命令是一样的。
dir显示远程主机(windows主机)上该文件夹中的资源
!dir显示(本地主机)linux 主机中当前登录用户目录下的资源
cd 切换(远程主机)windows主机上的目录路径
lcd切换(本地主机)linux主机上的目录路径
quit 断开与共享文件夹之间的链接
注意:这里的远程主机和本地主机在不同的场合不同。例如:现在是在linux下访问windows上的共享资源,所以linux是本地主机,而windows是远程主机。
(3)列出远程主机上的共享文件夹中的资源并下载到本地主机上。
get 就是下载的意思。直接get 后面跟文件名就可以下载了。

(4)列出本地主机上的资源并“上传”(其实就是写的意思)到远程主机上。
put就是上传的意思,直接put后面跟需要上传的文件名即可上传上去。

(5)挂在远程主机上的共享文件夹到本地主机上,然后进行读写操作。
先在本地主机上新建一个文件夹 mkdir /home/test 然后在挂在。用的命令如下:
 
mount –t cifs –o username=Administrator //192.168.100.9/windowsshare   /home/Test
 
表示将IP为192.168.100.9的windows主机下的windowsshare共享文件夹挂载到linux主机的/home/Test文件夹下,用的是windows主机的administrator的权限访问。
解释一下命令:mount 是linux下的挂载命令、 -t是一个参数、 cifs是文件的格式、 –o 是(optinos缩写表示选项)以用户的意思、username就是用户名,后面跟的就是windows主机上的用户 、//192.168.100.9/windowsshare 是windows主机下的共享文件夹的路径、/home/Test 表示将windows主机的共享文件夹挂载到linux下的路径。

(6)把本地主机上的文件拷贝到已经挂载的共享文件夹中。

在/home下创建了一个guazai2.doc的文件。然后拷贝到刚才已经挂载成功的/home/Test目录下。在访问一下winodws主机的共享文件夹,看看是不是已经有我们刚才拷贝进去了文件了?
我们通过访问共享文件夹的方式确实在winodws主机上看到了,之前上传的guazai2.doc文件。说明确实是把winodws主机上的共享文件夹挂载到linux主机上了。
 
(7)解开挂载
断开刚才挂载在linux /home/Test路径上的winodws共享文件夹。
                   umount  /home/Test
 总结:此实验成功实现了linux主机访问windows主机的共享资源。如果今后我们的linux主机的磁盘空间不足啊,或者是需要把linux主机的文件备份到windows上、或者是把winodws主机的资源备份到linux上、或者是上传下载文件、共享软件等都可以用这种方法实现。