时间: 2010-07-06 / 分类: WEB后端编程 - 开发与实践 / 浏览次数: / 0 个评论 发表评论
Ubuntu下的Samba共享服务器的配置
项目前端开发的架构
CSS Hack浏览器兼容IE6+IE7+IE8+IE9+FF
WEB前端开发中的一些编程风格和书...
黄金分割与摄影构图

Samba是Ubuntu和Windows进行网络共享的工具,比如分享打印机,互相之间传输资料文件等,在Ubuntu下面安装和配置Samba服务器以便于Windows可以自定义的根据权限访问,步骤如下,以备查:

一. 首先samba的安装:

sudo apt-get insall samba
sudo apt-get install smbfs

二. 创建共享目录:

mkdir /home/amiku/公共文件
sudo chmod 777 /home/amiku/公共文件

             如果是更深一层的目录,需要在上一级目录上也要chmod

三. 创建Samba配置文件:
1. 备份现有的配置文件

sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.bak

2. 修改现配置文件

sudo gedit /etc/samba/smb.conf

samba有五种安全级别,它们分别是:
:不需要samba账户就可登陆samba服务器
:需要添加samba账户才可以登陆samba服务器
server:由另外一台samba服务器来对用户进行身份验证。
domain:把samba服务器加入到NT域,由NT的域控制器来进行身份验证。
ADS:Active Directory ,活动目录服务,它是samba3.0中新增的身份验证方式。采用ADS验证方式,samba服务器集成到活动目录中。
以上是它的五个运行级别;share,user这二个级别适合用小型部门,如网吧、企业内部局域网等,也是samba常用的级别。

如果将Samba的安全级别设置了user级别,那么用户登录Samba主机必须输入密码,此用户必须是Linux中的/etc/passwd文件存在的用户。在smb.conf文件中,默认行是:

;=user

用下面这几行取代

security = user
username map = /etc/samba/smbusers

假设允许访问的用户为:share,共享的目录在  /home/amiku/公共文件

在smb.conf最后添加如下类似配置段:

[公共文件] 这里的share名字是共享的文件夹的名字
comment = Shared Folder with username and password
path = /home/amiku/公共文件 #共享的路径
available = yes #制定的共享资源是否可用
browsealbe = yes #制定的共享资源是否可以浏览
public = yes #如果是no表示除了valid users对应的用户外,其它用户在进入samba服务器后看不见这个目录,如果为yes,虽然能看见这个目录,但除了valid users对应的用户能进入这个目录,其它人进不了。
#guest ok = yes/no #意思和上面的public意义相同
writeable = yes #该共享路径是否可写
valid users = share  # 只有该share用户才可以访问,多个用户之间用逗号隔开
invalid users = xxxx,………… #禁止访问该共享的用户
create mask = 0700
directory mask = 0700
force user = nobody
force group = nogroup

然后把这里改一下,找到[global]把 = MSHOME 改成如下 :(注意,这里的WORKGROUP是共享中的工作组名称)

workgroup = WORKGROUP
display charset = UTF-8
unix charset = UTF-8
dos charset = cp936

后面的三行是为了防止出现中文目录乱码的情况。

现在要添加share这个网络访问帐户。如果系统中当前没有这个帐户,那么

sudo useradd share

要注意,上面只是增加了share这个用户,却没有给用户赋予本机登录密码。所以这个用户将只能从远程访问,不能从本机登录。而且samba的登录密码可以和本机登录密码不一样,所以需要新增网络使用者的帐号:

sudo smbpasswd -a share
sudo gedit /etc/samba/smbusers

在新建立的文件内加入下面这一行并保存

share = “network username”

如果将来需要更改share的网络访问密码,也用这个命令更改

sudo smbpasswd -a share

删除网络使用者的帐号的命令把上面的 -a 改成 -x

sudo smbpasswd -x share

测试并重启Samba:
sudo testparm
sudo /etc/init.d/samba restart

或者

sudo service restart

最后退出重新登录或者重新启动一下机器。

备注:如果在Ubuntu的系统下右击一个文件夹,点共享,然后创建共享文件,结果在WinXP下的局域网可以看到那个共享的文件夹,但是就是点不开! 为什么?原因就在于权限问题,需要给这个文件夹可读可写可运行的权限

四. 测试Samba共享

smbclient -L //localhost/share

在Linux中访问Windows的共享目录

在Linux中,可以直接将Windows中的共享目录挂在到本机中,然后就像操作自己主机上的文件一样进行操作。我们可以使用smbclient命令查看指定主机的共享目录信息。

# smbclient -L //[目标主机IP地址]

当查看到Windows系统中的共享目录后,可以使用smbmount命令来进行挂载共享的目录,smbmount命令的格式为:

#smbmount ‘\\Windows主机IP\共享的目录名’ 挂载点 -O username

 

参考: http://wiki.ubuntu.org.cn/Samba,备查。

      站点地图 | 关于我 | 返回顶部
    Copyright © 2001-2013 { amiku.cn | zhangshunjin.com }. Powered by 

    阿米酷

    张顺金


    浙ICP备11002820号-1