这篇教程将为你讲解如何在一台Ubuntu 9.10服务器上搭建一个Samba文件服务器,并配置它使它能够基于SMB协议分享文件,添加用户等功能。这里的Samba服务器被配置成一台独立的服务器,而非域控制器。安装完成后,每一个用户都基于SMB协议,有他自己的可访问的文件,所有的用户都有一个有读写权限的共享的文件夹。
我已经测试无误,这将保证为你工作!
1 备注
在这里我使用的是Ubuntu 9.10的系统,主机名为server1.example.com,ip地址为192.168.0.100.
教程里所有的步骤都是以root权限运行的,因此你需要确保你是以root权限登录系统:
sudo su
2 安装Samba
登录到你的服务器的shell,安装Samba包:
aptitude install libcupsys2 samba samba-common
编辑 smb.conf 文件:
vi /etc/samba/smb.conf
在global部分,删除security = user前的#。参考如下:
[...]
# "security = user" is always a good idea. This will require a Unix account
# in this server for every user accessing the server. See
# /usr/share/doc/samba-doc/htmldocs/Samba3-HOWTO/ServerType.html
# in the samba-doc package for details.
security = user
[...]
这样设置是为了能够使linux系统用户登录到Samba服务器。
关闭这个文件并重启 Samba:
/etc/init.d/samba restart
3 添加Samba共享
现在我将添加一个所有用户都可以访问的共享.
创建一个共享文件夹,并改变把其属性,让其隶属于users组下:
mkdir -p /home/shares/allusers
chown -R root:users /home/shares/allusers/
chmod -R ug+rwx,o+rx-w /home/shares/allusers/
在/etc/samba/smb.conf文件的尾部,添加如下行:
vi /etc/samba/smb.conf
[...]
[allusers]
comment = All Users
path = /home/shares/allusers
valid users = @users
force group = users
create mask = 0660
directory mask = 0771
writable = yes
如果你希望所有用户都能够通过Samba读写他们自己的home文件夹,在/etc/samba/smb.conf添加如下几行:
[...]
[homes]
comment = Home Directories
browseable = no
valid users = %S
writable = yes
create mask = 0700
directory mask = 0700
现在我们重启Samba:
/etc/init.d/samba restart