Entries

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

PuppyLinuxTips 3

目次
11) ダイアルアップ接続でパルス発信する方法
12) PCから音をだすための初歩
13) USBブートのためのUSBメモリをPuppyで作る方法
14) 個人保存ファイル(pup_save.2fs)の容量をkB単位で増やす方法
15) 実行ファイルを簡単に作る方法

11) ダイアルアップ接続でパルス発信する方法

Puppy付属のPupDialでも、7)で示したpppconfigによる方法でも、トーン発信がデフォルトでパルス発信はそのままではできない。例えば、PupDialではトーンとパルスの選択メニューがない。また、pppconfigでは選択はできるが、パルスを選択しても自動的にトーンとなってしまう。この問題を解決するには、PupDial(wvdial)の場合は、/etc/wvdial.confの、また、pppconfigの場合は、/etc/chatscripts/privider(接続名をproviderとした場合)の記述を一部修正する。
つまり、/etc/wvdial.confでは、
"Dial Command = ATDT"
となっているのを
"Dial Command = ATDP"
と書き直す。
同様に、/etc/chatscripts/prividerでは、電話番号の前の、
"ATDT"
となっているのを
"ATDP"
とすればよい。"ATDP"とはパルスで発信するという、モデムへのコマンド(ATコマンド)であり、一方、"ATDT"はトーンで発信するコマンドである。なお、wvdialのGUIヴァージョンであるPupDialは上記の修正をおこなっても自動的に"ATDT"となってしまう。パルス発信には、"8) wvdialをCUIで使う"で示した方法を使う。

12) PCから音をだすための初歩

Linuxを入れたがPCから音が出ないということは珍しいことではないが、実は設定が適切でなかったから音が出ないということもある。そこで、Puppyの音量管理ソフトALSA Mixerを調べてみる。Puppy 4からメニュー=>マルチメディアの中に表示されるようになった。端末で # alsamixer としてもよい。Puppyにはいくつか音量調節の"つまみ"がある。ひとつはタスクトレイに表示されるスピーカーマークをクリックすると現れるものである。また、メディアプレーヤGXINEにも音量調節のつまみがついている。筆者の使っているPCのひとつは音源に"HDA Intel"というボードを使っており、Puppy 4.00(k2.6.25)でのALSA Mixerの初期設定は図1のようになっている。

図1
15-4

一方、別のPCでは"Yamaha DS-1S"というボードを使っており、同じPuppy 4.00(k2.6.25)でALSA Mixerの初期設定は図2のようになっている。

図2
ALSA OldPC 400

このように音源が異なるとALSA Mixerの様子もずいぶんと変わってしまう。困ったことに、ALSA Mixerの詳細についての説明がほとんどないので、何をどうすればよいのかすぐにはわからない。図1にはあって図2にはないつまみ(設定項目)も、また、その逆もある。ここはひとつひとつ試してみるしかない。ALSA Mixerで設定項目を変更するには、左右矢印のキーを使い、設定量を高下させるには上下矢印のキーを使う。
図1において"Master"とあるのは、タスクトレイのボリュームと連動している。タスクトレイのボリュームを上げ下げすると、この"Master"も上下する。一方、"PCM"はGXINEのボリュームと連動している。では、"Front"は何なのか?筆者のPCでは当初、Puppy 4.00で音が出なかった。Puppy 3.01では音が出たのに、なぜ?と思って、いろいろ調べていると、この"Front"がゼロであったためであることがわかった。これを適切なレベルにまであげてやれば音が出た。
しかし、この"Front"という設定項目は図2にはない。図2のPCでは初期設定でも音が出たのである。このように、音源ボードの違いによって、ALSA MIxerの設定項目に違いがあり、しかも、初期設定で音が出ないようになっていることもあるので、音が出ないとあきらめる前に最小限、ALSA Mixerを調整してみることをお薦めする。もちろん、音が出ない理由はそれだけではないことのほうが多いのであるが。

13) USBブートのためのUSBメモリをPuppyで作る方法

Puppy 3.01でPuppy 4.00-日本語RC版を作成する例を示す。まず、ブートに使うUSBメモリをPCに接続する。USBメモリのうちブートに必要なファイルを入れるパーティションを仮にsdc2とする。事前にこのパーティションにはbootフラグをつけておく必要がある。通常、USBメモリの最初のパーティションにbootフラグがつくから、パーティションが一つしかない場合、および、2つ以上ある場合でも、一番目のパーティションを使う場合には以下の操作は必要ない。2番目以降のパーティションを使う場合には、通常、bootフラグがついていないので、以下の操作が必要となる。この操作はパーティション作成の際についでにおこなっておくとよい。
まず、メニュー=>システム=>GPartedパーティションマネージャを起動する。右上のデバイス選択メニューで操作するUSBメモリ(この場合はsdc)を選択する。まず、sdc1のbootフラグを取り消す。そのためには、sdc1を右クリックして"Manage Flags"を選択し、"boot"に入っているチェックを外す。この操作はしばらく時間がかかる。次に、sdc2を右クリックし、同じように今度は"boot"にチェックを入れる。これで、bootフラグがsdc2にできる。
さて、ここから、bootに使うファイルの作成である。使用するUSBメモリをPCに接続する。USBメモリはマウントしない。端末で、
# syslinux /dev/sdc2
と入力すると、sdc2に"idlinux.sys"というファイルができる。
次に、他のファイルを用意する。Puppy-4.00-JP-RC.isoをダウンロードする。このファイルをクリックすると、図のようにいくつものファイルができる*。

