|
インストール前に |
|
いままでにも何度かチャレンジして挫折していたLinuxにまたまたチャレンジです。 Slackware,Vine2.0等(あとBSD系でFreeBSDとかも) 失敗の原因はなんだろう?以下対策とともに記載しておく。 1.雑誌の付録とかについているディストリビューションを使用した → よくわかっている人ならともかく初心者の私がそんなことしちゃダメ 2.自宅、会社のデスクトップパソコンにインスコした → 使いこなしてもいないのに会社のはダメ、自宅のパソコンもほとんど使わない 3.OSのマルチブートをおこなわなかった → そう、単一OS環境だったので何かと不都合がでちゃったのだ。 ということで、ちゃんとしたパッケージを購入していつも持ち歩いているレッツノートに WindowsXPとともにインスコしてちょっとずつ慣していくのだ! |
|
いくぜインスコ |
|
インスコするのはややこなれた感じのするVine2.6CR (選定のいちばんのポイントは……竹千代博士も使っているから(^^;) まず、最初にチャレンジしたのがCDブートさせてインスコするパターン デスクトップパソコンのときはこれですんなりインスコは完了したから ところがノートなんでこれはCDブートができない(KXL-RW10AN-S) → 断念 次に、フロッピー起動させてからCD認識させてインスコするパターン XPマシンにVineのCDをセットして X:\images> ..\dosutils\rawrite.exe -n -f boot.img -d a: このコマンドでセットアップフロッピーが作れるのでPCMCIA用のを使う がKXL-RW10AN-Sの認識させかたがいろいろ調べても載っていない (結構ややこしそうですKXL-RW10AN-S) → 断念 次は、無難にローカルセットアップするパターン XPからVineのCDの内容をローカルのハードディスク(FATパーティション作成)に あらかじめコピーしておきローカルセットアップ用のフロッピーでインスコ ところがCDのイメージを見つけられないってなことを言われて先に進まない → 断念 思いつきで、ファイルじゃなくてCDイメージをコピーしてみた XPでCDRライティングソフトを使用して、VineCDの内容をISOイメージに変換して 上記パーティションに置いてみた おっ!今度は成功だ!説明書にもちゃんと書いとけよボケが!とかぶつぶつ言っている 私にはいっこうにかまう気配もみせず、インスコがすすんでいく。 が、最後の最後でエラーが発生した。 そのメッセージをもとにいろいろなサイトで調べてみたが直接の原因はわからず。 → 断念 一番簡単だと思っていたローカルファイルからのセットアップに失敗した私は そろそろあきらめようかなぁ…と考えていた。 (これが最終手段だと思っていたから) でも、今回のVineはタダじゃない、1万そこそこの金をかけて購入したものだ。 さすがにインストールくらいはしたい。(←ここいらへんが売り物のいいところ?) 専門の知識がないとしんどいって説明に書いてあるパターンにチャレンジ XPにたまたま入れてあったアパッチforウィン32を使って、CDドライブをWEB公開する でもって、ネットワークインスコ用の起動フロッピーで起動後、セットアップイメージの 取得先を http://192.168.1.1/X/ てな感じで指定する おー!いったいった!さっきのエラーのところも問題ないぞ! レッツノートにVine2.6CRがインスコされていくー (ビデオメモリの関係で通常のグラフィカルなインストールじゃないので感動は1/3くらい) ま、とにかく成功や! あーながかったー先が思いやられるなぁ… |
|
カーネル |
|
マシンを起動するとLILOがXPを含めどいつを起動させるか聞いてくる Vine2.6CRには 2.2.20 と 2.4.19 が用意されている 当然、2.4.19 やろーがと思って 2.4.19 を起動する。 細かい文字がウジャウジャと表示されていきOSが起動してるって感じがする モビルスーツの起動画面もこんなんなんかなぁとか全然関係ない根拠もない空想に浸っていると karnel panic という表示がされたまま先に進まなくなった 私もpanic 新しいことがやりたかったら2.4、安定稼働の2.2とか書いてあったので 今度は2.2で起動する。成功。まぁこれで使えるんならいいか と思ったのもものの数時間で、 USBデバイスを認識させるのに2.2じゃうまくいかないことに気づいてしまった。 でもって調べるとacpi=offにするとよいらしい lilo.confを修正する append="acpi=off"を追加して保存 /sbin/lilo で反映 今度はpanic起こさずに起動、ハァ疲れた |
|
USBフロッピーを認識させる |
|
フロッピードライブくらいは認識できとかないと何かと不都合なのでチャレンジする /sbin/dump_usbdev を実行する フロッピードライブを差し込んでもう一度 /sbin/dump_usbdev を実行 そしたらメッセージが増えているのでその増加分がいま差し込んだFDDの情報 vendor 0x644 product 0x0 module これを /etc/usbmgr/usbmgr.conf に以下の内容とともに追加 vendor 0x644 procuct 0x0 module scsi_mod,sd,usb-storage でもって、ルートになって update_usbdb /etc/usbmgr/usbmgr.conf を実行する(usbmgrに反映) 確認してみよう cat /proc/scsi/scsi で確認 cat /proc/scsi/usb-strage-0/1 で確認 認識が終ったらマウントの設定 /etc/fstabを /dev/sda /mnt/floppy auto noauto,user 0 0 として # mount /mnt/floppy でマウントできる また、/etc/mtools.confのa:のところをfd0からsdaにかえておく 確認はmdirにておこなう。 |
|
Air-H"を休ませてあげたい |
|
Air-H"(MC-P300)の認識とかとくに難しくなかったのだが、 -H"のアンテナLEDがずっとつきっぱなしなのである。 赤になったり、点滅したり、オレンジになったり、そう、 電波状況をずーーーっと監視しているみたい。ってことは当然 バッテリーを弱らせる原因だったり、発熱の原因だったりと よくないので使わないときは休ませてあげたい。 /sbin/cardctl suspend こいつでカードバスがサスペンドします。 /sbin/cardctl resume こいつで復帰します。 /sbin/cardctl reset ダイアルアップが何度やっても失敗する現象が 発生するんだけどそうゆうときはこのresetを実行すればよろしい。 /sbin/cardctl suspend 1 というようにソケットNoを指定すると 該当するソケットのみの制御が可能(レッツノートは2枚させる) ちなみに何がささっているか見るとき /sbin/cardctl ident 使用状況を見たいとき /sbin/cardctl status 毎回手打ちで面倒くさいという人がいるかもしれないが私は平気 |
|
2.4kernelを根本的に解決させたい |
|
例のカーネルパニックを根本的に解決させたくてアップデートを行ってみる 全然わかってないんだけどやってみた。 #apt-get update #apt-get install kernel-headers kernel-doc kernel-source #apt-get install kernel #2.4.19-0vl26 ってやったんだけどすでに最新とか言われちゃいました。 (でもこのときに2.4.20のソースファイルが入ったのかな?あとで出てきます) |
|
スマメを使いたい |
|
今までいろいろと無駄な買い物をしてきたけど、 中でもInternetViewcam。これはかなり使えなかった ただ、一緒に購入したPcCardAdapterは結構な頻度で使用してます ドライバーが必要なくてWin98等でも認識できるので おいおいまじかよーそんなOSいまどき使うなよー! ってなデータ受け渡し手段しかない相手がいてもなんとかなったりする SHARP製 VR-PCA1 3.3V 2MB〜32MB ←これね /etc/fstab に以下の一文を追加する /dev/hdc1 /mnt/smart vfat noauto,user 0 0 差し込むだけでなんなく認識していたので特に問題なし |
|
こっちでもOpenOffice.Org |
|
XPでもインスコしたのでこっちにも入れておく まず、ダウンロードしてくるサイトは忘れた /tmp/OOo_1.0.3.1_LinuxIntel_install_ja.tar.gz ここに入れた $ tar xvfz OOo.1.0.3.1_LinuxIntel_install_ja.tar.gz で解凍 ノートだし他に誰も使わないのでスタンドアロンでインストールすることにした $ cd install でディレクトリ移動して $ ./setup でセットアップ開始 Windowsのときと同様のGUIでサクサク進む インスコが終ったら日本語フォントを認識させないと $ cd /home/(user)/OpenOffice.org1.0.3/program/ に移動する $ ./spadmin を実行する フォント → 追加 と進んで ソースディレクトリ = /usr/X11R6/lib/X11/fonts/TrueTypeを指定する すべて選択して → OK → 閉じる → 閉じる 日本語を使うために必要な設定は http://oooug.jp/mirror/documents/install/install.html を参考にした ほとんど使わないけどとりあえずインストールできた |
|
Windowsの共有フォルダをマウントしてみる |
|
やっぱり、Windowsのときみたいに共有フォルダを使って ファイルの受け渡しをしてみたい # mkdir /mnt/win でマウントするディレクトリを作成する # chmod 775 /mnt/win でマウント後に読み書きできるようにしておく # smbmount //(パソコン名またはIPアドレス)/(共有フォルダ名) /mnt/win/ -o username=(共有可能なユーザ名) そしたら、Password: って聞いてくるので入力してマウント完了 確認にはdfコマンドで容量とかが表示されればOK ファイル名の規則には気をつけよう。Windowsと若干違うから まぁ意外と簡単にいきました。 |
|
USBフラッシュメモリを使ってみる |
|
手元にSOTECのVOICEレコーダがある。コレ → SMS-10(どっかのメーカにOEM提供もしてた) こいつはUSBフラッシュメモリとして結構重宝していた ぜひ、Vineでも使えるようにしておきたい。 ちなみに、Voiceレコーダは会議づけの人間にとっては いつか必ずほしくなるが決して買ってはいけないものの頂点である 半日の会議の録音を同じ時間(倍速再生とかあったとしても数時間)かけて 聞くか?絶対に聞きません。断言してもいいです。 最初からフラッシュメモリ買っとけ 実は差し込んだら勝手に認識した。全然問題なし あとはマウントするだけ /etc/fstab に以下追加 /dev/sda /mnt/usbmem auto noauto,user 0 0 マウントポイントは作ってね mount /mnt/usbmem で完了 |
|
USB HDD ケースを認識させる |
|
ものは恵安社製USB-2502A 交換したHDDを再利用したかったので知り合いから譲ってもらいました。 XPでは何事もなく認識したので安心してたんですが・・・ これが、ものすごく難しかったです。最初USBフロッピーのときみたいに。 vender 0x5e3 product 0x702 module scsi_mod,sd,usb-storage を追加してみたんですが、ダメ。マウントできないのです。 いろいろUSBマネージャあたりを疑ってみたんですがうまくいきません。 (返そうかなって思い始めました。) どうもベンダーコードとプロダクトコードがデバイスリストにないからじゃないかなぁ って思えたのでカーネルをあげてみる 2.4.19 → 2.4.20 ソースはいつのまにか入っていたので(多分Updateしたとき) /usr/src/linux_2.4.20/ で # make config # make dep # make clean # make install でもって vmlinux を /boot/vmlinux-2.4.20-0v|29.1 にして # make modules # make modules_install で /lib/modules/2.4.20-0v|29.1/ ができます lilo.conf を修正して lilo を実行して反映させる 再起動時に新カーネルを選択する 以上がだいたいカーネルのバージョンアップに際しておこなったこと サイトで調べながらやったから手順とかいいかげんかも?ってゆうかいいかげんだ (あんまり意味わかってないし、メモの内容を転記してるから曖昧表現だし) まぁ結果から言うと失敗ですわ でも、ちょっと進展した何となく認識っぽいところまでは動いてる もうちょっとなんだけどなぁ → おしい! ベンダーコードとプロダクトコードをもとに海外のサイトを検索していると カーネルのソースっぽいものをいじっているところがあった。 ここを修正すれば使えるようになりました。以下ご覧ください /usr/src/linux-2.4.20/drivers/usb/storage/unusual_devs.h こいつです。こいつを修正すればよかったんです。 0x05e3 を検索して探してください。 症状からしておそらく 2.4.19 のソースにはみつからないはずです だからはなから認識できないのだと思います。 このような行があると思います UNUSUAL_DEV( 0x05e3, 0x0702, 0x0000, 0x0001, "EagleTec", "External Hard Disk", US_SC_SCSI, US_PR_BULK, NULL, US_FL_FIX_INQUIRY ),これで認識はするんですけどやっぱりマウンントまではできない ってな状態です これを下記のように修正して、再度コンパイルしてみてください。 モジュールのみでいいと思います # make modules # make modules_install これが修正後のソース UNUSUAL_DEV( 0x05e3, 0x0702, 0x0000, 0xffff, "EagleTec", "External Hard Disk", US_SC_SCSI, US_PR_BULK, NULL, US_FL_FIX_INQUIRY | US_FL_MODE_XLATE | US_FL_START_STOP ),こいつできっと使えるようになります。 0x0001 を 0xffff に修正するのはデバイスからの応答時間待ちを長くする ためではないかなぁと大胆予想してます (しかし中途半端な知識でよくやるよ俺) ですから、2.4.19 のソースに上記のデバイス情報を追記してやれば 動くと思うのです(超無責任発言) 誰か同様の悩みをお抱えの方、試して結果教えてください そのときの注意点として、ベンダーコードとプロダクトコードの順番は 必ず守ってください。よからぬことが起ると書いてあった記憶が… 今回の例ですと 0x05e3 これがベンダーコード 0x05e2 より後に記述しないといけません 0x05e4 より前に記述しないといけません ベンダーコード0x05e2内でもプロダクトコード(0x0702)が 0x0701 より後に記述しないといけません 0x0703 より前に記述しないといけません ちゅうことで晴れて /dev/sda1 拡張 /dev/sda5 FAT32 が見えるようになりました /mnt/hddcase というディレクトリを作って /etc/fstab に /dev/sda1 /mnt/hddcase auto noauto,user 0 0 を追加して mount /mnt/hddcase でマウントOK! |
|
あれれれ? |
|
256MBのメモリ挿したらPCカードバスを認識しなくなった! これは…かなり根が深そうだ 別に困らないし内蔵64MB+128MBでいいや (そのうち解決しよう) |
|
なーんとか |
|
使える形になってきました ひとつ思うのは、とりあえず動けばいいってこと あれこれやってると結構楽しいです。 ちょっとづつ勉強していくしかないっしょ ・256MBメモリの認識の問題 ・CD-ROMドライブの認識(使わないんだけどなぁ) ・ハイバネーション機能 等々ぼちぼちチャレンジしていきたいと思います 結構使い勝手もいいと思うぞ皆も使うよろし |
|
追記というか修正 |
UNUSUAL_DEV の上記説明にてわたくしウソを申しておりました。UNUSUAL_DEV( 0x05e3, 0x0702, 0x0000, 0xffff, "EagleTec", "External Hard Disk", US_SC_SCSI, US_PR_BULK, NULL, US_FL_FIX_INQUIRY | US_FL_MODE_XLATE | US_FL_START_STOP ),第1引数はVendorIDです 第2引数はProductIDです 第3引数は製品バージョンの最小値 第4引数は製品バージョンの最大値 となっているようです。 同じ製品でバージョンによって仕様が変るときはここで切り分けるようです。 つまり、0〜FFFF って修正して解決したのはバージョンが若干違ってたのを吸収できたからなのでした |