王路平
Solaris 11作为云操作系统,其本身集成的软件已经高度集中,其侧重点主要在于硬件的一些驱动以及常用的一些软件,而其他部分,需要用户自己去“云”里面查找和安装。
由于Solaris 11的特殊性,比如,OS的文件系统必须采用zfs等,导致有些内容在安装的过程中客户在定制过程中,常常忘记一些常用的设置。本文针对Solaris 11安装后,一些需要处理的内容做一个简单的介绍。
软件仓库的建立SRU
该步骤是安装完Solaris 11后必须做一个重要的一步,其他的软件比如Solaris 11的图形桌面必须从软件repository里面去查找和安装,还有比如开发工具gcc等程序也是从中进行安装。
软件Repository在Solaris11安装后,有一个缺省指向,就是ORACLE公司的网站,但是,一般企业的服务器都不接互联网络的,所以无法完成这个云内容的升级和安装等操作。
如果某数据中心曾经部署过Solaris 11的话,那么就有可能有SRU的分布,因此需要使用pkg set-publisher来进行设置,当然,该设置有两种,一种就是网络分布,还有一种就是本地的分布。软件Reposity的分布,可以参考博文:
http://blog.chinaunix.net/uid-8860-id-3777457.html
swap大小的调整
swap缺省情况下,Solaris 11安装后被设置为4G大小,这个大小对于许多程序来说太小了,而且目前,许多服务器的内存的都非常大,动辄256G等,因此,无论从操作系统来讲,还是从应用程序来讲,4G的swap缺省小了点。
Swap设备是从rpool里面分配的一个volume zvol,可以使用命令swap –l来查看,设备一般为/dev/zvol/dsk/rpool/swap,通过查看zfs的man页,可以指导,目前在zfs作为root跟系统的时候,已经不再支持文件的swap,也就是说像以前那样,在root根系统下mkfile一个大文件,然后把这个大文件作为swap设备的方法已经是行不通了。” Do not swap to a file on a ZFS file system. A ZFS swap file configuration is not supported”。
那么该如何调整swap的大小呢,只有从zvol上进行调整,具体方法如下:
# swap -d /dev/zvol/dsk/rpool/swap 删除原有的swap设备
# zfs volsize=32G rpool/swap 增加swap设备大小
# swap -a /dev/zvol/dsk/rpool/swap 将增加大小的swap设备重新加入swap
Solaris 11桌面的安装
缺省情况下,Solaris 11的桌面程序不安装,对于X-windows系统都不再支持,为了支持X-windows系统,必须安装Solaris11的桌面程序。
Pkg set-publisher设置好如阿健repository后,使用pkg install solaris-desktop来进行桌面程序的安装,为了支持xmanager程序的xbrower,必须修改/etc/gdm/ custome.conf 文件,在[xdmcp]下加入Enable=true,然后重新启动gdm服务,svcadm enable gdm:default,如果该命令无法启动gdm的话,就必须reboot系统。
另外,在安装ORACLE的时候,runInstaller程序需要motif支持,因此,motif程序也是必须安装的,pkg install motif既可以进行安装。
Solaris 11的镜像
rpool为Solaris 11操作系统盘的zpool池组名,如果在安装的过程中,没有指定镜像的话,在安装结束后,必须手工进行操作系统盘的镜像。
具体方法如下:
1. 使用zpool status rpool查看rpool的设备和状态,如下:
pool: rpool
state: ONLINE
scrub: none requested config:
NAME STATE READ WRITE CKSUM
rpool ONLINE 0 0 0
c1t0d0s0 ONLINE 0 0 0
errors: No known data errors
2. 将镜像盘的分区做成与原盘一样
prtvtoc /dev/rdsk/c1t0d0s0 | fmthard -s - /dev/rdsk/c1t1d0s0
3. zpool attach将镜像追加进zpool里面形成镜像
zpool attach rpool c1t0d0s0 c1t1d0s0
等待镜像做好,状态如下:
zpool status rpool
pool: rpool
state: ONLINE
status: One or more devices is currently being resilvered. The pool will
continue to function, possibly in a degraded state.
action: Wait for the resilver to complete.
scrub: resilver in progress for 0h1m, 24.26% done, 0h3m to go
config:
NAME STATE READ WRITE CKSUM
rpool ONLINE 0 0 0
mirror-0 ONLINE 0 0 0
c1t0d0s0 ONLINE 0 0 0
c1t1d0s0 ONLINE 0 0 0 3.18G resilvered
errors: No known data errors
4. 将系统引导块安装到镜像盘
installboot -F zfs /usr/platform/`uname -i`/lib/fs/zfs/bootblk /dev/rdsk/c1t1d0s0