2005年05月07日
ネットワーク設定のクリア
Solarisでは、ネットワークの設定ファイルが複数に分散しており、IPアドレスの変更ですら結構面倒だ。
但し、OSのインストール時には、この設定は簡単に行なえるようになっているので問題ない。
しかし、その後はX上にも管理ツールが存在しないため、コマンドを打つか、設定ファイルの書き換えが必要となる。
ここで、OSを再インストールすることなしに、OSインストール時のネットワーク設定画面を出すためのコマンドを覚書として書いておこう。
# sys-unconfig
を打ち込んで、問い合わせに対し「y」を入力すれば、現在のネットワーク設定がクリアされ、リブート後に再設定画面が出現する。
とても便利だ。というか、(Linuxのように)X上の管理ツールが有れば一番良いのだが・・・。
投稿者 masatsu : 15:58 | コメント (0)
2005年03月30日
Solarisでsshd
インストール直後は、SSHサーバが動いていないので、
# svcadm enable ssh
で有効にしようとしたが、maintenanceになってしまう。
SMFでは状態がよく分からないので、
# /usr/lib/ssh/sshd
で直接起動を試みてみると、どうやらホストキーの読み込みに失敗しているようだ。
最初から/etc/ssh内にはホストキーファイルが存在し、設定(オーナーやパーミッション)も問題ない。
仕方ないので、DSAとRSAの両方のホストキーを削除して、作りなおしてみた。
# cd /etc/ssh
# rm -f ssh_host_*
# ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key
# ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key
これで直接起動は行えるようになったが、今度はSMFで起動できない。
# svcadm enable ssh
や
# svcadm restart ssh
を行なっても、maintenanceのままだ。
色々試行してみても解決しないし、Web上にも情報が無い。
で、ふと「一度disableにしてみたら?」と思い、やってみるとあっさりとonlineになって起動した。
つまり、
# svcadm disable ssh
# svcadm enable ssh
と入力しただけ。なんだかぁ・・・。
投稿者 masatsu : 13:16 | コメント (0)
2005年03月29日
psコマンドから見るSolarisとLinux
UNIXの系統にはSystemVとBSDの2つが存在するが、現在はもうごちゃまぜになっているような気がする。SolarisやLinuxがその良い例だろう。
しかし、コマンドのオプションスイッチ等で違いを見ることができる。
「LinuxはBSD互換」という言い方よりは、「SystemV互換」と言ったほうがしっくりくると思うのだが、プロセス一覧を見る場合は、
# ps ax
とする。これは、「BSD流」だ。
一方、SolarisはSystemVと統合したとはいえ、元々はBSDだ。
しかし、同じようにプロセス一覧を見る場合、
# ps -ef
になる。これは「SystemV流」だ。
なんだかなぁ。果たして、このへんが統一される日は、来るのだろうか?
Solarisを使いはじめて、今までLinuxで覚えたコマンドが使えない不便を言ってみただけ・・・。
投稿者 masatsu : 12:31 | コメント (0)
2005年03月28日
SolarisでWebmin
Solaris10には最初からWebminが入っている。
ところが、
# svcadm enable webmin
で有効にして
# svcs -a | grep webmin
で、確認してみても
「maintenance」となっていて、起動していない様子。
調べてみると、最初だけは次のコマンドで初期化しなければならないようだ。
# /usr/sfw/bin/webminsetup
これでブラウザからアクセスできるようになった。
LinuxでRPM版を使ったときは、インストールだけで使えるようになったのに・・・。
投稿者 masatsu : 13:46 | コメント (0)
Solarisコンテナ
Solaris10では、Zoneという「アプリケーション実行環境」をいくつも作成することができる。
これは、本来のOS空間上に仮想OS空間とでもいうべき領域を作成できるようなイメージだ。
なんとなくエミュレータに近い感じだが、エミュレータが本来のOSとは異なるOSをエミュレートするのに対して、ZoneはUNIX上にUNIX環境を作成する。
これの利点はセキュリティ面にあるようで、本来のOS部分(global zone)と個々のZone(non global zone)との間は通信できないように切り離すことができるため、サーバデーモンのセキュリティホールをつかれてrootをとられても、それはそのプログラムが動作していたZone(non global zone)のrootであって、大元(global zone)のrootではないということになる。
SoftwareDesign誌を読んで、まぁ、そんな感じに理解しているのだが、あってるのかいな?
問題は、一つのZoneの作成にメモリを40MB必要とするので、何GBもメモリを積んでいるようなハイスペックなサーバマシンならともかく、私のように中古のノートPCをサーバにするような貧乏人にはちょっとつらい。
しかし、外部セグメントにポートを開いているサーバプログラムは、Zoneで動かすと安心できるかもしれない(なんとなく・・・)。
投稿者 masatsu : 00:45 | コメント (0)
2005年03月26日
SolarisでApache2
/etc/apache2/httpd-std.confを同じディレクトリ内に「httpd.conf」という名前でコピーし、必要な箇所を書き換えた。
ところが、/usr/apache2/bin/apachectlを使って直接起動しようとしても、うまく起動できない。
UserとGroupを書き換えずに使っていたのだが、
User nobody
Group #-1
ではダメなようだ。
新規にwwwなんかの名前でユーザやグループを作成して、httpd.confを設定すれば起動できる。
つーか、そもそもconfファイルのコピー元が悪かったようだ・・・。
/etc/apache2/httpd.conf-example
をhttpd.confにすれば、何の問題もなく起動できる。
こちらのファイルは、最初からUserとGroupが「webservd」になっているからだ。
ちなみに
ps axやps auxはエラーになるので、プロセス一覧を見たいときは、
# ps -ef
にする。
apachectlで起動できることを確認したので、一旦ストップしてSMF起動に変更すれば完了だ。
# svcadm enable apache2
このあと、
# svcs -a | grep apache2
で「online」になっていれば成功。
投稿者 masatsu : 14:44 | コメント (0)
2005年03月25日
SMF(Service Management Facility)
サービスの起動や管理が、Solaris10からSMFに移行している。
svcsコマンドやsvcadmコマンドで、起動状況や有効・無効の切り替えを行なえる。
# svcs -a
でSMF管理されているサービスの一覧を表示できるので、grepで目的のサービスを絞り込めば良い。
onlineと表示されていれば、そのサービスは有効で起動している状態だ。
有効・無効の切り替えは、
# svcadm [enable | disable] (サービス名)
で行ない、サービス名については、そのサービスが特定できさえすれば省略形でも構わない。
svcsした時に、onlineまたはofflineの右側に「*(アスタリスク)」が表示されるときがある。
いろいろググってみたが分からない。
そのサービスが何らかの設定ミスで起動できないものについて、このマークが表示されるようだ。
もちろん推測だが・・・。
投稿者 masatsu : 14:24 | コメント (0)
2005年03月22日
Solarisの系譜
商用UNIXの一つであるSolarisが、10になってオープンソース化されたので、導入したいと思っている。
今日買ってきた「SoftwareDesign」の2005年4月号が、Solaris10の特集を行なっているので読んでいると、以前に知人とした雑談を思い出した。
すなわち、「SolarisはBSD系か、SystemV系か」。
この特集の最初にSolarisの歴史が書かれているのだが、答えは「どちらも間違い」。
もともとSunはBSD系だったが、SystemV系のAT&Tと結んで統一UNIXを作ろうとしたのがSolarisらしい(統一UNIX自体は失敗)。
結局、BSD系のカーネルにSystemVを統合したものらしいが・・・。