Slaris10をセットアップしたが、相変わらず開発環境には優しくない(;-_-;)。当初セットアップメニューで「CoreSystem」でセットアップしようと思ったが、開発環境がまるっきり何も入らないので腹が立った(爆爆)。と言うことで仕方がなく「Development」でセットアップして不要なデーモンを削除するようにしてインスコした。したがって、その説明を記す。
1. solaris10のゲット
Solaris10は、Freeだがユーザ登録が必要だ。 ここ にアクセスしてユーザ登録してisoイメージをダウンロードする。
DVDも有るが、俺はCDなのでCDの内容を以下に示す。
■ Solaris 10 3/05 CD 1, Multi-language
■ Solaris 10 3/05 CD 2, Multi-language
■ Solaris 10 3/05 CD 3, Multi-language
■ Solaris 10 3/05 CD 4, Multi-language
■ Solaris 10 3/05 Language CD, Multi-language
■ Solaris 10 SoftWare Companion CD, Multi-language
必要なのは、以上の6枚だ。
2. solaris10のインストール
1) CDからBootする
CDからBootするとまずインストールモードが表示される。黙ってるとGUI画面のインストールを選んだことになる。
注 : solaris10をインストールするときは目を離さない方が良い。タイマーにより目を離すと勝手にインストーラがデフォルト設定を行ってしまうので注意。
俺の場合は、TEXTでインストしたので”4”を選んだ(画面1参照)。
2) インストール言語の選択
インストール時の言語の選択。日本語なので”4”を選択(画面2参照)。
3) ネットワークに接続するか否か
まあ、ここは当然のごとく”Yes”だね(画面3参照)。
4) DHCPを使うか否か
俺の場合、鯖作ってるから”No”だす(画面4参照)。
5) ホストネームの設定
ホストネームを設定する(画面5参照)。
6) IPアドレスの設定
固定IPアドレスを設定する(画面6参照)。
7) サブネットの設定
① サブネットを設定する。まず、設定するか否かで”Yes”を設定して(画面7参照)、
② サブネットを設定する(画面8参照)。
8) IPv6を使うか否か
俺の場合は、IPv6を使わないので”No”にした(画面9参照)。
9) デフォルトルートの設定
① リブートして検出するとか有るが、俺の場合は、”Specify One(指定する)”を選択(画面10参照)。
② デフォルトルートのIPアドレスを設定する(画面11参照)。
10) ネットワーク設定の確認画面表示
ネットワーク設定の確認画面(画面12参照)。
11) ケルベロスを設定するか否か
ケルベロス(クラサバ間、暗号化認証)を使うか否か。俺の場合、使わないので”No”選択(画面13参照)。
12) ネームサーバの設定
俺のばやい、DNSを使うからDNSにチェックチェック(画面14参照)。
13) ドメインネームの設定
ドメインネームの設定。俺の場合は、”kozupon.com”を設定した(画面15参照)。
14) DNSサーバのIPアドレス設定
自ドメインのDNSサーバのアドレスを設定する(画面16参照)。
15) 検索ドメインの設定
サーチドメインを設定する(画面17参照)。/etc/resolv.confの内容となる。
16) タイムゾーンの設定
JSTとかのタイムゾーンの設定(画面18~画面20)。ここいら辺は説明するまでもなさそうだね。
17) rootパスワード設定
rootのパスワードを設定する(画面21参照)。
18) 設定のイニシャライズ
CD/DVDのejectの自動/手動及び手動リブートか自動リブートかの設定を終えて今までの設定の書き込み(画面22)。
19) 途中を少々省いてインストールするアプリケーション&ライブラリの選択
俺は、×が付いている項目を選択した(画面23参照)。
20) インストールパッケージの選択
パッケージの種類の選択。以前、俺はここで”Core System Support”を選択してインストしたが、開発環境に必要なモジュール&ライブラリが何も入っていない。ほぼ、Kernelにおかず程度の物しか入らないので注意が必要。Slaris9までは、”Core System Support”を選択しても割合スムースに開発環境を構築できたが、solaris10はそうはいかないみたいだ。ただでさえ、Solarisのライブラリを含めた開発環境の構築はかなり熟練が必要なだけに、今回のsolaris10のインストールはかなりの労力を費やした。俺としては、画面24で×が付いてる”Developer System Support”を選ぶことをお勧めする。これなら、俺にとって非常にじゃまなXWindowシステムが入ってしまうが確実に開発環境が構築出来るからである。ただし、これだけではコンパイル及びリンカーが旨く動く訳ではない。後で話す”GNU gcc&makeによる開発環境の再構築”が必要となる。
21) ディスクのパーティションの割り当て
ディスクのパーティションの割り当てを行う(画面25~画面28参照)。
俺は、swap領域と/領域しか作らなかった。しかし本来は、
/ 領域
/var 領域
/usr 領域
/export/home 領域
程度には、分けるべきである。
22) 領域確保及びインストール開始
ディスクにボリュームが確保される(画面29参照)。いよいよ、インストール開始(画面30参照)。
23) インストール
Disc1が終わって、Disc2・・・・・・ってな具合に何回かDiscの交換を求められる(画面31参照)。
24) インストールが終了するとlogin画面が出たヘ(^.^)/
やったね。って出て当たり前なんだけど。
25) コンソールにしましょ
当然の如く、コンソールloginだぜ(笑)~\(^-^)/バンザーイ./( )\モヒトツ\(^o^)/バンザーイ 。
3. インストール後の設定状況の確認と開発環境のセットアップ
1) インストール後の設定状況の確認
インストール後の確認としてネットワーク設定がまともになっているかどうか。確認した方が良い。もし、まともに設定されていなかったら ここ を参考にして手動設定を試みて欲しい。
2) Solarisが入れてくれない必要なモジュールのインスコ(Freeware for Solaris)
まず、インストール後デフォルトでsshは立ち上がってるのでリモートコンソール出来るんだけど。ssh2 mode onlyなのでTeratermが使えないので、俺はopensshを改めて入れ直す事を頭に置いた。そんでもって、まず手っ取り早く ここ を参考に pkg-get なるパッケージ管理モジュールをインスコすることにした。これがあれば、いわば apt-get のようなパッケージのアップデート及びインストールが楽そうなので。pkg-getは、 ここ に用意されているモジュールならばインスコが容易だ。
次に以下のように俺独断だがインスコした必要なモジュールを列記する。ただし、Solarisインスコ時に既にインスコされている物があるかも知れないが、それはご容赦願いたい。
① wget のインスコ
# pkg-get -i wget
② gzipのインスコ
# pkg-get -i gzip
③ bzipのインスコ
# pkg-get -i bzip
④ bash3のインスコ
Solarisの場合、デフォルトシェルがCシェルなので俺としてはここでどうしてもBシェルを入れたい。私的には、Bシェルが無いと非常にコマンド打ちにくいっす。
# pkg-get -i bash-3.9p1
インスコできたら、
# bash
を入力。
bash-3.00#
Bシェルになるとこういう感じになる。
ここで、念のためPATHの設定をする。Solaris10の場合、rootのlogin時のPATH設定は、 /etc/profile で行う。青い部分が俺が行ったPATH設定。
この設定をユーザ毎に書くなら $HOME/.profile に同じ設定を書くこと。俺の場合、Proxyの設定もしてあるので必要なければ無視すること。
# vi /etc/profile
PATH=$PATH:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/usr/ccs/bin:\
/usr/sfw/bin:/usr/ucb
export PATH
http_proxy=”http://fifo:8080/”
ftp_proxy=”http://fifo:8080/”
export http_proxy ftp_proxy
trap “” 2 3
export LOGNAME PATH
if [ “$TERM” = “” ]
then
if /bin/i386
then
TERM=sun-color
else
TERM=sun
fi
export TERM
fi
# Login and -su shells get /etc/profile services.
# -rsh is given its environment in its .profile.
case “$0” in
-sh | -ksh | -jsh | -bash)
if [ ! -f .hushlogin ]
then
/usr/sbin/quota
# Allow the user to break the Message-Of-The-Day only.
trap “trap ” 2″ 2
/bin/cat -s /etc/motd
trap “” 2
/bin/mail -E
case $? in
0)
echo “You have new mail.”
;;
2)
echo “You have mail.”
;;
esac
fi
esac
umask 022
trap 2 3
bash
ついでに、LD_LIBRARY_PATHも設定しておこう。solarisの場合は、以下のように指定する。
# crle -c /var/ld/ld.config -l /usr/lib:/usr/ucblib:/usr/local/lib:/opt/sfw/lib
⑤ opensslのインスコ
# pkg-get -i openssl
⑥ sudoのインスコ
# pkg-get -i sudo
⑦ ライブラリをインスコする
■ libiconvのインスコ
# pkg-get -i libiconv
■ libpcapのインスコ
# pkg-get -i libpcap
3) gcc及びmakeのインスコ
solaris10のインストール後は、一応gcc&gmakeは入っているのだがmakeやC及びC++の標準ライブラリ、シェアードライブラリ等が入っていない。したがって、この状態ではソースモジュールをビルド出来ないのだ。stdio.hさえ無い状態であった。( ̄~ ̄;)ウーン・・・むかつく(;-_-;)と言うわけで、以下のように Freeware for Solarisサイト からgccソースとmakeソースをゲットしてビルドする。
■ gccのインスコ
# wget ftp://sunsite.tus.ac.jp/pub/sun-info/Solaris/SOURCES/gcc-3.3.2.tar.gz
# gunzip gcc-3.3.2.tar.gz
# tar xvf gcc-3.3.2.tar
# chown -R root:root gcc-3.3.2
# cd gcc-3.3.2
# mkdir build-gcc
# ../gcc-3.3.2/configure/ –enable-shared –enable-languages=c,c++ \
> –enable-threads=solaris
# gmake bootstrap
# gmake install
■ makeのインスコ
# wget ftp://sunsite.tus.ac.jp/pub/sun-info/Solaris/SOURCES/make-3.80.tar.gz
# gunzip make-3.80.tar.gz
# tar xvf make-3.80.tar
# chown -R root:root make-3.80
# cd make-3.80
# ./configure
# gmake
# gmake install
4) GNU tarのインスコ
tarは、元々solaris10のインストールで入ってはいるが商用バージョンなので-zオプションが使えない。したがって、こいつだけは GNUのサイト からゲットしてきてコンパイルした方が良いかと思う。以下にその方法を記述する。
# wget ftp://tron.um.u-tokyo.ac.jp/pub/GNU/tar/tar-1.15.tar.gz
# gunzip tar-1.15.tar.gz
# tar xvf tar-1.15.tar
# chown -R root:root tar-1.15
# ./configure
# make
# make install
# mv /usr/sbin/tar /usr/sbin/tar.bak
# ln -s /usr/local/bin/tar /usr/sbin/tar
5) opensshのインスコ
既存で入っているsshはssh2なのでssh2とssh1を共用したいので入れ直す。まず、既存のsshを削除する。
bash-3.00# pkginfo | grep ssh
application SMCossh openssh
system SUNWsshcu SSH Common, (Usr)
system SUNWsshdr SSH Server, (Root)
system SUNWsshdu SSH Server, (Usr)
bash-3.00# pkgrm SUNWsshcu SUNWsshdr SUNWsshdu
Freeware for Solarisからopensshをインスコする。
bash-3.00# pkg-get -i openssh
念のため、依存関係を確認する。
bash-3.00# ldd /usr/local/sbin/sshd
libpam.so.1 => /usr/lib/libpam.so.1
libdl.so.1 => /usr/lib/libdl.so.1
libresolv.so.2 => /usr/lib/libresolv.so.2
libcrypto.so.0.9.7 => /usr/local/ssl/lib/libcrypto.so.0.9.7
librt.so.1 => /usr/lib/librt.so.1
libz.so => /usr/lib/libz.so
libsocket.so.1 => /usr/lib/libsocket.so.1
libnsl.so.1 => /usr/lib/libnsl.so.1
libc.so.1 => /usr/lib/libc.so.1
libcmd.so.1 => /usr/lib/libcmd.so.1
libgcc_s.so.1 => /usr/local/lib/libgcc_s.so.1
libaio.so.1 => /usr/lib/libaio.so.1
libmd5.so.1 => /usr/lib/libmd5.so.1
libmp.so.2 => /usr/lib/libmp.so.2
libscf.so.1 => /usr/lib/libscf.so.1
libdoor.so.1 => /usr/lib/libdoor.so.1
libuutil.so.1 => /usr/lib/libuutil.so.1
libm.so.2 => /usr/lib/libm.so.2
さて、sshd起動だぜ!
bash-3.00# /usr/local/sbin/sshd
sshd: fatal :Privilege separation user does not exist
こんなエラーが出たら、sshdユーザとグループが作られてないよエラーなので作ること。なんちゃってエラーだな(笑)。
6) 起動スクリプト
起動スクリプトについては、 /etc/init.d の中に入っている。この中のスクリプトのシンボリックリンクを/etc/rc2.dの中のSの文字を頭とする、例えば S16apache(Sは起動ファイル) のように設定する。逆に、K16apacheにrenameするとそのスクリプトは実行されない。
sshdを起動スクリプトにしてみる。以下参照
# cd /etc/init.d
# vi sshd
#!/sbin/sh
#
# Copyright (c) 2001 by Sun Microsystems, Inc
# All rights reserved.
#
#ident “@(#)OpenSSH 3.9p1 05/03/05 SMI”
case “$1” in
start)
[ -f /usr/local/sbin/sshd ] || exit 0
/usr/local/sbin/sshd
;;
stop)
pkill sshd
;;
*)
echo “Usage: $0 { start | stop }”
exit 1
;;
esac
exit
# cd ../rc2.d
# ln -s ../init.d/sshd S53sshd
7) 余計なプロセスを斬る
# ps -efa
UID PID PPID C STIME TTY TIME CMD
root 0 0 0 21:13:28 ? 0:47 sched
root 1 0 0 21:13:30 ? 0:00 /sbin/init
root 2 0 0 21:13:30 ? 0:00 pageout
root 3 0 0 21:13:30 ? 0:01 fsflush
root 124 1 0 21:13:58 ? 0:00 /usr/lib/picl/picld
root 7 1 0 21:13:34 ? 0:07 /lib/svc/bin/svc.startd
root 9 1 0 21:13:35 ? 0:26 /lib/svc/bin/svc.configd
root 204 197 0 21:14:09 ? 0:00 /usr/lib/saf/ttymon
daemon 187 1 0 21:14:05 ? 0:00 /usr/lib/nfs/statd
daemon 76 1 0 21:13:52 ? 0:00 /usr/lib/crypto/kcfd
root 283 1 0 21:14:21 ? 0:00 /usr/lib/autofs/automountd
mity 399 397 0 21:19:58 pts/1 0:00 -sh
mity 397 395 0 21:19:57 ? 0:00 /usr/local/sbin/sshd -R
root 299 1 0 21:14:23 ? 0:00 /usr/sbin/syslogd
root 79 1 0 21:13:53 ? 0:00 /usr/lib/sysevent/syseventd
daemon 184 1 0 21:14:05 ? 0:00 /usr/sbin/rpcbind
root 206 7 0 21:14:09 console 0:00 /usr/lib/saf/ttymon -g -d /dev/console -l console
-T sun-color -m ldterm,ttcomp
root 205 1 0 21:14:09 ? 0:03 /usr/lib/inet/inetd start
root 91 1 0 21:13:54 ? 0:00 /usr/sbin/nscd
root 155 1 0 21:14:01 ? 0:00 /usr/lib/power/powerd
daemon 190 1 0 21:14:06 ? 0:00 /usr/lib/nfs/lockd
root 183 1 0 21:14:04 ? 0:00 /usr/sbin/cron
root 197 7 0 21:14:08 ? 0:00 /usr/lib/saf/sac -t 300
root 417 408 0 21:34:15 pts/1 0:00 bash
root 210 1 0 21:14:09 ? 0:00 /usr/lib/utmpd
root 395 325 0 21:19:53 ? 0:00 /usr/local/sbin/sshd -R
root 325 1 0 21:14:29 ? 0:01 /usr/local/sbin/sshd
mity 403 399 0 21:19:58 pts/1 0:00 bash
root 312 1 0 21:14:24 ? 0:01 /usr/lib/fm/fmd/fmd
root 313 1 0 21:14:25 ? 0:00 /usr/sbin/vold
smmsp 320 1 0 21:14:27 ? 0:00 /usr/lib/sendmail -Ac -q15m
root 321 1 0 21:14:27 ? 0:00 /usr/lib/sendmail -bd -q15m
root 408 404 0 21:20:04 pts/1 0:00 bash
root 404 403 0 21:20:01 pts/1 0:00 -sh
root 338 1 0 21:14:30 ? 0:00 devfsadmd
root 416 408 0 21:34:15 pts/1 0:00 ps -efa
(゜゜;)ワーッ!余計なプロセスがまだかなり立ち上がってる。なぜじゃーぁ~。結構、削ったんだけどね。以下は、俺の場合要らないと思うデーモン君達。
asppp PPPは不要
ldap_cachemgr
ldap.client LDAPは不要
rpcbind
keyserv
rpc.nisd RPCは不要
slpd Service Location Protocolは不要
nfs.statd
lockd
nfs.client NSFは不要
xntpd NTPは不要
nscd NIS/NIS+は不要
lpsched プリントサーバは不要
printd プリントサーバは不要
powerd 電源管理は不要
cssd かな漢字変換用cs00は不要
cim WBEM(Web-Based Enterprise Management)は不要
jserver かな漢字変換Wnnは不要
htt XWindowは使わないため不要
dwhttpd AnswerBook2は不要
atokmngdaemon カナ漢字変換にATOKは不要
auditd SunSHIELDの監査機能は不要
dtlogin CDEデスクトップ・ログインは不要
nfsd NFSサーバは不要
httpd Webサーバは不要
snmpdx SNMP管理は不要
dmispd Solstice Enterprise Manager管理は不要
ただぁ~、どうも /etc/init.d とか /etc/rcX.d とかにはなくて何処かのスクリプトから知らないうちに起動してるデーモンが多い。どこから起動してるのか?
やっと解った(;-_-;)。Solarisは、10になってからモジュールの管理機構が大幅に変わったのである。SMFといってchkconfigもどきと言うか変形のようなコマンド形式の管理機構である。4項としてSMFを説明する。尚、もちろん/etc/rc3.dへスクリプトを置く。みたいな事も出来るので私的にはSMFって難しいと思う。
4.solaris10の新しいモジュール管理機構SMF
Solaris10の新しい機能は、FMAと言うメモリのパリティエラーやHDDのエラーなどを診断し対策を取るエンジンとSMFと言う全てのサービスを管理するエンジンの2本柱から成り立っている。特に、SMFはモジュールを並列実行できるため、モジュールの耐障害性に強いと言う利点があるようだ。以下にSMFについて説明する。
1)起動モジュールリストステータス表示
bash-3.00# svcs -a
STATE STIME FMRI
legacy_run Apr_07 lrc:/etc/rcS_d/S50sk98sol
legacy_run Apr_07 lrc:/etc/rc2_d/S20sysetup
legacy_run Apr_07 lrc:/etc/rc2_d/S72autoinstall
legacy_run Apr_07 lrc:/etc/rc2_d/S73cachefs_daemon
legacy_run Apr_07 lrc:/etc/rc2_d/S81dodatadm_udaplt
legacy_run Apr_07 lrc:/etc/rc2_d/S89PRESERVE
legacy_run Apr_07 lrc:/etc/rc2_d/S90loc_ja_cssd
legacy_run Apr_07 lrc:/etc/rc2_d/S98deallocate
legacy_run Apr_07 lrc:/etc/rc3_d/S16boot_server
disabled Apr_07 svc:/system/metainit:default
disabled Apr_07 svc:/network/rpc/keyserv:default
disabled Apr_07 svc:/network/rpc/nisplus:default
disabled Apr_07 svc:/network/nis/client:default
disabled Apr_07 svc:/network/ldap/client:default
disabled Apr_07 svc:/network/inetd-upgrade:default
disabled Apr_07 svc:/system/mdmonitor:default
disabled Apr_07 svc:/network/rpc/bootparams:default
disabled Apr_07 svc:/network/nfs/mapid:default
disabled Apr_07 svc:/network/nfs/server:default
disabled Apr_07 svc:/network/rarp:default
disabled Apr_07 svc:/network/ipfilter:default
disabled Apr_07 svc:/network/security/kadmin:default
disabled Apr_07 svc:/network/security/krb5kdc:default
disabled Apr_07 svc:/network/nfs/cbd:default
disabled Apr_07 svc:/system/consadm:default
disabled Apr_07 svc:/network/http:apache2
disabled Apr_07 svc:/network/rpc/rex:default
省略
online Apr_07 svc:/system/filesystem/local:default
online Apr_07 svc:/system/sysidtool:net
online Apr_07 svc:/system/cron:default
online Apr_07 svc:/system/sysidtool:system
online Apr_07 svc:/system/filesystem/autofs:default
online Apr_07 svc:/system/dumpadm:default
online Apr_07 svc:/platform/i86pc/kdmconfig:default
online Apr_07 svc:/milestone/sysconfig:default
online Apr_07 svc:/system/sac:default
online Apr_07 svc:/system/utmp:default
online Apr_07 svc:/system/console-login:default
online Apr_07 svc:/network/inetd:default
online Apr_07 svc:/system/system-log:default
online Apr_07 svc:/network/smtp:sendmail
online Apr_07 svc:/milestone/multi-user:default
online Apr_07 svc:/milestone/multi-user-server:default
online Apr_07 svc:/network/security/ktkt_warn:default
online Apr_07 svc:/network/ftp:default
online Apr_07 svc:/network/login:rlogin
online Apr_07 svc:/network/shell:default
offline Apr_07 svc:/network/ssh:default
offline Apr_07 svc:/network/rpc/meta:default
offline Apr_07 svc:/network/rpc/mdcomm:default
offline Apr_07 svc:/network/rpc/metamed:default
offline Apr_07 svc:/network/rpc/metamh:default
2)サービスの起動・停止
■ サービスの起動
bash-3.00# svcadm enable -st svc:/network/http:apache2
これは、一時的に起動する方法で再起動したときに起動させるには、-stを外す。
■ サービスの停止
bash-3.00# svcadm disable -st svc:/network/http:apache2
これは、一時的に停止させる方法で再起動したときも起動しないようにするには、-stを外す。
3)SMF化されたinetdサービス
inetdもSMF化されて管理がめんどくさくなった。
■ inetd登録のリスト表示
bash-3.00# inetadm
ENABLED STATE FMRI
enabled offline svc:/network/rpc/mdcomm:default
enabled offline svc:/network/rpc/meta:default
enabled offline svc:/network/rpc/metamed:default
enabled offline svc:/network/rpc/metamh:default
disabled disabled svc:/network/rpc/gss:default
disabled disabled svc:/network/rpc/rex:default
disabled disabled svc:/network/rpc/rstat:default
disabled disabled svc:/network/rpc/rusers:default
disabled disabled svc:/network/rpc/spray:default
disabled disabled svc:/network/rpc/wall:default
disabled disabled svc:/network/tname:default
enabled online svc:/network/security/ktkt_warn:default
disabled disabled svc:/network/chargen:dgram
disabled disabled svc:/network/chargen:stream
disabled disabled svc:/network/daytime:dgram
disabled disabled svc:/network/daytime:stream
disabled disabled svc:/network/discard:dgram
disabled disabled svc:/network/discard:stream
disabled disabled svc:/network/echo:dgram
disabled disabled svc:/network/echo:stream
disabled disabled svc:/network/time:dgram
disabled disabled svc:/network/time:stream
enabled online svc:/network/ftp:default
disabled disabled svc:/network/comsat:default
disabled disabled svc:/network/finger:default
disabled disabled svc:/network/login:eklogin
disabled disabled svc:/network/login:klogin
enabled online svc:/network/login:rlogin
disabled disabled svc:/network/rexec:default
enabled online svc:/network/shell:default
disabled disabled svc:/network/shell:kshell
disabled disabled svc:/network/talk:default
disabled disabled svc:/network/rpc-100235_1/rpc_ticotsord:default
■ モジュールの個別情報
bash-3.00# inetadm -l svc:/network/ftp:default
SCOPE NAME=VALUE
name=”ftp”
endpoint_type=”stream”
proto=”tcp6″
isrpc=FALSE
wait=FALSE
exec=”/usr/sbin/in.ftpd -a”
user=”root”
default bind_addr=””
default bind_fail_max=-1
default bind_fail_interval=-1
default max_con_rate=-1
default max_copies=-1
default con_rate_offline=-1
default failrate_cnt=40
default failrate_interval=60
default inherit_env=TRUE
default tcp_trace=FALSE
default tcp_wrappers=FALSE
サービスの起動・停止は2)と同じ。
4)モジュールの登録・削除
■ モジュールの登録
登録は、基本的にxmlテンプレートでxmlファイル作って登録するみたいだ。サンプルのsmtpテンプレートでpostfix.xmlファイルを作って編集する。
bash-3.00# svccfg export smtp > ~/postfix.xml
xmlファイルを作るサンプルが現在/var/svc/mainfirst/network/の中ぐらいにしかない。そのため、これらを参考にして編集する。 postfix.xmlファイル編集後、/var/svc/mainfirst/networkへコピーする。
bash-3.00# cp ~/postfix.xml /var/svc/mainfirst/network/
xmlファイルの登録
bash-3.00# svccfg import ~/postfix.xml
スタートスクリプトの登録
bash-3.00# cd /var/svc/method/
この中のスクリプトを参考にして、postfixというスクリプトファイルを作り実行可能ファイルにする。
■ モジュールの削除
bash-3.00# svccfg
svc:> delete -f svc:/network/telnet
svc:> quit
bash-3.00# rm /var/svc/mainfirst/network/telnet.xml
5)現在のプロセスの確認
bash-3.00# ps -efa
UID PID PPID C STIME TTY TIME CMD
root 0 0 0 14:11:24 ? 0:47 sched
root 1 0 0 14:11:26 ? 0:00 /sbin/init
root 2 0 0 14:11:26 ? 0:00 pageout
root 3 0 0 14:11:26 ? 0:14 fsflush
smmsp 270 1 0 14:12:11 ? 0:00 /usr/lib/sendmail -Ac -q15m
root 7 1 0 14:11:30 ? 0:08 /lib/svc/bin/svc.startd
root 9 1 0 14:11:31 ? 0:27 /lib/svc/bin/svc.configd
root 97 1 0 14:11:52 ? 0:00 /usr/lib/picl/picld
root 218 7 0 14:12:05 console 0:00 /usr/lib/saf/ttymon -g -d /dev/console
-l console -T sun-color -m ldterm,ttcomp
root 220 1 0 14:12:06 ? 0:03 /usr/lib/inet/inetd start
root 230 1 0 14:12:06 ? 0:01 /usr/lib/fm/fmd/fmd
root 187 1 0 14:12:01 ? 0:00 /usr/lib/autofs/automountd
root 400 285 1 17:34:44 ? 0:00 /usr/local/sbin/sshd -R
root 104 1 0 14:11:52 ? 0:00 /usr/lib/sysevent/syseventd
root 141 1 0 14:11:57 ? 0:00 /usr/lib/power/powerd
daemon 183 1 0 14:12:00 ? 0:00 /usr/sbin/rpcbind
root 216 1 0 14:12:05 ? 0:00 /usr/lib/utmpd
root 108 1 0 14:11:53 ? 0:01 /usr/sbin/nscd
daemon 99 1 0 14:11:52 ? 0:00 /usr/lib/crypto/kcfd
root 191 1 0 14:12:01 ? 0:00 /usr/sbin/cron
root 202 7 0 14:12:04 ? 0:00 /usr/lib/saf/sac -t 300
root 215 202 0 14:12:05 ? 0:00 /usr/lib/saf/ttymon
root 224 1 0 14:12:06 ? 0:00 /usr/sbin/syslogd
root 408 407 0 17:35:00 pts/1 0:00 ps -efa
root 285 1 0 14:12:14 ? 0:01 /usr/local/sbin/sshd
root 271 1 0 14:12:11 ? 0:01 /usr/lib/sendmail -bd -q15m
root 250 1 0 14:12:08 ? 0:00 /usr/sbin/vold
root 403 400 0 17:34:50 pts/1 0:00 -sh
root 407 403 0 17:34:50 pts/1 0:00 bash
root 409 407 0 17:35:00 pts/1 0:00 bash
まだまだ停止できそうだぜ。
rpcbind rpcはいらない。ってそういう訳に行かないみたい(-.-;)svcを使うのにrpcbindを呼ぶみたいっす。だから、止めてはいけない
nscd NISは使用しないのでいらない
powerd 電源管理は行わないのでいらない
このくらいで止めておいた方が良いかもしれない(笑)。後は、システムに関係するデーモン臭くなってきた。
以上、これで終わりだがほとんど現在情報がない。いずれにしても初心者には敷居が高すぎるよ(;-_-;)。( ̄~ ̄;)ウーン・・・全く疲れたよ。
以上
コメント