Mount 400


このうち、"intrd.gz"と"vmlinuz"、"pup_400JPRC.sfs"、"zdrv_400.sfs"をsdc2にコピーする。(最後2つのsfsファイルは別のパーティションでもよい)
さらに、"syslinux.cfg"という名前のファイルを作る。中身は
default vmlinuz initrd=initrd.gz pmedia=usbflash
とだけ書く。また、USBFLASHという名前の空白のファイルを新規に作る。これらも、sdc2にコピーする。この2つのファイルはPuppyの他のバージョンにもコピーして使える。以上、6つのファイルがsdc2に入れて完成である。USBを接続してい,PCのBIOSでUSBメモリで起動できるように設定して、起動する。

*ワンクリックでマウントすることはPCによってはできないこともある。一般に、使用中のPuppyよりもバージョンの低いsfsファイルはマウントできるが、高いものではできないことがある。

14) 個人保存ファイル(pup_save.2fs)の容量をkB単位で増やす方法

個人保存ファイル(pup_save.2fs)は、メニュー->ユーティリティー->個人保存ファイルのリサイズ、で増量できるが、16M、32M、64M、128M、256M、512Mというように固定されており、好きな量だけ増加させることはできない。しかし、以下の方法でkB単位で好きな容量だけ増加させることができる。例えば、12345kBだけ増加させたいとすると、増量させたい個人保存ファイルのあるパーティションにpupsaveresize.txtというファイルを作り、そこに12345と書き、保存する。そして、再起動するのである。
pupsaveresize.txtの作成は、メニュー->ユーティリティー->個人保存ファイルのリサイズ、でもできる。適当な容量を選択して、"Okay"をクリックするとやはり、(使用中の)個人保存ファイルのあるパーティションにpupsaveresize.txtファイルができるので、その中身を12345と書き換えてもよい。
ところで、個人保存ファイルは次回起動時に増量されるのであるが、pupsaveresize.txtファイルがあるパーティションに複数の個人保存ファイルがある場合、起動時に選択した個人保存ファイルが増量される。したがって、次回起動時には増量させたい個人保存ファイルを選択しなければならない。pupsaveresize.txtファイルは増量後に削除される。

15) 実行ファイルを簡単に作る方法

このPuppy Linux Tipsでもいくつか実行ファイルを作る例(例えば、4) 無線LAN(WLAN)を切断するボタンをデスクトップに作る。)をあげたが、chmodコマンドとかを使うので、はっきり言って面倒くさい。もっと簡単に作る方法を書いておく。それは既存の実行ファイルのコピーを使う方法である。
/usr/sbinあたりには実行ファイルがごろごろしているので、適当なものを適当な名前でコピーする。そして、その中身のうち、最初の
#!/bin/sh
以外を全て消去してしまう。そこにコマンドを書き込めばよいのだ。あらかじめ、
#!/bin/sh
と最小限のコマンド(例えば、sleep 1とか、###のように実質的に機能しないもの)のみを書いた白紙の実行ファイルを作っておき、それをコピーして使ってもよい。



PuppyLinuxTips Indexへ戻る

PuppyLinuxTips 2

目次
6) ブロードコム製チップをPuppy 3.01のndiswrapperで使う方法
7) ppp with pppconfigでPHSにダイアルアップ接続する
8) wvdialをCUI(端末)で使う
9) pup_save.2fsの容量を縮小する裏技
10) gxineがフリーズしたときの対処法

6) ブロードコム製チップをPuppy 3.01のndiswrapperで使う方法

ブロードコム製bcm4311チップはPuppy 2.16ではndiswrapperを使って動作させることができたが、Puppy 3.01 では通常の方法ではできないのでここに書いておく。参考にしたのはこちら

使用したWindowsドライバはPuppy 2.16で使用したものと同じHPのもの
。ndiswrapperで.infファイルを指定するも、"新しいインターフェイスは検出されませんでした"となる。が、ここからが本番。私の場合、デバイスIDは14E4:4311なので、端末で、

# cd /etc/ndiswrapper/bcmwl5
# cp 14E4:4311.5.conf .conf

