本教程介绍了在OpenSUSE 12.3上安装Samba文件服务器,以及如何配置它以通过SMB协议共享文件以及如何添加用户。 Samba被配置为独立服务器,而不是域控制器。 在最终的设置中,每个用户都可以通过SMB协议访问自己的主目录,所有用户都有一个具有读/写访问权限的共享目录。
我不会保证这将为您工作!
1初步说明
我在这里使用OpenSUSE 12.3系统,主机名为server1.example.com
,IP地址为192.168.0.100
。
2安装Samba
我们可以安装Samba,如下所示:
zypper install cups-libs samba
不幸的是,Samba与包模式冲突 - openSUSE-minimal_base-conflict
。 因此,我们必须选择卸载该包:
server1:〜#zypper安装cups-libs samba
正在加载存储库数据...
阅读安装的软件包...
'cups-libs'已经安装好了。
没有'cups-libs-1.5.4-5.2.1.x86_64'的更新候选。
最高可用版本已经安装。
解决包依赖关系...
问题:samba-3.6.12-59.2.1.x86_64要求samba-client> = 3.6.12,但无法提供此要求
可卸载的提供者:samba-client-3.6.12-59.2.1.x86_64 [openSUSE-12.3-1.7]
samba-client-3.6.12-59.2.1.i586 [repo-oss]
samba-client-3.6.12-59.2.1.x86_64 [repo-oss]
解决方案1:卸载模式 - openSUSE-minimal_base-conflicts-12.3-7.10.1.x86_64
解决方案2:不要安装samba-3.6.12-59.2.1.x86_64
解决方案3:不要安装samba-3.6.12-59.2.1.x86_64
解决方案4:忽略samba-3.6.12-59.2.1.x86_64忽略其一些依赖关系
从上面的解决方案中选择数字或取消[1/2/3/4 / c](c):
< - 1
编辑smb.conf
文件:
vi /etc/samba/smb.conf
确保您在[全局]
部分中具有以下行:
[...] security = user passdb backend = tdbsam [...] |
这使得Linux系统用户能够登录到Samba服务器。
(如果您收到消息您没有安装有效的vim二进制包,请安装“vim”,“vim-enhanced”或“gvim”
,请运行
zypper install vim
安装vi并重试。 )
然后创建Samba的系统启动链接并启动它:
systemctl enable smb.service
systemctl start smb.service
3添加Samba共享
现在我将添加所有用户都可以访问的共享。
创建用于共享文件的目录,并将组更改为用户
组:
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读取和写入主目录,请将以下行添加到/etc/samba/smb.conf
(请确保您注释掉或删除smb
中的其他[homes]
部分。 conf
文件!):
[...] [homes] comment = Home Directories browseable = no valid users = %S writable = yes create mask = 0700 directory mask = 0700 |
现在我们重新启动Samba:
systemctl restart smb.service
4添加和管理用户
在这个例子中,我将添加一个名为tom
的用户。 您可以按照相同的方式添加任意数量的用户,只需用命令中所需的用户名替换用户名tom
。
useradd tom -m -G users
(如果您看到以下错误,请忽略它:
server1:~ # useradd tom -m -G users
configuration error - unknown item 'LASTLOG_ENAB' (notify administrator)
server1:~ #
)
在Linux系统用户数据库中设置tom
的密码。 如果用户tom
不能登录到Linux系统,请跳过此步骤。
passwd tom
- >输入新用户的密码。
现在将用户添加到Samba用户数据库中:
smbpasswd -a tom
- >输入新用户的密码。
现在您应该能够使用文件浏览器(地址为\\ 192.168.0.100
或\\ 192.168.0.100 \ tom
for tom
的主目录)使用用户名tom
和所选密码和存储文件从Windows工作站登录在Linux服务器上,在tom
的主目录或公共共享目录中。
5链接
- Samba: http : //www.samba.org/
- OpenSUSE: http : //www.opensuse.org/