cifs文件系统实现linux windows之间的文件共享
首先安装Samba客户端:
$ sudo yum install samba-client
这个命令也将同时安装samba通用包和winbind客户端。
在Ubuntu上要安装smbfs程序包:
$ sudo apt-get install smbfs
然后我们从最简单的操作开始:在Linux平台实现SMB/CIFS文件共享的挂接。有很多方法可以实现此挂接。mount -o
sync,user=joy,pass=密码 -t cifs
//192.168.193.14/Users/joy/Desktop/javascript /mnt/
格式如下:
mount -t cifs //winserver/files /mnt/winshare
-o user=winuser,pass=winpass,dom=windomain
当然这个文件共享只在主机运行期间才能实现;重启主机后共享就会清除。用户可以通过在/etc/fstab文件中增加路径来增长挂载命令有效时间。
//192.168.193.14/Users/joy/Desktop/javascript /mnt/ cifs credentials=/etc/cifs.secret,noexec 0 0
这将完成同样的挂载操作,并将挂载命令标记为非执行的(the
noexec)。用户还需要创立cifs.secret文件来通过Windows的各种验证(也可以通过/etc/fstab来实现,但这种方法更安全一些)。
$ sudo touch /etc/cifs.secret
将这个文件与用户验证对应起来:
username=winuser
password=winpass
现在我们需要进行以下操作避免这个文件被随意浏览:
$ sudo chmod 0400 /etc/cifs.secret
然后将我们的共享挂接:
$ sudo mount /mnt/winshare
这条命令的功能是使主机重启后共享重新被挂接。
另外一个实现与Windows文件共享的方法是使用smbclient命令。Smbclient命令的作用更像是FTP客户端而非直接将共享文件挂接。使用这个方法时用户仍然需要提供一些验证信息和域信息。输入如下命令行:
$ smbclient //winserver/files -U winuser -W windomain
这样用户就能在windomain这个分区中使用winuser这个用户名与Windows主机上的共享文件进行连接。这里会要求用户提供一个密码。输入正确的密码后用户就能看到下面这个提示命令:
smb:\>
然后用户就能使用类似FTP的命令实现文件共享;例如,可以使用ls或者dir命令显示文件,使用mget和mput命令获取、存放文件,使用exit命令退出界面。