と入力すると.confというファイルができる。この操作は右クリックではできないみたい。右クリックではリンクができてしまう。参考にした例では、このファイルの9行目(afterburnerを0とする)の修正をするようにすすめているが、どうでもいいらしい。私は一応修正した。
もし、bcm43xxがロードされていたり、ndiswrapperがロードされていたら、
# rmmod bcm43xx
# rmmod ndiswrapper
として、消しておく。そして、ndiswrapperをロードする。
# modprobe ndiswrapper
ネットワークウィザードを開けると、"wlan0 Wireless ndiswrapper x x"となって、デバイスがndiswrapperで認識される。このまま、接続でき、WPA接続を確認した。なお、この方法は、Puppy 4.00(k-2.6.25)では使えない模様だ。

7) ppp with pppconfigでPHSにダイアルアップ接続する

Puppyでダイアルアップ接続をするにはPupDial(wvdial)を使うのが一般的であるが、Linuxではpppというソフトもよく使われる。また、pppconfigはpppの接続設定のためのソフトである。pppとpppconfigでbmobileに接続してみる。pppはPuppyにデフォルトで入っているが、pon/poffというコマンドは使えない。
ftp://ftp.samba.org/pub/ppp/よりppp-2.4.3.tar.gzをDLして解凍。
フォルダ内のscriptというフォルダからponとpoffというファイルのみをusr/sbinにコピー。ppp本体はPuppyにインストールされているため残りのファイルは不要。
# cd /usr/sbin
# chmod 744 pon
# ls -lF pon
としてponを実行ファイルとする。poffも同じ方法で実行ファイルとする。

次にhttp://ftp.debian.org/debian/pool/main/p/pppconfig/よりpppconfig 2.3.11.tar.gzをDLして/usr/libにコピーして解凍。
# chmod 744 pppconfig
# ls -lF pppconfig
として実行ファイルとする。
pppconfig 2.3.11内のpppconfigファイルのリンクを/usr/sbinに作る。
/etc/ppp/resolvというフォルダとその中に"bm"(接続名をbmとした場合)という白紙ファイルを作っておく。
/etc/ppp/chatscriptsのリンクを/etcに作る。

端末で# pppconfigと入力すると接続設定画面に変わる

"Create"を選択し"OK"
"bm"と入力し"OK"
"Dynamic"を選択し"OK"
IP numberはPrimaryもsecondaryも未入力で”OK"
Authentication Methodは"PAP"で"OK"
Userには"bmobile"で”OK"
Passwordには"bmobile"で”OK"
Speedには"115200"で"OK"
Pulse or Toneには"Tone"で"OK"
Phone Numberには"0570570145##61"で"OK"
Choose Modem Config Methodは”NO"
Manually Select Modem Portには"dev/ttyS1"と記入し"OK"
Properties of providerでは”Advanced"を選択、”Persist"を”Yes"として、再び、Advance画面に戻り、”Previous"を選択し"OK"で再び、Properties of providerに戻る。そして、下の方の"Finished"で"OK"で入力終了。これらの情報は、/etc/ppp内のファイルにあるので、エディタでも修正できる。

# pon bmと入力で接続開始(接続名を"Provider"としたら、"pon"のみ)
# poff bmで切断(接続名を"Provider"としたら、"poff"のみ)

デスクトップ等にON/OFFのボタンを作れば操作も簡単。作り方は、"4) 無線LAN(WLAN)を切断するボタンをデスクトップに作る。"参照。 

ちなみにwvdialはモデムは/dev直下のものしか読まないが、pppではどこまで読めるのか調べてみた。/dev/modems/USBとディレクトリを作り、その下にttyS1のリンクを作った。リンクの名前を"bm"とし、/etc/rrr/peers/providerの/dev/ttyS1を/dev/modems/USB/bmとしても接続できた。USBタイプのモデムでは、/devから何層か下に置かれてしまうため、/dev直下にリンクを作り直す必要が報告されているが、pppではこの点は解消される模様。問題があるとすれば、ときどきpoffが効かなくなるということで、原因はよくわからない。

8) wvdialをCUI(端末)で使う

wvdialをCUI(端末)で使う方法。wvdial.confはGUI(PupDial)と同じものを使用するので、事前に用意しておく。
/etc/ppp/peers/wvdialとして、次のようなファイルを作る。(これはGUIのwvdialを起動したら消えてしまうようなので注意)

noauth
connect "usr/sbin/chat -v -f /etc/ppp/chatscripts"
115200
defaultroute
noipdefault
user bmobile
usepeerdns

端末で # wvdial Defaults と入力する。ただし、wvdial.conf の[Dialer Defaults]の"Defaults"を別の名称に変えていたらそれにする。再起動したら"Defaults"に戻るので注意。終了する時はctrlキーとcを同時に押す。なお、CUIでの
wvdialでもモデムが/dev/modems/以下にあっても認識するようである。

