AccessとLinux

中小企業での販売管理プログラムの作成についての所感

Solaris10インストール インターネットの接続まで7

2006年11月06日 00時09分34秒 | Weblog
10.ネットワークカードを認識しないよ、どうすりゃいいんだ?
一番、問題だったのはこのネットワークカードの認識です。インストール作業の7割方はこの作業にかかった時間です。
結果的にはオンボードのSiSはあきらめて、corega CG-LAPCITX(チップはRealTekのRTL8139Dです)を購入して来ました。
驚いたことにRealTekはSolaris用のドライバーを配布しています。
カードをパソコンに挿して、起動します。この時点ではネットワークカードは自動認識できません。コンソールから
ifconfig -a
としてやってもlo0しかなく、rtls0が見あたりません。ここからドライバーのインストール作業に入ります。
まず、他のパソコンを使用してRealTekのホームページからRTL8139DのSolaris10用ドライバーをインストールしてきます。これを普通なら?フロッピーディスクなりに落として、Solarisをインストールしたパソコンに持ってくるのでしょうが、あいにく、我が家のWindowsパソコンにはフロッピーディスクがありません。しょうがないのでもったいないですが、CD-ROMに焼いてSolarisパソコンに持って来ました。
(もちろんダウンロードしたファイルはWindowsパソコンで解凍してからCD-ROMに焼きました。)
メーカーの専用ドライバーがあるので、ここからの作業は安心です。ドライバーファイルのディレクトリにあるsolaris_.txtにインストール方法が書いてあります。
要はシェルスクリプトInstall内の
add_drv -v -i '"pci1186,1301"' ${drvname}
のpci1186,1301を自分の環境に合わせて書き替えて実行しなさいということです。
自分の環境にあったpci1186,1301の部分とは、コンソール画面からprtconf -pvを実行して調べます。
prtconf -pv を実行すると各Node別にデバイス情報が表示されます。
最後の方にEthernet controllerという部分があります。既存のオンボードのEthernet controllerとは別に追加したPCIカードのEthernet controllerというNodeがあります。特にRealTekと明記されていないのですが、compatibleの行に8139という今回追加したPCIカードのRTL8139Dに符号する数字が記載されているのでわかります。このNodeのnameとしてpci1269,c10fとなっていて、これがシェルスクリプトInstall内の"pci1186,1301"に相当する部分です。
シェルスクリプトInstallを
add_drv -v -i '"pci1259,c10f"' ${drvname}
と書き替えて実行します。
これで、ifconfig -aを実行すると、rtls0が見えるようになります。ここまで来たらあとは設定ファイルをつくるなり、書き替えるだけです。
下記を変更ないし、作成しました。

/etc/hostname.rtls0(新規作成)
このパソコン(NIC)に割り当てるIPアドレスを記入します。
ホストネームを書けば良いように書いてあるホームページもありましたが、IPアドレスを直接書かないと起動時にエラーになりました。

/etc/nodename(さわらず)
これはSolarisのインストール時にホスト名を入力していれば特にさわる必要はありません。

/etc/hosts(修正)
これはLinuxの場合と同じで、最初は(Linuxの場合、loghostはないけどね)
127.0.0.1 localhost loghost hostmei
となっていますが、
127.0.0.1 localhost
192.168.11.156 hostmei loghost
と書き替えました。IPアドレスは自分の環境でのパソコンのIPアドレスです。
また、hostmeiも同様に自分の環境でのホスト名です。

/etc/netmasks(新規作成)
これはこう書きました。
192.168.11.0 255.255.255.0
これも自分の環境に合わせてください。
私の場合はIPアドレスの3番目は11を使用しており、24ビットマスクです。

/etc/defaultrouter(新規作成)
ルーターのIPアドレスを書きます。
192.168.11.1

/etc/nsswitch.conf(修正)
最初からあるファイルの下記を修正しました。
hosts: files dns
dnsを追加しました。

/etc/resolv.conf(新規作成)
これもLinuxの場合と同様ですが、
nameserver 192.168.11.1
としました。自分の環境のDNSのIPアドレスを記入して下さい。

以上を設定を行って、
touch /reconfigure
shutdown -i5 -g0
としてリブートします。(Readmeの記載通りです。)
これでifconfig -aとすると、lo0とIPアドレスの設定されたrtls0が見えるはずです。

---------------------------------------------------------
しかし、ネットワークカードを認識させるだけでこの手間のかかりよう。よくビデオカードが認識されたと思います。もし、ビデオカードが認識されなかったらと思うとゾッとします。LinuxのようにrootでGUI無しで編集できないので、ビデオカードが認識されなかったら、どうにもなりません。
それにしてもRealTekがSolarisのドライバーを提供していて本当に良かった。これがなかったらSolarisの導入はあきらめていました。いやはやきつい環境です。
コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

