Solaris10インストール後の設定


概要

Solaris10のインストールが終わった後にやらないといけない設定いろいろ。

準備

OSのインストールまでの手順については以下参照。

基本方針

  • Solaris10になってからCD-ROM内にGNU系のツールも用意されているみたいですが、なるべくSun Freewareのパッケージを優先的に使います。
  • Recommend Patch が有償になったので、フリーのツールを使ってパッチのアップデートを行います。

手順

基本的なネットワークの設定

最低限の設定。

/etc/inet/hosts

Solarisの場合、hostsファイルは/etc/hostsではなく/etc/inet/hostsなので注意。(/etc/hostsは/etc/inet/hostsへのシンボリックリンク)

# cat /etc/inet/hosts
-----
#
# Internet host table
#
::1     localhost       
127.0.0.1       localhost       
192.168.0.XXX    srv01.example.com       loghost
-----

IPv6のlocalhost行はコメントアウトしておく。

# vi /etc/inet/hosts
-----
#
# Internet host table
#
#::1     localhost       
127.0.0.1       localhost       
192.168.0.XXX    srv01.example.com       loghost
-----

/etc/defaultrouter

# cat /etc/defaultrouter
-----
192.168.0.XXX
-----

/etc/resolv.conf

なければ作成

# vi /etc/resolv.conf
-----
nameserver 192.168.0.XXX
-----

/etc/nsswitch.conf

名前参照にDNSを追加。

# vi /etc/nsswitch.conf
-----
hosts:      files dns
-----

SUN標準パッケージの追加インストール

基本的にGNU系ツール等は、Sun標準のパッケージを使用せずにSun Freewareのものを使う方針ですが、最低限のものだけCD-ROMから追加します。

  • GNU wget(SUNWwgetr、SUNWwgetu)・・・ この後インストールする pca で使用する。
  • sar(SUNWaccr、SUNWaccu)・・・ システム管理ツール。これは必須でしょう。

これらのパッケージは、OS CD-ROMのDisk5にあります。CD-ROMをセットして以下を実行します。

# cd /cdrom/sol_10_508_sparc_5/Solaris_10/Product
# pkgadd -d . SUNWwgetr SUNWwgetu 
# 

パッチアップデート

いつのまにやらRecommend Patchが有償になったのでまとめて当てることができなくなりました。一部のセキュリティおよびドライバー関連のパッチは個別でダウンロードできるようなので(全てのパッチを取得するにはライセンスを購入する必要がある)、なんかいいツールはないかと調べていたところ pca というツールがあることがわかりましたので、まずこれをインストールします。

pcaの実行には以下が必要です。

  • perl
  • wget1.7以上(wgetをインストールしておいたのはこのため。)

perlは標準でインストールされています。wgetは/usr/sfw/binにあります。 では、pca をダウンロードします。/usr/local/sbin/に置いて実行権をつけます。

# mkdir -p /usr/local/sbin
# /usr/sfw/bin/wget http://www.par.univie.ac.at/solaris/pca/stable/pca -O /usr/local/sbin/pca
# chmod u+x /usr/local/sbin/pca

あと、SunのパッチをダウンロードするにはSun Online Account(登録は無料)が必要ですのであらかじめ登録しておいてください。

ではpcaを実行します。

# /usr/local/sbin/pca --user=ユーザ名 --passwd=パスワード -V
Option list: 1
Option patchdir: /tmp/.
Option user: XXXXXXXX
Option passwd: XXXXXXXX
Option debug: 1
ARGV: missing
Version: 20080911-01
Using /usr/sfw/bin/wget (1.10.2, 11002)
Prerequisites for threads not met, setting threads to 0
Never update
Expanded patch list: missing
xref now    : Fri Oct  3 22:39:46 2008
xref current: Fri Oct  3 22:36:18 2008
xref age    : 208
Local file /var/tmp/patchdiag.xref is up to date
Reading from /usr/bin/showrev -p  2>/dev/null
Using /var/tmp/patchdiag.xref from Oct/02/08
Bad patch installed: 126365-06
Bad patch installed: 128306-03
121133-02 required by 119254: already installed
119254-51 required by 119042: already listed
118833-36 required by 119090: already installed
124628-03 required by 119252: already installed
119059-10 required by 119278: already listed
119280-08 required by 119278: already installed
123611-01 required by 119280: already installed
・・・

