As Good A Place As Any
Tim Thomas's Blog
在 Workgroup 模式下配置 OpenSolaris CIFS Server
本文介绍一个快速简单的过程,演示如何在 Workgroup 模式下配置 OpenSolaris CIFS Server。
我的工作环境是安装了 Solaris Nevada build 86 的 Sun Fire X4500....
root@isv-x4500b # uname -a
SunOS isv-x4500b 5.11 snv_86 i86pc i386 i86pc
我已经创建了一个名为 "tank" 的 ZFS 存储池,现在执行下列步骤:
1. 启用 CIFS 服务器
root@isv-x4500b # svcadm enable -r smb/server
svcadm:svc:/milestone/network depends on svc:/network/physical, which has multiple instances
我在 google 上搜索了这条诊断消息,发现可以将其忽略。
2. 创建 ZFS 文件系统
root@isv-x4500b # zfs create -o casesensitivity=mixed tank/cifs0
3. 通过 SMB 共享新文件系统并检查操作的状态
root@isv-x4500b # zfs set sharesmb=on tank/cifs0
root@isv-x4500b # sharemgr show -vp
default nfs=()
zfs
zfs/tank/cifs0 smb=()
tank_cifs0=/tank/cifs0
4. 更改共享的名称
我不喜欢默认的共享名称 tank_cifs0,所以我将其更改为 cifs0
root@isv-x4500b # zfs set sharesmb=name=cifs0 tank/cifs0
root@isv-x4500b # sharemgr show -vp
default nfs=()
zfs
zfs/tank/cifs0 smb=()
cifs0=/tank/cifs0
5. 设置工作组的名称
默认情况下,工作组名称为 "workgroup",但我想将其更改为 "solcifs"。
root@isv-x4500b # smbadm join -w solcifs
Successfully joined workgroup 'solcifs'
6. 安装 SMB PAM 模块
将下列行添加到 /etc/pam.conf 的结尾:
other password required pam_smb_passwd.so.1 nowarn
在整个过程中,这是惟一需要编辑文件的地方,而且这是一次性的。
7. 设置/更改在连接到 CIFS 共享时将用于验证的 Solaris 用户密码
我将使用管理员用户,但实际上我们可以使用服务器知道的任何 Solaris 用户。
root@isv-x4500b # passwd root
New Password:
Re-enter new Password:
passwd:password successfully changed for root
安装了 SMB PAM 模块之后,将生成可由 Windows 以及 Solaris 使用的密码。这是一个必需步骤。
8. 在 Windows 中映射共享
在 windows 中,共享通过其 UNC 路径访问:\\isv-x4500b\cifs0。OpenSolaris CIFS 不支持未验证用户对共享的访问:它没有类似于 SAMBA 的 "guest mode" 的模式。在本例中,我以 root 的身份通过验证。
映射后的共享如下所示...

在 Windows 中创建的文件将由验证时使用的用户在 Solaris 服务器上拥有。如果此用户没有对共享目录的正确 UNIX 权限,则一些文件操作将失败。使用 chmod 可以轻松修复此问题。
我还可以在 Windows 中浏览 OpenSolaris CIFS 服务器...

更多信息
OpenSolaris Project:CIFS Server 主页
Open Solaris CIFS Documentation 包括 Solaris CIFS Administrators Guide & Troubleshooting Information
此外,请考虑加入 Open Solaris Storage Discuss Forum
Posted at 09:00AM Apr 26, 2008 in Storage |