有时需要将linux作为一个文件服务器,在windows需要访问,如果每次都通过ftp下载,觉得太麻烦,可以设置一个共享目录,然后就可通过浏览器直接访问共享目录中文件了。
1. 共享一个目录,任何人都可以访问,即不用输入密码即可访问,要求只读。
打开samba的配置文件/etc/samba/smb.conf
[global]部分
把”MY GROUP”改成”WORKGROUP”
把” security = user” 修改为 “security = share”
然后在文件的最末尾处加入以下内容:
[share] comment = share all path = /tmp/samba browseable = yes public = yes writable = no mkdir /tmp/sambachmod 777 /tmp/samba
启动samba服务
/etc/init.d/smb start
测试你配置的smb.conf是否正确,用下面的命令
testparm
如果没有错误,则在windows机器上的浏览器中输入 file://IP/share 看是否能访问
2. 共享一个目录,使用用户名和密码登录后才可以访问,要求可以读写
打开samba的配置文件/etc/samba/smb.conf
[global] 部分内容如下:
[global] workgroup = WORKGROUP server string = Samba Server Version %v security = user passdb backend = tdbsam load printers = yes cups options = raw
然后加入以下内容:
[myshare] comment = share for users path = /samba browseable = yes writable = yes public = no
保存配置文件,创建目录:
mkdir /sambachmod 777 /samba
然后添加用户。因为在[globa]中” passdb backend = tdbsam”,所以要使用” pdbedit” 来增加用户,注意添加的用户必须在系统中存在。
useradd user1 user2pdbedit -a user1 # 添加user1账号,并定义其密码pdbedit -a user2pdbedit -L # 列出所有的账号
测试:
打开IE浏览器输入file://IP/myshare/ 然后输入用户名和密码
3. 使用linux访问samba服务器
Samba服务在linux下同样可以访问。前提是你的linux安装了samba-client软件包。安装完后就可以使用smbclient命令了。
smbclient //IP/共享名 -U 用户名
[root@localhost]# smbclient //10.0.4.67/myshare/ -U user1Password:Domain=[LOCALHOST] OS=[Unix] Server=[Samba 3.0.33-3.29.el5_6.2]smb: >
出现如上所示的界面。可以打一个”?”列出所有可以使用的命令。常用的有cd, ls, rm, pwd, tar, mkdir, chown, get, put等等,使用help + 命令可以打印该命令如何使用,其中get是下载,put是上传。
另外的方式就是通过mount挂载了:
如:
mount -t cifs //10.0.4.67/myshare /mnt -o username=user1,password=123456
格式就是这样,要指定-t cifs //IP/共享名 本地挂载点 -o后面跟username 和 password
挂载完后就可以像使用本地的目录一样使用共享的目录了。