といった感じでまずリストが取得できればOK。いよいよ更新

# /usr/local/sbin/pca --user=ユーザ名 --passwd=パスワード -si

-iでインストール、-sでパッチにより更新されるローカルのファイルが既に更新されていた場合は上書きしないようにそのパッチは適用しないというオプションのようです。初回はかなり時間がかかりますのでたっぷりとお待ちください。

終わったら再起動します。

# sync;sync;sync;reboot

グループ・ユーザの追加

グループ・ユーザを追加します。

# groupadd -g XXXX example 
# useradd -g XXXX -u XXXX -s /usr/bin/bash -d /export/home/example -m example

不要なサービスの停止

V120 に Solaris10 05/08(Sparc)を「開発者システムサポート」&「リモートサービス利用しない&リモートファイルシステム利用しない」で入れた場合、インストール直後の起動サービスはこんな感じになってました。

# svcs -a
STATE          STIME    FMRI
legacy_run     23:13:56 lrc:/etc/rc2_d/S10lu
legacy_run     23:13:56 lrc:/etc/rc2_d/S20sysetup
legacy_run     23:13:56 lrc:/etc/rc2_d/S40llc2
legacy_run     23:13:57 lrc:/etc/rc2_d/S72autoinstall
legacy_run     23:13:57 lrc:/etc/rc2_d/S73cachefs_daemon
legacy_run     23:13:58 lrc:/etc/rc2_d/S81dodatadm_udaplt
legacy_run     23:13:58 lrc:/etc/rc2_d/S89PRESERVE
legacy_run     23:13:58 lrc:/etc/rc2_d/S90loc_ja_cssd
legacy_run     23:13:58 lrc:/etc/rc2_d/S91ifbinit
legacy_run     23:13:59 lrc:/etc/rc2_d/S91jfbinit
legacy_run     23:13:59 lrc:/etc/rc2_d/S98deallocate
legacy_run     23:14:01 lrc:/etc/rc3_d/S16boot_server
legacy_run     23:14:02 lrc:/etc/rc3_d/S50apache
legacy_run     23:14:03 lrc:/etc/rc3_d/S52imq
legacy_run     23:14:03 lrc:/etc/rc3_d/S84appserv
legacy_run     23:14:03 lrc:/etc/rc3_d/S84patchserver
disabled       23:13:09 svc:/system/metainit:default
disabled       23:13:09 svc:/system/device/mpxio-upgrade:default
disabled       23:13:09 svc:/network/iscsi_initiator:default
disabled       23:13:09 svc:/network/ipfilter:default
disabled       23:13:12 svc:/network/rpc/keyserv:default
disabled       23:13:12 svc:/network/rpc/nisplus:default
disabled       23:13:12 svc:/network/nis/client:default
disabled       23:13:12 svc:/network/dns/client:default
disabled       23:13:13 svc:/network/ldap/client:default
disabled       23:13:14 svc:/network/nfs/status:default
disabled       23:13:14 svc:/network/nfs/nlockmgr:default
disabled       23:13:14 svc:/network/nfs/cbd:default
disabled       23:13:14 svc:/network/nfs/mapid:default
disabled       23:13:14 svc:/network/inetd-upgrade:default
disabled       23:13:14 svc:/network/nfs/client:default
disabled       23:13:14 svc:/system/auditd:default
disabled       23:13:14 svc:/system/patch-finish:delete
disabled       23:13:15 svc:/system/mdmonitor:default
disabled       23:13:15 svc:/application/print/server:default
disabled       23:13:15 svc:/network/ntp:default
disabled       23:13:15 svc:/system/pools:default
disabled       23:13:15 svc:/system/rcap:default
disabled       23:13:15 svc:/network/rpc/bootparams:default
disabled       23:13:15 svc:/network/nfs/server:default
disabled       23:13:16 svc:/network/rarp:default
disabled       23:13:16 svc:/network/samba:default
disabled       23:13:16 svc:/network/wins:default
disabled       23:13:16 svc:/network/winbind:default
disabled       23:13:16 svc:/application/management/seaport:default
disabled       23:13:16 svc:/application/management/snmpdx:default
disabled       23:13:16 svc:/application/management/dmi:default
disabled       23:13:17 svc:/network/routing/legacy-routing:ipv4
disabled       23:13:17 svc:/network/routing/legacy-routing:ipv6
disabled       23:13:17 svc:/network/routing/ndp:default
disabled       23:13:17 svc:/network/routing/rdisc:default
disabled       23:13:17 svc:/network/ipv6-forwarding:default
disabled       23:13:17 svc:/network/routing/ripng:default
disabled       23:13:17 svc:/network/routing/route:default
disabled       23:13:19 svc:/network/ipv4-forwarding:default
disabled       23:13:19 svc:/network/security/kadmin:default
disabled       23:13:19 svc:/network/security/krb5kdc:default
disabled       23:13:19 svc:/network/ipmievd:default
disabled       23:13:21 svc:/system/pools/dynamic:default
disabled       23:13:21 svc:/system/consadm:default
disabled       23:13:22 svc:/system/labeld:default
disabled       23:13:22 svc:/network/tnd:default
disabled       23:13:22 svc:/system/tsol-zones:default
disabled       23:13:22 svc:/system/webconsole:console
disabled       23:13:23 svc:/network/dns/server:default
disabled       23:13:24 svc:/application/print/ppd-cache-update:default
disabled       23:13:24 svc:/application/database/postgresql:version_81
disabled       23:13:24 svc:/application/database/postgresql:version_82
disabled       23:13:24 svc:/application/database/postgresql:version_82_64bit
disabled       23:13:25 svc:/network/slp:default
disabled       23:13:25 svc:/application/management/sma:default
disabled       23:13:25 svc:/application/wnn8/server:default
disabled       23:13:25 svc:/network/http:apache2
disabled       23:13:25 svc:/application/gdm2-login:default
disabled       23:13:25 svc:/network/apocd/udp:default
disabled       23:13:25 svc:/system/sar:default
disabled       23:13:54 svc:/network/rpc/meta:default
disabled       23:13:56 svc:/network/rpc/mdcomm:default
disabled       23:13:56 svc:/network/rpc/metamed:default
disabled       23:13:56 svc:/network/rpc/metamh:default
disabled       23:13:57 svc:/network/rpc/rex:default
disabled       23:13:57 svc:/network/rpc/rstat:default
disabled       23:13:57 svc:/network/rpc/rusers:default
disabled       23:13:57 svc:/network/rpc/spray:default
disabled       23:13:57 svc:/network/rpc/wall:default
disabled       23:13:57 svc:/network/cde-spc:default
disabled       23:13:57 svc:/network/tname:default
disabled       23:13:58 svc:/network/telnet:default
disabled       23:13:58 svc:/network/nfs/rquota:default
disabled       23:13:59 svc:/network/chargen:dgram
disabled       23:13:59 svc:/network/chargen:stream
disabled       23:13:59 svc:/network/daytime:dgram
disabled       23:13:59 svc:/network/daytime:stream
disabled       23:13:59 svc:/network/discard:dgram
disabled       23:13:59 svc:/network/discard:stream
disabled       23:14:00 svc:/network/echo:dgram
disabled       23:14:00 svc:/network/echo:stream
disabled       23:14:00 svc:/network/time:dgram
disabled       23:14:00 svc:/network/time:stream
disabled       23:14:00 svc:/network/ftp:default
disabled       23:14:00 svc:/network/comsat:default
disabled       23:14:00 svc:/network/finger:default
disabled       23:14:00 svc:/network/login:eklogin
disabled       23:14:00 svc:/network/login:klogin
disabled       23:14:01 svc:/network/login:rlogin
disabled       23:14:01 svc:/network/rexec:default
disabled       23:14:01 svc:/network/shell:default
disabled       23:14:02 svc:/network/shell:kshell
disabled       23:14:02 svc:/network/talk:default
disabled       23:14:02 svc:/network/stdiscover:default
disabled       23:14:02 svc:/network/stlisten:default
disabled       23:14:02 svc:/application/x11/xfs:default
disabled       23:14:02 svc:/application/x11/xvnc-inetd:default
disabled       23:14:03 svc:/network/swat:default
disabled       23:14:03 svc:/network/rpc/ocfserv:default
disabled       23:14:04 svc:/application/print/rfc1179:default
online         23:13:08 svc:/system/svc/restarter:default
online         23:13:10 svc:/network/pfil:default
online         23:13:12 svc:/network/loopback:default
online         23:13:12 svc:/network/tnctl:default
online         23:13:14 svc:/system/filesystem/root:default
online         23:13:16 svc:/system/installupdates:default
online         23:13:16 svc:/milestone/name-services:default
online         23:13:18 svc:/system/scheduler:default
online         23:13:18 svc:/system/boot-archive:default
online         23:13:22 svc:/system/filesystem/usr:default
online         23:13:23 svc:/network/physical:default
online         23:13:23 svc:/system/keymap:default
online         23:13:24 svc:/milestone/network:default
online         23:13:24 svc:/system/identity:node
online         23:13:24 svc:/system/device/local:default
online         23:13:25 svc:/system/filesystem/minimal:default
online         23:13:26 svc:/system/resource-mgmt:default
online         23:13:26 svc:/system/rmtmpfiles:default
online         23:13:27 svc:/system/coreadm:default
online         23:13:27 svc:/system/power:default
online         23:13:27 svc:/system/cryptosvc:default
online         23:13:27 svc:/system/name-service-cache:default
online         23:13:27 svc:/system/identity:domain
online         23:13:28 svc:/system/sysevent:default
online         23:13:28 svc:/system/device/fc-fabric:default
online         23:13:29 svc:/milestone/devices:default
online         23:13:29 svc:/system/picl:default
online         23:13:41 svc:/network/initial:default
online         23:13:42 svc:/network/service:default
online         23:13:42 svc:/system/manifest-import:default
online         23:13:42 svc:/milestone/single-user:default
online         23:13:44 svc:/system/filesystem/local:default
online         23:13:45 svc:/system/cron:default
online         23:13:45 svc:/system/sysidtool:net
online         23:13:47 svc:/application/stosreg:default
online         23:13:47 svc:/application/font/fc-cache:default
online         23:13:51 svc:/network/routing-setup:default
online         23:13:51 svc:/network/rpc/bind:default
online         23:13:51 svc:/system/sysidtool:system
online         23:13:51 svc:/system/filesystem/autofs:default
online         23:13:52 svc:/milestone/sysconfig:default
online         23:13:52 svc:/system/sac:default
online         23:13:53 svc:/network/inetd:default
online         23:13:53 svc:/system/dumpadm:default
online         23:13:53 svc:/system/utmp:default
online         23:13:54 svc:/system/system-log:default
online         23:13:55 svc:/network/ssh:default
online         23:13:55 svc:/system/postrun:default
online         23:13:55 svc:/application/management/wbem:default
online         23:13:55 svc:/network/smtp:sendmail
online         23:13:57 svc:/system/fmd:default
online         23:13:59 svc:/milestone/multi-user:default
online         23:14:01 svc:/application/graphical-login/cde-login:default
online         23:14:01 svc:/application/cde-printinfo:default
online         23:14:03 svc:/milestone/multi-user-server:default
online         23:14:04 svc:/system/zones:default
online         23:14:05 svc:/system/basicreg:default
online         23:14:06 svc:/network/rpc/gss:default
online         23:14:06 svc:/network/rpc/cde-calendar-manager:default
online         23:14:06 svc:/network/rpc/cde-ttdbserver:tcp
online         23:14:06 svc:/network/security/ktkt_warn:default
online         23:14:06 svc:/network/rpc/smserver:default
online         23:14:06 svc:/application/font/stfsloader:default
online         23:14:06 svc:/network/rpc-100235_1/rpc_ticotsord:default
online         23:14:08 svc:/system/filesystem/volfs:default
online         23:47:42 svc:/system/console-login:default