Solaris10インストール インターネットの接続まで6

2006年11月06日 00時08分56秒 | Weblog
9.どうやってCompanionDVDの全てのパッケージをインストールするんだ?
Solaris10 6/06のCompanionDVDを開くとReadmeがあります。これを開くと、全てのパッケージをいっぺんにインストールする方法が書いてあります。
(「はじめてのSolaris10」の付録のCompanionDVDは6/06の一つ前のバージョンですが、このCompanionDVDには全てのパッケージをいっぺんに全てインストールするシェルスクリプトが付いていました。6/06ではこのシェルスクリプトがありません。)

まず、次の内容の/var/tmp/adminファイルを作ります。

mail=
conflict=nocheck
setuid=nocheck
action=nocheck
partial=nocheck
instance=overwrite
idepend=nocheck
rdepend=nocheck
space=check.

その後、

# cd /cdrom/s10_606_software_companion/Solaris_Software_Companion
/Solaris_i386/Packages
(実際には一行)
# pkgadd -a /var/tmp/admin -d `pwd`

とします。
でもうまくいなかかった。pwdはrootのパスワードという意味ではありません。pwdそのままでよかったのです。またpwdをくくっているシングルコーテーションはよく使う’ではなく、`です。106キーボードならShift+@で表示されます。(これが気が付かなかったんだよな。)
コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

Solaris10インストール インターネットの接続まで5

2006年11月06日 00時08分23秒 | Weblog
7.標準エディッタは何なんだ? emacsがない?
さて、画面もまともになったし、キーボードも106キーボードになったので、早速設定を変更しようとすると、Linuxではコンソールから「emacs ファイル名」で設定用ファイルを編集していたのですが、コマンドemacsが通らない。Solaris10のインストールDVDだけではemacsがインストールされていないのです。
emacsを使うつもりなら、これは上述のCompanionDVDのところで書いたとおり、Solaris10本体のインストール後、CompanionDVDからemacsをインストールしなければなりません。
でも大丈夫、emacsがないなら、geditがあるさ!Java Desktop Systemの「起動」(Windowsでいう「メニュー」)からテキストエディッタを起動するとgeditが起動します。コンソール画面から「gedit ファイル名」として設定ファイルの編集を行います。
玄人はここでgeditなんか使用しないでviを使用するのでしょうが、何が悲しくってインラインエディタなんか使用しなければならないだ、オレは絶対viは使用しないモン!

8.PATHを追加したいんだけど、どこで設定すればいいんだ?
設定ファイルの編集はgeditを使用して行うことにしましたが、実際、困ったことにネットワークカードをSolarisが認識してくれません。オンボードSiSです。
Linuxでもオンボードの100BaseTのネットワークチップを認識しないことがありました。この場合はPCIの10BaseTのNICを使用したことがありますが、これがまた認識しない。あきらめて、オンボードのSiS用のドライバーを手動でインストールすることにしました。ドライバーはSunホームページで紹介されているのフリードライバーのリンクページからダウンロードしてきます。
このドライバーをインストールする前にソースをコンパイルしなければならないのですが、今度はGNUmakeがありません。やはりCompanionDVDに含まれているのです。Linuxなら最初からインストールされています。しょうがなく、CompanionDVDからインストール。
(実際には、先のemacsがインストールされていなかったのに懲りて、CompanionDVDに含まれるパッケージを全てインストールしました。この方法でまた、悩みました。この方法については後述)
GNUmake、gccをCompanionDVDからインストールすると、インストールされたプログラムは/opt/sfw/binから起動します。
/opt/sfw/bin/gmake all
とすると、/opt/sfw/binにパスが通っていないので、停まってしまいます。
/opt/sfw/binをパスに追加しなければならないのですが、今度はこの方法がわかりません。
Linuxの場合は標準のシェルはbashですが、Solaris10はshです。shはLinuxでシェルスクリプトの標準ですが、実際シェルとして使用したことはありませんでした。Linuxのbashの場合、ランレベル3だろうと5だろうと、.bashrcで環境変数の設定をしていました。実際、ランレベル5の場合は.bash_profileで設定するべきなのでしょうが、.bash_profileで.bashrcを読み込むように設定されていることが普通なので、グラフィカルログインの場合(ランレベル5)の場合でも.bashrcで設定していました。
Solaris10のshでは/etc/profileで設定しました。最初の方えexport PATHしていますが、その直前で
PATH="$PATH":/opt/sfw/bin
を書き加えました。
これで再起動すればPATHに追加されています。
(実際にはLinux風にsource /etc/profileとしてやれば良いのかもしれません。)
コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

Solaris10インストール インターネットの接続まで4

2006年11月06日 00時07分46秒 | Weblog
6.sendmailがうっとおしい、どうやってとめればいいんだ?
インストール後、何度も再起動することになりますが(実際、Linuxのように再起動する必要もないのでしょうがついつい再起動してしまいます)、立ち上がり時にsendmailデーモンが起動して時間がかかってしまいます。どうせ使用しないデーモンなら停めてしまいます。
svcadm disable network/smtp:sendmail
で停まります。

5.モニターの表示の大きさが変? キーボードが101キーボードになってしまう?
インストールしてJava Desktop Systemを使用する段になると、モニターの大きさにデスクトップの大きさが対応していない場合があります。
インストールの最初方でコンソール画面に

Proposed Window System Configuration For Installation:

Video Device:
Video Driver:
Resolution/Colors:
Screen Size:
Monitor Type:
Keyboard Type:
Pointing Device:

と表示されて、

<< timeout in 30 seconds >>

と待ち画面になるタイミングがあります。この時、席を離れていてこのタイミングを逃してしまうと、後からキーボードなどの設定を別途、行わなければなりません。
(kdmconfigを行えば良いようなのですが、やはり、インストール時に設定しておくにこしたことはありません。)

Escキーを押して、Configure Devices 画面に移行します。
私の環境ではScreen SizeとKeyboard Typeを変更しました。
Screen Sizeは19inchへ、Keyboard TypeはGeneric Japanese(106)に変更しました。
(デフォルトは101キーボードになっていました)
Resolution/Colorsは変更しなくても1024×768になっているのでこのままにして、F2を押して設定、モニターのテストを行い、インストール時は問題なかったのですが、いざJava Desktop Systemを使用してみると、1400×???になってしまっています。
Java Desktop Systemなら画面解像度の変更は簡単です。Windowsと全く同じ操作です。右クリックして「解像度の変更」から1024×768に変更し直せばOKです。
コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

Solaris10インストール インターネットの接続まで3

2006年11月06日 00時07分09秒 | Weblog
4.サーバーとして使用するのでGUIをインストールしたくないのに?
Linuxをサーバーとして使用する場合、X Windowはインストールしません。Solarisでも同様に考えて、GUIは必要ないと思ってインストールすると、X Windowはインストールからはずせそうにないので、困ったということになります。
この点は「はじめてのSolaris10」の下記の記述を読んで了解しました。
以下抜粋

====================================================
 例えばRedhat系Linuxの場合、initコマンドでランレベルの変更ができ、まらランレベル5は通常X Windowを使ったグラフィカルログインになります。ですが、Solarisには歴史的にランレベル5は存在しません。つまり、コンソール画面は外部からのtelnet、もしくはsshによる接続ターミナルを利用することになります。
 これもSolarisというOSの性格によるものでしょう。モニターやキーボードを接続して使うのならX Windowで。サーバー利用ならそれぞれにモニターやキーボードを接続するより、外部の端末機からログインして使う方が合理的です。
 WindowsやLinuxでsshを使ったログインはターミナル画面になりますが、Solaris同士の接続なら、リモートでのグラフィカルログインも可能です。
====================================================

結局、モニターを使ってrootでログインする場合はGUI使えということなんでしょう。
このGUI画面も2種類あります。
共通デスクトップ環境(CDE)
Java Desktop System
です。最初はCDEを使用していたのですが、どうも使いにくくてこの頃はWindowsライクなJava Desktop Systemを使っています。
(Solarisユーザーのホームページを見ていると、Java Desktop Systemは致命的なダメージを与えると立ち上がらなくなってしまうので、CDEを使うべきだ、という記載があるものもあります。Java Desktop SystemはSolaris10から取り入れられたもので、歴史が浅いので安定した稼働を求めるのならCDEを使った方が良さそうです。しかし、当面の操作でゴタツキたくないので、Java Desktop Systemを使おうと思っています。CDEを使うのはSolarisにもっと慣れてからにしたいと思います。)

5.ランレベルの設定はどうすりゃいいんだ?
ランレベルの設定はありません。
Solarisのランレベルは
0 電源オフ
s シングルユーザーモード
1 シングルユーザーモード
2 ネットワークを使用しないマルチユーザーモード
3 ネットワークを使用するマルチユーザーモード(デフォルトの起動)
4 未使用
5 電源オフ(外部操作、ソフトウェアによる操作も可能)
6 リブート
となっているので、
電源オフ時は init 0
再起動時は  init 6
とコンソールから入力してやれば良いということです。
コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする