叨叨
由于项目中产生很多了很多的文档,为了集中存放,决定搭建一个服务器跑samba。也不知道当初怎么想的,就决定下来用unix系统了,这中间从freebsd到solairs真是个折腾啊!(不然也不会有这篇文章^_^)。
其实用windows或是linux安装配置起来都是很方便的,选择unix的原因无非是因其稳定,相对安全。刚开始是在虚拟机中安装freebsd来着,想着如果能够在虚拟机里配置起来再配真机应该很简单了,可是在虚拟机的freebsd中采用的是最小安装,然后执行安装samba时,那可叫个慢啊,各种依赖下载编译安装。最后又因为有些依赖无法下载而安装失败。我看是无缘freebsd了,转而安装solairs。
写完后回头看了看,完全成了意识流了(不好意思各位),不过自我感觉该说的,以及自己遇到的一些注意的点也都交代清楚了,如果各位发现了什么错误不足请务必留言或邮件告知。
系统安装
首先说明我是光盘安装,因为U盘安装实在搞不定啊。奇葩之处在于,当你下载了官网提供的U盘安装版时,得在solairs系统下通过usbcopy工具进行写U盘操作(扯远了)。
进入安装界面后会先让你选择键盘布局,输入27选择默认美式布局,紧接着选择语言,输入3选择默认English。
显示操作,选择1进行系统安装。
欢迎屏,注意左下角按F2就等于下一步。跳过欢迎屏后选择进入Discovery Selection,这步选择Local Disk即使用本地磁盘。
进入到Disks,直接F2,不需要犹豫的。
接下来选择使用整个磁盘(Use the entrie disk),按F2继续。
下一步填入计算机标识,然后进入Network设置界面,这里我选择Automatically,因为到后边还可以再次设置。
接下来是时间设置、语言设置等。在User界面设置root密码,以及用户。
下一个界面是设置在oracle注册的邮箱密码,以获得一些官方支持,此处可直接F2跳过。
接下来设置代理,这里不需要设置直接F2跳过,然后是Installation Summary显示之前的设置总览,按F2后就开始了安装进程。安装到100%时可能会有较长时间的等待,此时不要错以为是安装失败,千万不要按F9。
安装完成,按F8可重启。
网络配置
接下来进入系统后我们就开始配置网络,首先交代下我所处的网络:
IP地址:211.68.35.237
掩码:255.255.255.0
网关:211.68.35.1
DNS:211.82.96.1
地址段:211.68.35.223~211.68.35.242
任务一:通过笔记本无线连接外网
在linux中或freebsd中用ifconfig就搞定了,但在solairs11中添加了两条新的命令ipadm和dladm(这个这里用不到)。详细用法oracle官网有【1】,这里就以我的需求进行说明。切换到root用户,键入如下命令查看起来的网卡有哪些。
#ifconfig -a
我这里显示有lo0,net0两张网卡。根据名字可以知道net0为我的物理网卡,lo0是回环网卡(不知道这样叫对不对)。运行如下命令可知在net0上的配置。
#ipadm show-addr
我这里显示的net0/v6,net0/v4代表在物理网卡net0上有两种配置,其中v4代表ipv4的一些配置,同理v6是代表ipv6的一些配置(可删除),像v4,v6可以在设置时随便起名字。如下命令是删除在net0上的v6的配置。
#ipadm delete-addr net0/v6
接下来,为了安装samba软件,我们需要联网来操作。但是,我手头只有笔记本电脑而且只能连接无线,更要命的是无线需要通过web弹出页面的用户名密码认证后才可上网。因此,要想solairs联网就必须通过我的笔记本电脑,即要通过网线连接笔记本与服务器,然后再将笔记本的无线网络共享给笔记本的有线网卡才行。因此在笔记本端须执行如下操作:
打开网络中心,点击无线网络->属性->共享,然后进行如下设置,记得点选“本地连接”,同时记得点击设置(图中右下角小红框)在弹出框中给所有选框打钩。
这样就可以将无线网络的共享给有线网络,但是这样一来笔记本的有线网卡的ip地址就会被强制性的通过dhcp来分配了(而不管你之前设置的ip是多少),同时服务器端也只能通过dhcp来进行自动分配。在服务器端输入如下命令可以设置ip为dhcp自动分配。
#ipadm create-addr -T dhcp net0/v4d
同时删除其他的net0/xxx配置。如果不出意外就可以访问外网了。
任务二:联网安装samba
运行如下命令$pkg search samba,可以看到屏幕上列出的关于samba的一些安装文件信息。
接下来先切换到root,选择上图列表中的第一个samba安装文件,输入命令#pkg install service/network/samba,如下图所示便开始下载相应文件同时自动解决依赖。
稍等片刻,系统会自动完成安装。
任务三:配置固定ip,网关,DNS
输入命令#ipadm create-addr –T static –a 211.68.35.237/24 net/v4设置ip,同时删除之前因为联网需要所设定的dhcp配置即net0/v4d。
输入命令#route –p add default 211.68.35.1来设置默认网关。
输入以下命令(图中所示)来设置DNS服务。
至此关于安装和网络的配置就告一段落。关于网络配置这块也可参考百度文库的文档【2】。
samba配置
先介绍下samba配置文件:
Global Settings(全局设置)
该设置影响Samba服务整体运行环境,是针对所有共享资源进行的设置。
Share Definitions(共享设置)
该设置针对的是共享目录个别的设置,只对当前的共享资源起作用。
Home Settings(个人主目录设置)
对每一个账号所对应的主目录进行统一设置
workgroup = WORKGROUP
设置Samba服务器所属的工作组名称
netbios name = Samba
设置Samba服务器的名称
server string = Samba Server
设置Samba服务器的简要说明
hosts allow = 202.193.161. 127.
设置允许访问Samba服务器的ip段
username level = 32
设置用户名长度限制为32位
password level = 32
设置密码长度限制为32为
Share Definitions(共享设置)
path = /home/samba
指定当前共享资源的完整路径
comment = samba share
注释说明
public = no
是否公开共享 (只有当security = share时此项才起作用)
vaild users = user
设定只有此名单内的用户才能访问共享资源
invalid users = user
设定只有此名单内的用户不能访问共享资源
browseable = yes
是否可以浏览
read only = yes
是否为只读
writeable = yes
是否可写
read list = user, user1, user2
设定此名单内的用户为只读
write list = user, user1
若设定为只读时,则只有此设定的名单内的用户才可作写入动作
create mask = 0664
建立文件时所给的权限
directory mask = 0775
建立目录时所给的权限
我这里的情况是组员六人各一个账号。这里假设
用户组:samba_admin,PROJ。
用户:u1,u2,u3,u4,u5,u6。
下面进行实际操作,切换到root账户;
然后运行命令#groupadd samba_admin来创建samba_admin群组;
运行命令#groupadd PROJ来创建PROJ群组;
运行命令#useradd –g samba_admin –G PROJ –s /usr/bin/false u1来创建用户u1,这里-g 用户所属组,-G 用户附加组。-s是设定用户登陆到系统后所使用的shell,这里是/usr/bin/false也就是说u1账户只能用来访问samba而不能登录系统。其他的五个用户也如上命令来配置。
然后创建文件服务器存放文件的目录,在服务器的opt目录下使用命令#mkdir test_dir创建test_dir文件夹。
接下来就该修改samba的配置文件了,我看网上关于samba的配置多是下载源码然后编译,我嫌麻烦就使用了pkgadd的方式,因此配置文件smb.conf的位置会有些不同,我这里是在/etc/samba文件夹下有一个smb.confexample文件,键入命令#cp smb.confexample smb.conf进行备份。键入命令#vim smb.conf来编辑配置文件。
这里更改如下:
security = usr
local printers = no
在Share Definitions部分添加下列信息(或直接改动[public]这块)
[test]
comment = this is a test
path = /opt/test_dir
public = yes
create mask = 0644
directory mask = 0775
writable = yes
browseable = yes
printable = no
valid users = @PROJ
改动好保存,重启nmbd,smbd,winbindd三个服务,命令为:
#pkill nmbd // 首先是停止 三个服务
#pkill smbd
#pkill winbindd
#nmbd –D //接着开启三个服务
#smbd –D
#winbindd –D
在window下呼出运行,输入\\211.68.35.237回车应该就能弹出登陆框了。但是还没给每个用户设置密码所以仍然不能访问,接下来进行最后一步,设置密码。在solairs下键入命令#smbpasswd –a u1来为用户u1设置密码(其他用户也一样),这是不出意外就可以访问了。
参考内容