「リモートサービス利用しない」ってのは便利だなー。Solaris8ぐらいまではいちいち止めないといけない物が多くて面倒だったし、ある程度止めてあるのは助かります。でもまた不要なものが多少あるね。ということで、順次止めていきます。Solaris8でだいたいわかっているのだけど、以下あたりも参考に。

RCスクリプトで起動するもの

Solaris10からはSMFが新しい管理方式だけど、一部は従来のrc*.dからキックされるので、その中で不要そうなものは止める。

# cd /etc/rc2.d
# mv S10lu _S10lu
# mv S20sysetup _S20sysetup
# mv S40llc2 _S40llc2
# mv S72autoinstall _S72autoinstall
# mv S73cachefs_daemon _S73cachefs_daemon
# mv S81dodatadm_udaplt _S81dodatadm_udaplt
# mv S90loc_ja_cssd _S90loc_ja_cssd
# mv S98deallocate _S98deallocate
# cd /etc/rc3.d
# mv S16boot_server _S16boot_server
# mv S50apache _S50apache
# mv S52imq _S52imq
# mv S84appserv _S84appserv
# mv S84patchserver _S84patchserver

SMCで管理されているもの

# svcadm disable svc:/network/smtp:sendmail
# svcadm disable svc:/network/security/ktkt_warn:default
# svcadm disable svc:/network/rpc/gss:default
# svcadm disable svc:/network/rpc/cde-calendar-manager:default
# svcadm disable svc:/network/rpc/cde-ttdbserver:tcp
# svcadm disable svc:/network/rpc/smserver:default
# svcadm disable svc:/network/rpc-100235_1/rpc_ticotsord:default
# svc:/application/stosreg:default
# svcadm disable svc:/application/font/fc-cache:default
# svcadm disable svc:/application/management/wbem:default
# svcadm disable  svc:/application/cde-printinfo:default
# svcadm disable svc:/application/graphical-login/cde-login:default
# svcadm disable svc:/application/font/stfsloader:default

