[zz]Strauts P2P VideoPhoneP2pDemo 代码浅析 [zz]應用防火牆後面安裝 Red5
Jun 21
  • 用samba共享可读写文件夹

用samba共享可读写文件夹
首先当然是要安装samba了:

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

下面我们来共享群组可读写文件夹,假设你要共享的文件夹为: /home/csx/share

首先创建这个文件夹

mkdir /home/csx/share
chmod 777 /home/csx/share

备份并编辑smb.conf允许网络用户访问
sudo cp /etc/samba/smb.conf /etc/samba/smb.conf_backup
sudo gedit /etc/samba/smb.conf

搜寻这一行文字

; security = user

用下面这几行取代
security = user

username map = /etc/samba/smbusers

将下列几行新增到文件的最后面,假设允许访问的用户为:administrator。而文件夹的共享名为 share
[share]
comment = Shared Folder with username and password
path = /home/csx/share
public = yes
writable = yes
valid users = administrator
create mask = 0777
directory mask = 0777

force user = nobody
force group = nogroup
available = yes
browseable = yes

然后顺便把这里改一下,找到[global]把 workgroup = MSHOME 改成
workgroup = WORKGROUP
display charset = UTF-8
unix charset = UTF-8

dos charset = cp936
后面的三行是为了防止出现中文目录乱码的情况。其中根据你的local,UTF-8 有可能需要改成 cp936。自己看着办吧。
现在要添加administrator这个网络访问帐户。如果系统中当前没有这个帐户,那么
sudo useradd administrator
要注意,上面只是增加了administrator这个用户,却没有给用户赋予本机

登录密码。所以这个用户将只能从远程访问,不能从本机登录。而且samba的登录密码可以和本机登录密码不一样。

现在要新增网络使用者的帐号:
sudo smbpasswd -a administrator
sudo gedit /etc/samba/smbusers

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

administrator = “network username”

如果将来需要更改candy的网络访问密码,也用这个命令更改
sudo smbpasswd -a administrator

删除网络使用者的帐号的命令把上面的 -a 改成 -x
sudo testparm
sudo /etc/init.d/samba restart

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

顺便方上一些中文说明

修改smb的配置文件:

$sudo gedit /etc/samba/smb.conf

在 [global] 段

加入:

unix charset = gb2312
dos charset = cp936

具体含义如下:

[global]……[homes]之间为全局设定. [homes]以下的为共享目录设定

全局设定:
[global]
workgroup = WORKGROUP #工作组或NT域名
NetBIOS Name = blue-lfs #本机器的NetBIOS名称
server string = LFS Samba Server #描述服务器信息
unix charset = gb2312 #使中文目录正常显示
dos charset=cp936 #同上,在Linux的X终端中正常显示中文名
security = user #samba验证密码方式,user:需要密码,share:不需要密码

hosts allow = 172.16.245. 127. #允许的主机ip
guest account = nobody #guest帐号,结合以下两项,没有通过密码验证的机器会以nobody
map to guest = Bad User #访问samba服务器中的公开资源。
map to guest = Bad Password

log file = /var/log/samba/log.%m samba日志存放位置, %m表示以连接机器的netBIOS名称记录
max log size = 0 #日志最大长度 (KB) 0表示无限制
;encrypt passwords = yes #是否使用加密密码,user级别使用(samba-3.0.13)不需要设定
smb passwd file = /usr/local/samba/smbpasswd #密码存放文件
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192 #提高性能
interfaces = 10.70.54.0/24 172.16.245.0/24 172.16.249.0/24
#如果有多个网络接口,必须全部列出来,否则可能会出错
dns proxy = no #不通过dns解析 netBIOS 名称

共享目录设定:
当使用者以不同帐号登陆samba服务器时,homes会变成相应的家目录(samba根据/etc/passwd决定帐号家目录)
[homes]
comment = Home Directories #目录描述信息
browseable = no #防止用户浏览其他用户的家目录
writable = yes #允许写入,同时需要samba服务器该用户有写入权限

;valid user = %S #可以使用该目录的帐号,%S表示任何在smbpasswd中记录的
;create mode = 0644 #创建文件的权限
;directory mode = 755 #创建目录的权限

[software] #使用者看到的共享目录名称
comment = LFS software
path = /software #共享目录的路径
public = no # 非公开的,需要合法帐号登陆
valid user = blue root #允许登陆的帐号
readonly = no # 允许写入
writable = yes #如果这里为no,则不可以写入. 最后出现的设定值有效
[public]
comment = public file
path = /tmp
public = yes
writable = no
guest ok = yes #允许guest帐号访问

Leave a Reply