9) pup_save.2fsの容量を縮小する裏技

厳密にはオリジナルのpup_saveファイルの中身をより小さなpup_saveにコピーするということである。pup_saveがどれだけ指定した容量を使っているかは、メニュー=>ファイルシステム=>パーティションサイズビューアでわかる。
あまりないかもしれないが、最初に過大な大きさのpup_saveを作ってしまったのに、ほとんど使っていないとか、アプリケーションソフトをアンインストールしたらpup_saveにかなりの空きができてしまったとかで、使ってもいないのにpup_saveに場所だけ取られるのはもったいないと思うこともあるかもしれない。そういうときには以下の方法でより小さなpup_saveに引っ越すこともできる。ただし、この方法はpup_saveが暗号化されていない場合にのみ有効である。また、この操作に際しては元のデータが失われる可能性もあることを指摘しておく。
大きな容量のpup_saveファイルを仮に、pup_save-old.2fsとしよう。その実際の使用量は50Mバイトだとする。まず、Puppyを起動して新規に小さめのpup_saveファイル(仮にpup_save-new.2fsとする)を作成する。小さめと言っても、50Mバイト以上ないとコピーしきれないので、ここでは64Mバイトとする。
次に別に新規にPuppyを起動する。つまり、pup_save-old.2fsとpup_save-new.2fsを読み込まずに起動するということである。そして、この2つのpup_saveファイルをワンクリックすると、"3-3 個人設定のレスキュー"で示したように新しいウィンドウが開いて各pup_saveファイルの中身が示される。まず、pup_save-new.2fsの"中身"をすべて削除する。"中身"のみであり、pup_save-new.2fs自体を削除するというわけではないので誤解のないように。そして、カラのpup_save-new.2fsのウィンドウにpup_save-old.2fsの"中身"をコピーするのである。その後、再び、2つのpup_saveファイルをワンクリックしてアンマウントする。実際におこなってみると、デスクトップに新規にアイコンを作ったりしてあるとレイアウトが乱れたり、消したはずのデフォルトのアイコンが現れたりしたが、インストールしたペットパッケージはそのままであるし、自分が書いたスクリプトも同じように機能したので、まずは成功したと言えるだろう。

10) gxineがフリーズしたときの対処法

gxineを使用中にgxineがフリーズしてしまったとき、Puppyを再起動しなくても対処する方法である。もちろん、これで万全というわけでもないが。
まず、gxineは"close"しようとしても"close"できないので、"kill"でプログラムを停止する。次に、/root/.gxineを開けると下図のようになっている。
15-3.png

この"socket"を削除する。そして、再び、gxineを起動してみよう。



PuppyLinuxTips Indexへ戻る

Puppy Linux Tips 1

目次
1) 端末に表示された内容をコピーする方法
2) ROX-Filerの使いこなし
3) 無線LAN(WLAN)を切断するボタンをデスクトップに作る。
4) ndiswrapperを分析する
5) 無線LANの接続状況を確認する方法

1) 端末に表示された内容をコピーする方法
Puppy 3.01では端末に表示された内容は通常の文章と同じ要領でコピー&ペーストできたが、Puppy 4以降ではできなくなった。Puppy 4以降では以下の方法で、端末の出力結果をファイルとする。
例えば、dmesgなら端末で、

# cd //root/my-documents
# dmesg > dmesg080718.txt

と入力する。これで、/root/my-documentsにdmesg080718.txtというのができている。中身は端末で # dmesg と入力したときに表示されるものと同じ。

このファイルを圧縮するのなら、引続き、

# gzip dmesg080718.txt

と入力する。これで、dmesg080718.txt.gzという圧縮ファイルができる。


2) ROX-Filerの使いこなし

右クリックして、一番上の"表示"を選択する。右側のメニューから、例えば、"アイコン縮小"、”隠しファイルを表示”、”サムネイルを表示”を選択すると、図1が図2のようになる。

図 1   
15-1.jpg


図 2
15-2.jpg


隠しファイルが表示される。サムネイル表示は画像データの多いフォルダを見るのに便利。この状態を保存したければ、一番下の"Save Current Display Setting"をクリックする。注意すべきは、この保存は当該フォルダ(ディレクトリ)より下位にのみ有効であること。例えば、ホームアイコンから開けた"/~"ディレクトリで上の設定を保存すると
その下にあるフォルダは全て縮小表示等となるが、"/~"より上の"/"へ行ったら通常の表示となり、また、その中の"root"アイコンをクリックした"/root"は"~"と同一であるが、表示は通常のものとなる。

3) 無線LAN(WLAN)を切断するボタンをデスクトップに作る。

WLANを切断するには、端末で、

# ifconfig wlan0 down