inetdで管理されているもの

Solaris10からは/etc/inet/inetd.confではなく、inetadmで管理します。 ちなみに今回の構成ではinetd経由で起動するものは一つもありませんでした。

Sun Freewareのパッケージのインストール

ではいろいろとインストールしていきます。Sun Freewareから。

  • gcc-3.4.6
  • libiconv
  • make
  • patch
  • coreutils
  • diffutils
  • libintl
  • tar
  • top
  • ncurses
  • readline
  • screen
  • wget
  • zsh
  • openssl
  • perl
  • bison
  • autoconf
  • flex
  • m4

アーカイブを取得して、適当なパスで解凍してインストール。

# cd /tmp/hoge
# gunzip *
# pkgadd -d ./libiconv-1.11-sol10-sparc-local 
# pkgadd -d ./libintl-3.4.0-sol10-sparc-local 
# pkgadd -d ./gcc-3.4.6-sol10-sparc-local 
# pkgadd -d ./make-3.81-sol10-sparc-local 
# pkgadd -d ./patch-2.5.4-sol10-sparc-local 
# pkgadd -d ./ncurses-5.6-sol10-sparc-local 
# pkgadd -d ./readline-5.2-sol10-sparc-local 
# pkgadd -d ./openssl-0.9.8i-sol10-sparc-local 
# pkgadd -d ./coreutils-6.4-sol10-sparc-local 
# pkgadd -d ./diffutils-2.8.1-sol10-sparc-local 
# pkgadd -d ./tar-1.20-sol10-sparc-local 
# pkgadd -d ./top-3.6.1-sol10-sparc-local 
# pkgadd -d ./zsh-4.3.6-sol10-sparc-local 
# pkgadd -d ./wget-1.11.4-sol10-sparc-local 
# pkgadd -d ./screen-4.0.2-sol10-sparc-local

Sun Freeware のツールは /usr/local にインストールされるので実行パス・ライブラリパスを通しておく。

# vi /etc/default/su
-----
SUPATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin
-----
# crle -c /var/ld/ld.config -l /usr/local/lib:/lib:/usr/lib