ksaitoの日記

日々試したことの覚え書き

Solarisって、とても手入れが必要そう...

Solaris 10を使う用事があって初期設定されたマシンにログインしましたが、いろいろなものがそろっていなくてびっくりしました。
とても手入れが必要そう...
VirtualBoxにi86pcアーキテクチャSolaris 10を入れて、いろいろ試してみました。

SSHを動かす

VirtualBoxで起動するとデフォルトでX Windowのサイズが大きいので画面に表示しきれません。
設定は、CUIベースの方が楽なので、SSHを起動します。

# bash
bash-3.00# svcadm refresh ssh
bash-3.00#

TERMの設定

接続してもviすら開きません。
これは、デフォルトでTERMにxterm-colorが設定されているためです。

bash-3.00# vi 
xterm-color: Unknown terminal type
Visual needs addressable cursor or upline capability
:q
bash-3.00# echo $TERM
xterm-color
bash-3.00# 

適切なTERMを設定してあげると、CUIの各種ツールが使えるようになります。
(termcapなんて、なつかしー)

bash-3.00# grep vt100-s /etc/termcap
di|vt100-s|vt100 with status line at top:\
dj|vt100-s-bot|vt100 with status line at bottom:\
bash-3.00# export TERM=vt100
bash-3.00# vi

hostnameの設定

インストール時にhostnameを設定したつもりだったのですが、DHCPからIPを設定したのかunknownというホスト名が設定されています。

bash-3.00# grep unk /etc/hosts
10.0.2.15       unknown # Added by DHCP
bash-3.00#

/etc/nodenameに名前を設定してリブートするとhostnameが設定されて/etc/hostsのエントリも書き換えられます。

$ hostname
solaris64
$ grep solaris /etc/hosts
10.0.2.15       solaris64       # Added by DHCP
$ 

ユーザの追加

最初のユーザ追加では、グループを追加してuseraddコマンドを使う必要があります。
ホームディレクトリも手動で作ります。

bash-3.00# groupadd [ユーザ名]
bash-3.00# useradd -d /export/home/[ユーザ] -s `type -p bash` -g [ユーザ] [ユーザ]
bash-3.00# mkdir /export/home/[ユーザ]
bash-3.00# chown -R [ユーザ]:[ユーザ] !$
bash-3.00#

パッケージ管理の導入

wgetコマンドの導入

Solarisには、パッケージ管理の仕組みがあるがaptのようにネットワークからパッケージをダウンロードしてくれません。
pkg-get(たぶんpkgaddのフロントエンド)を導入するとaptのようにネットワークからパッケージをダウンロードしてくれます。
pkg-getの前提となるwgetコマンドをインストールしますが、これが結構手間がかかります。

# ls
libgcc-3.4.6-sol10-x86-local.gz    libintl-3.4.0-sol10-x86-local.gz
libiconv-1.11-sol10-x86-local.gz   openssl-0.9.8k-sol10-x86-local.gz
libidn-1.14-sol10-x86-local .gz    wget-1.12-sol10-x86-local.gz
# gunzip *.gz
# ls
libgcc-3.4.6-sol10-x86-local    libintl-3.4.0-sol10-x86-local
libiconv-1.11-sol10-x86-local   openssl-0.9.8k-sol10-x86-local
libidn-1.14-sol10-x86-local     wget-1.12-sol10-x86-local
# pkgadd -d openssl-0.9.8k-sol10-x86-local
# pkgadd -d libiconv-1.11-sol10-x86-local
# pkgadd -d libidn-1.14-sol10-x86-local
# pkgadd -d libintl-3.4.0-sol10-x86-local
# pkgadd -d libgcc-3.4.6-sol10-x86-local
# pkgadd -d wget-1.12-sol10-x86-local
# /usr/local/bin/wget
wget: missing URL
Usage: wget [OPTION]... [URL]...

Try `wget --help' for more options.
#
pkg-getの導入

pkg-getは、メジャーなリポジトリが2つあります。
今回は、今はなきSunがスポンサーの下記サイトを使います。
Open Source Software for Solaris

パッケージをダウンロード
-bash-3.00$ wget http://blastwave.network.com/csw/pkgutil_i386.pkg
--2009-10-24 23:29:51--  http://blastwave.network.com/csw/pkgutil_i386.pkg
idn_decode failed (9): `System iconv failed'
Resolving blastwave.network.com... 64.79.150.209
idn_decode failed (9): `System iconv failed'
Connecting to blastwave.network.com|64.79.150.209|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 286720 (280K) [application/octet-stream]
Saving to: `pkgutil_i386.pkg'

100%[======================================>] 286,720      237K/s   in 1.2s    

2009-10-24 23:29:55 (237 KB/s) - `pkgutil_i386.pkg' saved [286720/286720]

-bash-3.00$ 
チェックサムの確認

確認するチェックサムは、下記です。
md5 = a9dcb973ca1 8d63439d6d4dd12c9bf0a

-bash-3.00$ digest -a md5 pkgutil_i386.pkg 
a9dcb973ca18d63439d6d4dd12c9bf0a
-bash-3.00$

問題なしです。

パッケージのインストール
# pkgadd -d pkgutil_i386.pkg 
# cp -p /opt/csw/etc/pkgutil.conf /etc/opt/csw/pkgutil.conf
#
カタログの取得
# /opt/csw/bin/pkgutil --catalog
#
公開鍵のダウンロードと鍵の承認

Open Source Software for Solarisの手順に従ってリポジトリの公開鍵をインポートして承認して/opt/csw/binと/usr/local/binにPATHを設定すれば完了です。