というようにコマンドを入力すればいいが、面倒な作業である。さらにPuppyにはWLANを切断するボタンは備わっていないようなので、自分で作ってみる。まず、
エディタを開いて、下記のように記入する。

#!/bin/bash
ifconfig wlan0 down
sleep 2
ifconfig wlan0 up

"sleep..."以下は場合によってはなくてもよい。そして、例えば、/usr/local/binにwlan_offという名前で保存する。
次に端末で、

# cd /usr/local/bin
# chmod 744 wlan_off
# ls -lF wlan_off

と入力すると

-rwxr--r-- 1 root root 32 2008-06-05 20:41 wlan_off*

というような結果が得られる。後は、/usr/local/binにあるwlan_offファイルをデスクトップにドラッグしてアイコンを作る。アイコンをクリックしたらWLANは切断される。接続する時は、ネットワークウィザードもしくはワイヤレスガジェットで接続すればよい。別に専用のONボタンを作ってもよい。Puppy 3.01ではファイルは以下のようになる。(WPAの場合)

#!/bin/bash
ifconfig eth0 down
sleep 2
rm /etc/dhcpc/dhcpcd-eth0.cache
rm /etc/dhcpc/dhcpcd-eth0.info
rm /etc/dhcpc/dhcpcd-eth0.pid
ifconfig eth0 up
sleep 2
/usr/sbin/wpa_connect.sh eth0 wext
sleep 10
dhcpcd eth0

この場合、接続完了まで最低14秒かかる。
また、Puppy 4の場合は以下のようになる。

#!/bin/bash
ifconfig eth0 down
rm /var/lib/dhcpc/dhcpcd-eth0.duid
rm /var/lib/dhcpc/dhcpcd-eth0.info
rm /var/run/dhcpcd-eth0.pid
sleep 2
ifconfig eth0 up
sleep 2
/usr/sbin/wpa_connect.sh eth0 wext
sleep 10
dhcpcd eth0

接続中の状況はわからない。WLAN使用中に誤ってONボタンをクリックするとWPA接続にエラーが発生するのを防止するため最初に切断して再接続するコマンド構成とした。WEPならもっと簡単にできるかも。また、sleepが入っているのは、先のコマンドが終了していないのに次のコマンドが実行されるのを防ぐため。まだまだ、改善の余地はあるはず。例えば、ON/OFFを一つにするとか。

4) ndiswrapperを分析する

/etc/ndiswrapperを見ると使用するWindows用ドライバのファイルが3種類あることに気づく。つまり、confファイル、sysファイルと.infファイルである。.confファイルはndiswrapperが作ったものであろう。.infファイルはndiswrapperに指定したファイルであるが、残る.sysファイルはndiswrapperが.infファイルの情報をもとに必要だとしてWindowsドライバから取り込んだものであろう。ということはndiswrapperを使うにはWindowsドライバのすべてのファイルが必要というわけではなく、ここにあるファイルだけを揃えれば良いということであろう。例えば、ZD1211Bチップを使ったWLANカードGW-US54GXSでは、Planex社のドライバのうち、ZD11BUXP.SYSとZD1211BU.INFという2つのファイルだけが、/etc/ndiswrapperの中にあった。それで、新たに素のPuppyを起動して、ドライバの中からこの2つだけを/rootにコピーして、ndiswrapperを使用したら確かに動作した。ndiswrapperでの動作報告では、Windowsドライバのダウンロード先(.exeファイル名)が重要な情報であるが、加えて、/etc/ndiswrapperにあるファイル名も重要な情報であると思う。一応、ndiswrapperでは、Windows XP用の.sysファイルを使うとされている。
逆にndiswrapperが誤った.sysファイルを取り込むかもしれない。.infファイルは1つなのでそれ以外の選択肢はないが、.sysファイルは多くあるので、必要なものだけ.infファイルとともに置けば、ndiswrapperが正しく取り込むかもしれない。実際、ある.sysファイルを削除したら動作したという報告もある。
なお、これはPuppyに限ったことかもしれないが、.infファイル、.sysファイルはなるべく上に置いておくほうがよい。あまり深い位置にあるときは読み込まれないようだ。とりあえず、.infファイルを指定する際には、/root内にでも置いておくのがよい。.infファイルが読み込まれたなら、それらは/etc/ndiswrapperにコピーされるので、/rootに置いたファイルは削除してもよい。

5) 無線LANの接続状況を確認する方法

上の、"3) 無線LAN(WLAN)を切断するボタンをデスクトップに作る。"でスクリプト実行中の接続状況はわからないと書いた。端末でコマンドを入力していくと、WPA接続中とかDHCP取得中とか、あるいはエラーメッセージとかが表示されるのであるが、このスクリプトだけでは接続が完了して、タスクトレイにネットワークアイコンが出るまでわからない。しかし、接続がどうなっているかをある程度、知ることはできる。それには、例えば、ROXファイラーで/var/runを開けてみればよい。(Puppy 4の場合、下図参照。Puppy 3の場合はディレクトリの位置が異なる)

