たこさんのメモ書き

Linuxの設定/構築のメモを残すのが主体です。
わからないこと、あれこれたくさん。

LAN構築の練習その2 apache2とsshd

2007-10-20 08:51:41 | サーバー管理
LANの設定を完了したので、サーバー機でサーバーソフトを動かしてみる。
まずapache2。
$ su -
# service apache2 start
これでwebサーバーapache2が起動する。
テストのつもりなので、apache2の設定はまったくしない。
LANでつながっているクライアント機(Windows98/PuppyLinux2.6-1JP)でブラウザを立ち上げ、アドレスバーにIPアドレスを入力してみた(http://192.168.1.1)。
すると、apache2が起動していることを示す画面が出現。

次に、sshサーバーsshdを動かしてみる。
こちらも、設定ファイル /etc/ssh/sshd_config の内容は変えない。
sshサーバーの起動は、
# service sshd start
しかし接続の前に、サーバー機にユーザーを追加する(当然、そのパスワードを設定する)ことが必要。
また、接続後の操作で管理者権限の必要なことをするためには、/etc/sudoersファイルにそのユーザーを加えておく必要がある。

/etc/sudoersファイルを編集するには、コマンドvisudoを使う。
$ su-
# visudo
これでsudoersファイルの閲覧と編集が、viエディタで行える。
このファイルの中の以下の部分の末尾に、ユーザーを追加する。
今回は、rootと同じ権限を与えてみる。
# User privilege specification
root ALL=(ALL) ALL
newuser ALL=(ALL) ALL #新たに追加したユーザー

以上で準備は終了。
クライアント機でそれぞれのOSを起動し、sshクライアントで接続してみる。
sshクライアントは、Windows98にはputtyjpを導入した。PuppyLinuxには別のものが既に入っている。

puttyjpの使いかたは、おおよそ以下のとおり。
puttyjp.exeをダブルクリック。すると、Putty Configrationというダイアログが表れるので、接続に必要な項目を記入。
セッション/sessionの欄にIPアドレス(192.168.1.1)とポート番号(22)を入れる。
次に、Connection-dataの欄に移動し、Auto-Login Usernameの欄へ、サーバー機へ追加したユーザー名を入力。
そして、ダイアログの下のOpenをクリックすると、端末エミュレータのウィンドウが起動する。
このウィンドウでは最初に、接続(ログイン)するユーザーのパスワードを尋ねられるので、サーバー機に追加したユーザーのパスワードを入れる。
これでサーバー機へログインできる。

PuppyLinuxに入っているsshクライアントでも、入力する部分はほぼ同じ。
また、こちらでは端末から(GUIクライアントを使わずに)接続することもできる。
こちらの方が簡単だろうか。
$ ssh newuser@196.168.1.1
これでできるはず。

ログイン後は、端末のウィンドウへLinuxコマンドを入力して操作することになる。
/var/log/secure など、管理者権限がないと閲覧できないファイルを見るときは、sudoコマンドを使う。これを使うためには、サーバー機の上で、あらかじめユーザーを/etc/sudoersへ追加しておく必要があるのだ。。。
$ sudo less /var/log/secure
password:(パスワードを入力、ただし非表示)

・・・やってみると、無事に接続できた。
設定ファイルが初期設定値のままなので、パスワードでのログインが許可されている。なので、交換鍵の設定をしなくてもログインができた。







LAN構築の練習その1 接続と設定とping

2007-10-18 20:16:38 | サーバー管理
今までデスクトップの環境を整備することばかりしていて、ネットワークの設定はやったことがない。
いつかはサーバーを設置しLANを組んでみたいと思っていた。
ということで、突然思い付いてLANを組む練習をしてみる。

LANの構成は、VineLinux4.1をいれたノートPCをサーバー、
借り物のノートPC(Windows98/PuppyLinux2.6-1JPのデュアルブート)をクライアントととする。
サーバーとクライアントのIPアドレスはそれぞれ、192.168.1.1と192.168.1.2とする。
サーバーとクライアントを結ぶ方法は、それぞれのLANポートを、スイッチングハブを介してケーブルで接続する。ルーターは使わない(持ってない)。
また、これらをインターネットへはつながない。

まず、各PCのLANへの接続方法を、DHCPから静的IPアドレスを使うものへ変更する。
Vine4.1の設定方法は以下。
Gnomeの「デスクトップ」メニューから「システム管理」を選び、「ネットワークの設定」ダイアログを表示。
これは、GNOME端末を開いて管理者権限で network-admin と入力することでも表示できる。
そしてダイアログの「接続」タブをクリック。
「eth0」を選んで「プロパティ」をクリック、「インターフェースのプロパティ」ダイアログへ。
「接続の設定」の部分の、「接続の種類」を、「DHCP」から「スタティックなIPアドレス」へ変更。そして、その下のIPアドレス、サブネット・マスク、ゲートウェイの欄に入力する。内容はそれぞれ、192.168.1.1、255.255.255.0、192.168.1.1
とした。
さらに、/etc/hostsファイルには、
127.0.0.1 localhost localhost.localdmain
192.168.1.1 server serer@example.com

Windows98は、「コントロールパネル」から「ネットワーク」のプロパティ画面へ入る。そして、「ネットワークの設定」の中にある「TCP/IP->ネットワークアダプタの名前」をクリック。そして、「IPアドレスを指定」ボタンを選択し、IPアドレスとサブネットマスクに数値を入力する。
内容はそれぞれ、192.168.1.2、255.255.255.0 とした。

PuppyLinux2.6-1JPは、JWMウィンドウマネージャのデスクトップ画面から、(必ずLANカードを刺した状態で)「接続」アイコンをクリック。
するとeth0の設定ダイアログが表れる。
ここで、DHCPではなく固定IPアドレスを使う方へチェックを入れる。
さらにIPアドレスとサブネットについて、Windows98と同じ数値を入力。
ゲートウェイの数値は、192.168.1.2とした。
/etc/hostsは、
127.0.0.1 localhost puppypc
192.168.1.2 notes1@example.com

この状態で、サーバー機からpingを撃ってみる。
注意点は、近いところから遠いところへ順に撃つこと(死活確認になる)。
まず自分(サーバー機)へ。
$ ping 127.0.0.1
$ ping 198.168.1.1
この時点で問題なければ、クライアント機へ。
$ ping 198.168.1.2

同じように、クライアント機からサーバーへ向けてpingを撃つ。
Windows98だと、MS-DOSプロンプトを起動して実行。
c:WINDOWS:ping 127.0.0.1
こんな感じ。続いてサーバー機へも撃つ。
Windows98は、pingの回数は4回と決まっているようだ。

PuppyLinuxだと、端末rxvtを使って、
# ping 127.0.0.1
# ping 192.168.1.2
そしてサーバーへ。
# ping 192.168.1
Linuxの場合は、放っておくとpingは永久に繰り返される?ので、適当なところで中断させる(Ctrl-C)こと。

参考書を見ながら以上を実施。
無事にpingは通り、サーバーとクライアントは互いを確認できた。
これでLANの接続と設定は、とりあえず成功。

追記
/etc/hostsの内容について。
ループバックアドレス127.0.0.1(localhost)と、各PC自らのアドレス192.168.1.x(foo@example.com)は必要な項目だが、localhost以外のホスト名については、DNSサーバを動かすときに必要になる。
いまのところはIPアドレスを直打ちして接続させるので、ホスト名が適当でも大丈夫なようだ。
かといって、いい加減にしておくのは、あとあとマズイことにはなりそうだが。。







PuppyLinuxのブートローダの設定

2007-10-02 19:49:36 | Weblog
GRUB起動フロッピーを使わずにPuppyLinuxを起動させるためには、PCのMBRにブートローダをインストールする必要がある。
PuppyLinuxは、GUIのメニューからブートローダGRUBの設定ができるようになっている。
メニュー > システム > GRUBブートローダの設定
で可能。
"simple" と"expart"の2つのモードがあり、expartではダイアログにしたがって、OSの起動についての詳しい内容を指定できる。
これを使うと、GRUBのmenu.lstを対話的に作成したうえで、さらにGRUBをMBRへインストールすることができる。
さっそくやってみた。。が、ルートディレクトリに/bootディレクトリができない。
このままでは、PCを再起動してもPuppyLinuxが起動しないのだ。。

この機能では、/bootディレクトリはホームディレクトリである/mnt/home/にできる。
また、作成される/boot/grub/menu.lstは、自動でおおよその内容がきまっている。
PuppyLinuxの起動に関わる部分はほぼ、以下のような内容。

root (hd0,4)
kernel /vmlinuz root=/dev/hda5 ro vga=normal

これでは、"質素なインストール"をしたPuppyLinuxに適合せず、起動時にカーネルパニックを起こしてフリーズしてしまう。
そこで、この部分を以下のように書き換える。
・・・・・・・
root (hd0,4)
kernel /vmlinuz root=/dev/ram0 loglevel=3 pmedia=idehd
initrd /initrd.gz
・・・・・・・

さらに、ルートディレクトリに /boot/grubディレクトリを作り、その中へ、/mnt/home/boot/grub/の内容を全てコピーする。
端末rxvtを起動して、
# cp /mnt/home/boot/grub/* /boot/grub/
これで完了。

PCを再起動すると、無事にGRUBブートローダの画面が現れ、起動するOSを選択できるようになった。


PuppyLinux on ThinkPad240 をネットにつなぐ

2007-10-02 00:38:52 | Weblog
ようやくインストールに成功したPuppyLinuxだけど、インターネットに接続したい。
そこで、手持ちのLANカードを試してみる。
カードは、 CardBusのLANアダプターカード(100/10MB)。
Corega CG-FE2CBTXD
である。
対応しているOSには、WindowsおよびLinux(ただしサポート対象外)とある。

これを実機に差し込んで起動させても、PuppyLinuxは自動認識してくれない。
デスクトップ画面の"接続"アイコンをクリックし、ネットワーク接続ウィザードを起動させねばならない。

これを動かすと、メッセージは全て日本語で、とてもわかりやすい。
カーネルに組み込まれているLANカードのドライバがたくさん表示されているが、どれが対応しているのかがわからない。
かたっぱしから"ドライバのロード"を繰り返すと、"8139too"がヒットした。
(こんなことをしなくても、"AUTOなんとか"を選べば、ある程度自動で認識してくれるようだ。)
これらの設定を保存すると、次回の起動時から自動でドライバを読み込んでくれる。
なお、設定ファイル(画面解像度やキーマップを含む)は、Puppyのインストールされたパーティションへ自動で保存され、次回起動時から適用されることになる。

IBM ThinkPad240へPuppyLinuxをインストール

2007-10-02 00:23:57 | Weblog
日経Linuxの9月号に、LiveCDのLinuxと、古い休眠PCを再生するという特集があった。
INSERTやSLAXが掲載されていたが、ひょんなことからPuppyLinux日本語版にであう。
ネットをさまよって得た情報によると、なかなかいいらしい?
ノートPCで動かしてみると、LiveCDながら、KNOPPIX5.1.1よりも動きが軽いようだ。
ハードディスクへインストールする場合、空き容量が1GBから2GBあればよいらしい。
さっそく、手元にあるIBMのサブノート ThinkPad240へインストールしてみることにする。

このPCは、CPUがセレロン?でクロック周波数300MHZ、メモリ192MB(128MBを増設済み)というしょぼいスペックである。ハードディスクの容量は6GB。CD-ROMドライブはない。
1999年夏に発売され、Windows98がプリインストールされている。
手元の実機は、たまたまハードディスクが2GBずつに区切られ、3つのパーティションがある状態だった。そこで、使っていなさそうな/dev/hda5をLinux領域&swap領域とする。
問題は、CD-ROMドライブがないので、CDからブートできないということだ。。。

最近、"直刺しIDE"というパーツを入手したのだが、これはIDE接続のハードディスクなどの端子にUSBインターフェースを装着し、PCへ接続できるもの。
CDドライブがないThinkPad240のハードディスクを取りだし、このパーツを介して別のPCへ接続して作業することにした。
作業にはKNOPPIX5.1.1を使う。

作業1 インストール先のパーティションをつくる
ThinkPad240のハードディスクをつなぐと、KNOPPIX5.1.1はこれをすぐに認識し、/dev/sdaとして表示する。
パーティションはそれぞれ、/dev/sda1(Windows98) /dev/sda5(fat16) /dev/sda6(fat16) となっている。
Qtpartedを起動させ、/dev/sda5を1.8GBに縮め、ext2へフォーマットする。さらに、200MBをLinux-swapとする。

作業2 PuppyLinuxのファイルを用意する
PuppyLinux2.16-1日本語版のisoイメージ(115MB)をダウンロードし、KNOPPIX上でループバックマウント。
このとき、マウントポイント"puppy"を事前に作っておくこと。
# mkdir puppy
# mount -t iso9660 -o loop ~/puppy*.iso /ramdisk/home/knoppix/puppy
そして、以下のファイルを別の場所(ThinkPad240のハードディスク)へコピーする。
vmlinuz initrd.gz pup_216.sfs zdrv_216.sfs
(例)
# cp /ramdisk/home/knoppix/puppy/vmlinuz /dev/sda5/
ファイルのコピーが終わると、忘れずにループバックマウントを解除する。
# umount /ramdisk/home/knoppix/puppy

注意:この作業は、PuppyLinuxの"質素なインストール"を手動で行うものである。
(参照)PuppyLinuxオープンラボのマニュアル(バージョン2.17版)
http://openlab.jp/puppylinux/man-jp/manual/puppy217/main.html

作業3 grub起動ディスクを準備
ThinkPad240にはフロッピードライブがついており、これから起動できる。
そこで、ブートローダーgrubをフロッピーディスクへ納め、このフロッピーからPuppyLinuxを起動させることにする。
grubのイメージファイルをダウンロードし、これをフロッピーディスクへ書き込む。
用いたgrubは、
grub-0.97-i386-pc.ext2fs
ダウンロード元は、ftp://alpha.gnu.org/gnu/grub/
書き込む方法は、
# dd if=~/grub-0.97-i386-pc.ext2fs of=/dev/fd0
これで、イメージファイルを書き込むことができる。

以上で準備は(とりあえず)終了させ、PuppyLinuxを起動させてみる。

ハードディスクをThinkPad240の中へ戻し、grub起動フロッピーディスクをドライブへセット。
そして再起動させる。
BIOSの設定(F1キーを電源投入直後に押すこと)で、フロッピードライブの起動順序を一番最初にしておくこと。
すると、フロッピーのgrubが起動し、プロンプトが表示される。
grub>
このプロンプトの後ろに、起動させるためのコマンドを入力する。
コマンドは以下。
grub> root (hd0.4)
grub>kernel /vmlinuz root=/dev/ram0 loglevel=3 pmedia=idehd
grub>initrd /initrd.gz
grub>boot

すると、画面にメッセージが流れ、無事にPuppyLinux2.16-1が起動した。
オンメモリで動くせいか、かなり動きは軽い。
軽量なウィンドウマネージャ"JWM"のおかげもあるのだろうか。
CPU650MHZ、メモリ256MBのVAIOでKNOPPIX5.1.1を動かすのと同等から少し早いくらいの動作に思える。

OSが新しくなると、古いPCまで新品になったような気がする。よかった。