puppylinux080911-1.jpg

例えば、WPA接続であれば、接続中にはwpa_supplicantというフォルダとかdhcpcd-eth0.pidというファイルがある。Puppyを起動した後、無線LANに未接続の状況ではこれらはないのだが、接続が進むにしたがって、wpa_supplicantフォルダ(中には、eth0というコンセントマークがある)ができ、次に、dhcpcd-eth0.pidファイルができる、ので、一応、接続がどのように進行しているのかわかる。上記のスクリプトの最初の方に、
rox /var/run
という行を、また、最後には、
rox -D /var/run
という行を追加すれば、接続ボタンをクリックすると、/var/runのウィンドウが開き、接続完了でウィンドウが閉じるようになる。



PuppyLinuxTips Indexへ戻る

WindowsユーザーのためのPuppy Linux入門  目次

はじめに
第1章 Puppyの基本操作
WindowsユーザーのためのPuppy Linux入門

第2章 Puppyのちょっと高度な操作(前編)
WindowsユーザーのためのPuppy Linux入門 2 (前編)

WindowsユーザーのためのPuppy Linux入門 2 (中編)

WindowsユーザーのためのPuppy Linux入門 2 (後編)

第3章 Puppyの応用編
WindowsユーザーのためのPuppy Linux入門3 (前編)

WindowsユーザーのためのPuppy Linux入門3 (中編)

WindowsユーザーのためのPuppy Linux入門3 (後編)


WindowsユーザーのためのPuppy Linux入門3 (後編)

3-4 LANの設定~カードの認識

Windows以外のOSを使う上で何が最大の障害かというと、ハードウェアを動かすドライバが不十分であるということです。(PCに接続する)ほとんど全てのハードウェアはWindowsで動くように設計されています。しかし、Linuxで動くかどうかは未知数です。多くの開発者の努力によってLinuxのドライバも充実してきましたが、それでも動かないハードウェアは多くあります。LAN、中でも無線LAN(WLAN)はその最大の障害でしょう。この節では、PuppyのLAN接続の方法を書きますが、お使いのLANカード、WLANカードが動くかどうかは全く保証できません。個々のカードについては、それに使用されているチップの情報(多くは英語ですが)を入手して検討されることを望みます。Puppyやその他のLinuxのフォーラム等も参考になります。
さて、お手持ちのカードが動くかどうか以前に、PuppyのLAN設定のウィザードははっきり言って、わかりにくいです。次に何をしたらいいのか明確ではありません。同じような画面に何度も出くわすこともあります。それでも上手く接続できたなら問題はないのでしょうが、そうでないとなると、接続ウィザードの操作が悪かったのではないかと考えたりします。接続できない理由が操作方法を誤ったからなのかどうか、ということをまず明確にする上でも、わざわざ、ここにその解説をしなければならないのです。Puppyのマニュアルも併せて読んで理解を深めてください。
さて、確実にPuppyがカードを認識するかどうか判別する方法は、カードを接続したままPuppyを起動することです。PCにひとつしかカードがない場合にはこれで十分です。これで認識できない場合は、別にドライバやその他のソフトウェアのインストールとか、後で説明するndiswrapperを使用しなければなりません。もし、PCにカードが2枚以上接続されている場合には、一方が認識されないということもあります。その場合には手動で認識することとなります。
まず、そのウィザード(設定画面)を開きましょう。デスクトップの"接続"アイコンをクリックして現れる"インターネット接続ウィザード"で"ネットワークインターフェースでインタネットに接続"をクリックします。すると、図14-1のウィンドウが現れます。

14-1.jpg

             図 14ー1

もし、既にカードが接続されていて、Puppyが認識しているのなら、"Puppyはアクティブなインターフェースを見つけました"というメッセージとともにeth1とかwlan0
とかいうボタンがあるはずです。その場合は3-6へ行ってください。
不幸にも、そういったボタンがなかったり、あるいは自分が使おうと思っているカードが認識されていない場合は手動で操作することとなります。もし、お使いのカードがUSB接続のものなら、カードを接続し、"USBの自動ロード"をクリックします。もし、Puppyの備えているドライバに適合するものがあれば、カードを認識したというウィンドウが現れます。カードがUSB接続でなかったり、あるいはUSBの自動ロードで認識されなかった場合には、"モジュールのロード"をクリックします。(図14-2)

14-2.jpg

             図 14ー2

モジュールとはドライバのことで、バスはカードへの接続方法のことです。バスには3種類あります。pciとはPC内蔵のカードの接続方法と思ってください。pcmciaとはPCカードのことです。usbはUSB接続を意味します。この段階で自分のカードはどのドライバを使うのか(このことは自分のカードは何というチップを使っているのかということと同義です)ということを知らなければなりません。わからない場合はそれらしいものを片っ端から当たってみるというのも手ですが、お勧めはしません。モジュールを選択し、"ロード"をクリックすると図14-3のようなウィンドウが現れます。

14-3.jpg

             図 14ー3

ずいぶん期待できそうなことが書かれていますが、"Ok"をクリックすると大抵、落胆します(図14-4)

14-4.jpg

             図 14ー4

ここは、"ロードしない"をクリックします。すると、図14-1に戻ります。もう一度やりなおしです。

3-5 LANの設定~ndiswrapperの使用

Puppyで用意されているドライバが使えないとなると、"ndiswrapper"に頼ることになります。ndiswrapperとはWindows用ドライバがPuppyとかのLinuxでも動くように仲立ちをするソフトウェア(ファームウェアといいます)のことです。PCをWindowsで動かしていたときに使えていたカードならPCの中に、(大抵はProgram Filesというフォルダに)ドライバが入っているはずです。また、カードを買ったときには付属のCDもあるでしょう。また、多くのカードメーカーは自社のサイトでドライバのダウンロードができるようになっています。そういったWindows用のドライバを探します。Windowsで使用していたもの(既にインストールされてHD内にある)は原則はそのままでよいのですが、CDやダウンロードしたものはファイルを解凍しておき、場合によってはコピーしてHD内とかUSBメモリとかに用意しておきます。Linux上で解凍することも可能ですが、手っ取り早い方法は、Windowsで解凍(すなわちインストール)してしまうことです。できたドライバのフォルダはそのままでもよいし、必要であれば適当な場所に移動してやればよいのです。ただし、Windowsでもそのカードを使うのであれば、フォルダやファイルを移動してしまうと問題が生じます。そういう場合はコピーを別のディレクトリに置くようにします。
次に、図14-2の画面の上の方の"さらに"をクリックすると図14-5の画面が現れます。

14-5.jpg

             図 14ー5

この画面の右の方に"ndiswrapper"というボタンをクリックすると新たな画面(図14-6)が現れます。

14-6.jpg

             図 14ー6

この種の画面の扱い方については、"WindowsユーザーのためのPuppy Linux入門 2(中編)2-4 文書の保存"の図8-3以下で説明していますので、その方法にしたがってください。まずは、Windows用のドライバの入ったドライブ(HDとかUSBメモリとか)をマウントします。そして、ドライバファイルのうち、.inf(あるいは.INF)という拡張子のファイルのありかを指定します。例えば、Planex社製のGW-US54GXSというWLANカードのドライバはHD(hda1)内のProglam Files内にありますが、これをどんどん掘り下げていく(mnt=>had1=>Program Files=>bRoad Lanner Wave=>GW-US54GXS=>InsDevTemps_USB)と図14-7のように"ZD1211BU.INF"というファイルがありますので、この場所を指定してやります。(図14-8)

14-7.jpg

             図 14ー7

14-8.jpg

             図 14ー8

ZD1211BU.INFを指定してOkをクリックします。もし、ドライバが認識されたなら図14-9のようなウィンドウが出ますので、OKをクリックします。

14-9.jpg

             図 14ー9

さらに、ndiswrapperがロードされた旨のウィンドウが現れます。ここもOKをクリックします。無事、カードが認識できたら図14-10のように、カードを示すボタン(この場合はwlan0)ができます。

14-10.jpg

             図 14ー10

ndiswrapperも万能ではありません。Windows用のドライバが全て動くというわけでもないのです。また、同じチップを使用していても、A社のドライバではダメでも、B社のドライバでは動くということもあります。また、私は、ドライバのフォルダの構成を変えると上手くいったという経験もあります。上で取り上げたGW-US54GXSですが、実は、Windowsでインストールしたままの状態では、ndiswrapperはドライバ(Planex製)を認識しませんが、一番下の"InsDevTemps_USB"フォルダの中にあるファイル(.INFファイルを含む)を一つ上の階層のフォルダに移動したら認識します。そういった情報はフォーラム他で公開されていますので参考にしてください。

3-6 LANの設定~WLAN設定

はじめに断っておきたいことは、ここから先は、Puppy 2.16でおこなったものであるということです。というのも、私の所持しているWLANカードでPuppy 3.01で正常に動いたものがないからです。2.16と3.01では若干、ウィザードが変わっているかと思いますが、基本は同じものだと思います。
さて、カードが認識できた後に最初にすることは、eth1とかwlan0とか自分の使用したいカードのボタンをクリックすることです。図14-10ではwlan0をクリックします。
すると、次のような画面が現れます。(図14-11)

14-11.jpg

             図 14ー11

まず"ワイヤレス"をクリックします。図14-12の画面に変わります。

14-12.jpg

             図 14ー12

ここでは、普通は最初に"スキャン"をクリックします。図14-13の画面に変わります。スキャンがおこなえない場合があります。それは大抵の場合、ドライバに起因すると考えられます。

14-13.jpg

             図 14ー13

ここで、接続すべきアクセスポイントを選び、OKをクリックします。すると、図14-14の画面に変わります。

14-14.jpg

             図 14ー14

図14-12と同じような画面ですが、アクセスポイントの情報が入力されています。ここでは、"Use This Profile"("このプロファイルを使う")をクリックします。すると、図14-15の画面に変わります。

14-15.jpg

             図 14ー15

図14-11と同じような画面ですが、最初の方のメッセージが異なります。ここでは、通常、"自動DHCP"をクリックします。もし、インターネット接続が上手くいけば、図14-16の画面に変わります。DHCPの取得に失敗した場合は図14-11に戻ってやり直しです。Puppyのマニュアルには、手動でDHCPを取得する方法が書かれていますので参考にしてください。私の経験では自動でダメで手動で上手くいった、ということはありません。自動で取れなかったのはドライバ関係に問題があったことがほとんどです。

14-16.jpg

             図 14ー16

ネットワークの接続状況についてはメニュー=>ネットワーク=>RutilTワイヤレスガジェットで確認できます。端末に # iwconfig と入力しても確認できます。

3-7 LANの設定~WPA

例えば、図14-13でWPA接続するアクセスポイント、"MyPlace"を選択すると、図14-17のような画面が現れます。基本的には図14-14と同じです。

14-17.jpg

             図 14ー17

しかし、これはWPAが必要なアクセスポイントですので、"WPA/TKIP"をクリックします。画面が少し変わって、図14-18のようになります。

14-18.jpg

             図 14ー18


Securityの項目とか、AP Scanとかは特にいじらなくてもいいみたいです。SecurityでOpenとは誰でもアクセスできる、Restrictedとはキーが必要という意味ですが、Openにチェックが入っていてもキーを入力しないと接続できません。参考までに、OpenをRestrictedにする方法を述べます。まず、Openのチェックをクリックして、このチェックを外します。すると、Restrictedのチェックボックスが書き込み可能となりますので、ここをチェックします。
Openか否かよりも、ここで最小限しておくべきことは"Shared Key"の項目にキー番号を入力することです。入力後、下の"Save"をクリックすると次回以降にキー番号を入力せずにプルダウンメニューで選択できます。
最後に、"Use This Profile"をクリックします。"WPA接続を設定中"というようなメッセージが出て、接続が成功すれば、図14-15の画面に変わります。その後の処置は3-6と同じです。
WPAのキー番号を保存した場合、次回の接続では、図14-19のように、プルダウンメニューで保存したアクセスポイント(この場合はMyPlace)を選択し、ロードをクリックすると、キー番号が入力された状態となるので、そのまま"Use This Profile"をクリックします。

14-19.jpg

             図 14ー19

3-8 LANの設定~ドライバのインストール

Linuxにたけた人であるならば、公開されているドライバをPuppy用に加工してインストールできますが、私は成功したことがないので、何も書くことはありません。一般的に注意しておきたい点を書きます。
ひとつは同じチップを使用していてもメーカーや製品によってPuppyに付属するドライバが使用できなかったりできたりするということがあるということです。例えば、ここで取り上げたGW-US54GXSというカードはZyDAS社のZD1211Bというチップを使用しています。これはPuppy 3.01の中のzd1211rwというドライバで動くチップとされています。しかし、GW-US54GXSは動きません。というのは、zd1211rwには動かせる製品のリストというのがあって、GW-US54GXSはリストにないからなのです。(Linuxのカーネル2.6.25では追加されました)こういう場合、リストにGW-US54GXSの番号(具体的にはベンダーIDと製品ID)を追加してやればよいのですが、これがなかなか大変な作業です。
また、Puppyの付属のドライバでは認識するけれども接続はできないというものもあります。ブロードコム社のbcm43シリーズのチップを使用したカードはbcm43xxあるいはb43というドライバで認識はします。しかし、通信させるのはさらにもう少しソフトウェアが必要なのです。どのようにして必要とされるソフトウェアを入手するかということはネット上で公開されていますが、これも大変な作業です。もし、Linuxについてよりよく勉強したいというのであればとてもいい教材になると思います。
Linuxについてもう少し知りたいという人には@IT Linux Tipsなどをお勧めします。

目次に戻る

Appendix

プロフィール

jakepuppylinux

Author:jakepuppylinux
FC2ブログへようこそ!

最近のコメント

最近のトラックバック

カテゴリー

ブログ内検索

ブロとも申請フォーム

この人とブロともになる

QRコード

QRコード
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。