週末は大学には来ないつもりだったが,研究室の機材に用事ができてしまったので, 夕方からごそごそとやってきた.
この際だから,ThinkPad を Debian に洗脳してやろうと,メモリを交換し, 適当に Windows を起動してシステムの諸元を確認しながら,起動ディスクを作成して, さあやってやろーと,箱から FDD ドライブを取り出した. が,なんと USB FDD だった.
どうしたら良いのだろう?
後輩に相談したところ,「BIOS がヨキに計らってくれるので,通常通りにブートするはずですよ」 とアドバイスしてくれた.では,と通常の rescue / root ディスクの組合わせでブートを試みる. すると,
end_request: I/O error, dev 02:00 (floppy), sector 0
というエラーが出て,root ディスクの読み込みに失敗する. つまり,1枚目のフロッピーはきちんと読み込まれるのだが,2枚目は駄目だということらしい. うーん,昔の Slackware ならフロッピー1枚だけの rescue ディスクなんてのもあったが, Debian ではそんなものは聞いたことがないぞ?
Google で検索をかけてみると幾つかのページが見つかった. それらの情報を総合すると,
のどちらかが可能なようだ.
とりあえず,Windows のネットワーク設定が良く分からないので,後者の方法を試みることにする. 最新の woody の installer は USB がモジュールになっているようなので, これならと試してみるが,まったく同じエラーで頓挫.
インストールに成功した. 結局,研究室の拡張ドッキングステーションを借り出し,これに付属している CD-ROM から直接 boot することにした.それにしても, あまりにも簡単に CD-ROM から起動してしまったので,拍子抜けするほどだった.
/etc/apt/sources.list
を編集
apt-get dist-upgrade
dpkg --get-selections > file
dpkg --set-selections < file
apt-get dselect-upgrade
% adduser foo dialout % adduser foo audio % adduser foo src
横田さんの記述を参考にして,
kernel の再構築を行った(.config
).
nvi-m17n を vi として利用するように alternatives を設定した.
update-alternatives --config vi
日本語を編集できるようにするため,~/.nexrc
に以下のような記述を加えておく.
set noskipdisplay set displayencoding=euc-jp set inputencoding=euc-jp set fileencoding=euc-jp set autodetect=jp+
「全角/半角」キーが Esc キーとして解釈されるようにするため,
/etc/X11/Xmodmap
に以下の設定を追加しておく.
keycode 49 = Escape
testing は,unstable に登録されてから2週間以上バグ報告のないパッケージのみで構成されているので, 比較的安定している代わりに,一部のパッケージが利用できないことがある. しかし,最近の apt-get ならば PIN 機能というものが利用でき,この問題を容易に回避できる.
/etc/apt/sources.list
に unstable の APT line を追加する
/etc/apt/apt.conf.d/99release
に以下の設定を記述しておく
APT::Default-Release "testing";
% sudo apt-get install w3m/unstable
noflushd が有効に動作するようにするため,
[debian-users:25204]
の記事を参考にして,/etc/init.d/sysklogd
に以下の設定を記述しておく.
SYSLOGD="-m 0"
ネットワークの設定を見直した.
起動時に eepro100 モジュールが組み込まれるように
/etc/modules
に記述しておき,
更に /etc/network/interfaces
に eth0 の設定を追加した.
このように設定しておくと,以下のコマンドでネットワークの初期化・停止ができるようになる.
本当は,PCMCIA の設定と同様に,下宿と大学で設定が切り替えられるようにしたいのだけれど, うまくいかなかったので,また今度.
あまり使わないけれど,一応,音が鳴るように設定しておく.
基本的な手順はSS3330 と同じだが,
現時点の woody の alsaconf
が古いため,X20 のサウンドカードの cs4281 がメニューに現れない.
そこで,「Soundscards_based_on_CS4610/CS4612/CS4614/CS4615/CS4280」
を選択して alsaconf
を一度終了し,その後で
/etc/modutils/alsa
を手作業で書き換える.編集後,update-modules
の実行が必要なので注意.
それから,最初は全ての音源に mute がかかっていて音が出ず,
暫く悩んでしまった.alsamixer
を実行して,mute を解除する必要がある.
SS3330 の場合と同様,
suspend / resume すると音がうまく鳴らなくなる.
/etc/alsa/alsa-base.conf
に次の指定を加えておくと,この問題を回避できる.
force_stop_modules_before_suspend=true
無線LANの接続試験をしてみる. wireless-tools パッケージを導入しておいて, 確実に無線が届いているはずの場所に行ってみると, 拍子抜けするほど簡単につながってしまった.
jless のライン入力時に
BackSpace キーを押すと,こちらの希望する「1つ前の文字を消す」という動作をせずに,
単に Control-H が入力されるので困っていた.
この問題は,以下のような内容の設定ファイルを用意しておいて,
jlesskey
コマンドを実行すると解決された.
#line-edit ^H backspace #env LESS = -i
USB マウスを使えるように設定した.具体的な設定手順は以下の通り.
mkdir /dev/input mknod /dev/input/mice c 13 63
/etc/modules
を設定して,
mousedev
などの必要なデバイスが起動時に読み込まれるようにしておく.
/etc/X11/XF86Config
に以下の設定を加えて,複数のマウスが参照されるようにする.
Section "InputDevice" Identifier "USB Mouse" Driver "mouse" Option "SendCoreEvents" Option "Protocol" "ImPS/2" Option "Device" "/dev/input/mice" Option "ZAxisMapping" "4 5" EndSection
InputDevice "USB Mouse"
sary のパッケージを作成する.
cvs -w -d :pserver:anonymous@cvs.namazu.org:/storage/cvsroot export -d sary-1.0.3 -r HEAD sary cd sary-1.0.3 ./autogen.sh make distclean dpkg-buildpackage -us -uc -rfakeroot
Windows 環境がどうしても必要になる場合に備えて,VMware を導入した.
wget http://vmware-svca.www.conxion.com/software/VMware-2.0.3-799.tar.gz tar xzf VMware-2.0.3-799.tar.gz cd vmware-distrib sudo ./vmware-install.pl
この設定をいろいろと研究していると,
フレームバッファに対応したカーネルにしなければならないようなので,
カーネルの再構築を始めたが,これがあまりにも難物だった(その後,
これは誤解であることが分かったので,普通の構成に戻した).
結局,Eldridge
さんの記述を参考にしてパラメータを調節し(主なパラメータの値は以下の通り),
/etc/lilo.conf
に vga=0x317
という設定を加えることによって,
起動時にペンギンの絵が出るようになった.
CONFIG_FB=y CONFIG_DUMMY_CONSOLE=y CONFIG_FB_VESA=y CONFIG_VIDEO_SELECT=y CONFIG_FB_ATY128=y CONFIG_FBCON_ADVANCED=y CONFIG_FBCON_CFB8=y CONFIG_FBCON_CFB16=y CONFIG_FBCON_CFB24=y CONFIG_FBCON_CFB32=y CONFIG_FONT_8x8=y CONFIG_FONT_8x16=y
これで,VMware が使えるようになり,Windows が必要な場合も対応できるようになったのだが,
システムがかなり不安定になってしまったようだ.頻繁に X が落ちるし,
カーネルを巻き込んでフリーズすることもある.
おそらくは,カーネルの再構築パラメータの問題だろうと思うので,もう少し調節が必要だろう.
少なくとも /etc/X11/XF86Config
中の Load "dri"
という指定は外しておく必要があった(VMware
を2回実行すると X が落ちてしまうので外していたのだが,XFree86
の更新によって関係なくなったようだ).
VMware のドライバと APM の相性が良くないことが分かった.
具体的には vmnet.o
などのドライバが組み込まれているときに,
同時に PCMCIA のモデムカードが挿入されていると,suspend に失敗する.
どちらかが外れていさえすれば,問題なく suspend できる.
下宿からは TDK のモデムカードを利用して接続しているので,ちょっと困ったことになった.
そこで,内蔵されている Winmodem が使えないかと,
バイナリ配布されているモデムのドライバ
(linux595.zip
)
を入手して試してみた.
以前 DynaBook で試した時は,
カーネルを巻き込んで頻繁にフリーズする上に,通信速度も極端に遅かったので,
まったく使い物にならないという印象だったが,現在は通信速度も 33.6Kbps 程度出るようになり,
かなりまともになっているようだ.
これまで,mozilla の最新版については自前でパッケージ化して使っていたのだが, 北目さんがパッケージ化されていることに気が付いたので, 有難く利用させて貰うことにする.同じ場所に,Emacs21 のパッケージもあったので, これも利用させて貰うことにする.あらゆるものがパッケージだと非常に楽になりますねえ.
とりあえず,何となく大抵のものは安定して使えるようになったみたいだ.
gnuplot に日本語化パッチを適用してみる.
しかし,公式サイトからはパッチが取れなかったので,
ftp://ftp.ipc.chiba-u.ac.jp/pub/pub.yamaga/gnuplot+/3.7base/gnuplot3.7.1+1.2.0.patch.tar.gz
を引っ張ってきた.作業手順は以下の通り.
apt-get source gnuplot cd gnuplot-3.7.1p1 tar xzf ../gnuplot3.7.1+1.2.0.patch.tar.gz patch -p0 -E <gnuplot3.7+1.2.patch gzip -9c gp+/plus.dvi | uuencode plus.dvi.gz > gp+/plus.dvi.gz.uue gzip -9c gp+/plus.pdf | uuencode plus.pdf.gz > gp+/plus.pdf.gz.uue patch -p1 -E <gnuplot-ja-rules-patch debchange -i dpkg-buildpackage -rfakeroot -us -uc sudo dpkg -i ../gnuplot_3.7.1p1-6.1_i386.deb echo gnuplot hold | sudo dpkg --set-selections
APM の設定がおかしいのだと思うが, 時々,resume に失敗してそのまま凍り付いてしまう. そこで,(少し後ろ向きな発想だが)凍り付いても安全だという ReiserFS に移行しようと考えた.
まず boot loader を,これまで利用していた lilo から grub に置き換える.
sudo apt-get remove lilo sudo apt-get install grub sudo grub-install /dev/hda sudo update-grub
こうすると雛形になる /boot/grub/menu.lst
が作成されるので,中身を確認して(必要なら修正してから),
update-grub
を再度実行する.
更に,/usr/share/doc/grub/README.Debian
の指示にしたがって,
/etc/kernel-img.conf
を用意しておく.
なお,あると便利なので grub の boot floppy も作成しておくと良い.
Linux Journal
の記事を参考にして,以下の手順で作成した.
# fdformat /dev/fd0 # mkfs -t minix /dev/fd0 # mount -t minix /dev/fd0 /floppy # mkdir -p /floppy/boot/grub # cp /usr/lib/grub/i386-pc/stage* /floppy/boot/grub # grub grub> root (fd0) grub> setup (fd0) grub> quit
…とりあえず,ここまで作業したところで今回は時間切れ. 今度はいつになることやら.
kernel-2.4.7 を使い出してから,vmware の付属モジュールがコンパイルできなくなって困っていたのだが, ようやく対処法が見つかった.
いつの間にやら,特にサウンドの設定を変更したわけでもないのに, 音が鳴らないようになってしまっていることに気が付いた. どうやら,alsa-0.5.x 系列から alsa-0.9.x 系列にカーネルモジュールが更新されているのに対して, alsa-utils パッケージが古いままである(同時に libasound2 もインストールされていない)ことが原因ではないかと予想している.明日確かめてみることにしよう….
よくよく調べてみると,alsa-source-0.5 というパッケージが存在することに気が付いた. これを使ってモジュールを再構築(つまり,ダウングレード)してみると, 正常に鳴るようになった.とりあえず,これでおいとこ.
/etc/X11/Xmodmap
に設定することによって,
「半角/全角」キーを Esc キーとして使っていたのだが,
apt-get upgrade
すると,設定が無視されるようになった.
原因は,XFree86 パッケージの方針変更らしい.
Xsession のマニュアルの記述にしたがって,
/etc/X11/Xsession.d/40custom_load-xmodmap
を用意すると,以前と同様に
/etc/X11/Xmodmap
が利用できるようになる.
本当は,/etc/X11/XF86Config-4
で同等の設定ができれば良いのだろうけれど….
環境に応じて,プリンタの設定を切り替えたい,と思うようになった.
「LTModem Drivers for Linux」で手に入るパッケージには, Debian パッケージを作成するためのスクリプトも同梱されているのですが, 作成されたパッケージにデバイスファイルが含まれていて, 複数のバージョンの異なるカーネルパッケージと共存させるのが難しいので, 適当に作り直した.
mknod /dev/ttyLT0 c 62 64 chown root /dev/ttyLT0 chgrp dialout /dev/ttyLT0 chmod 660 /dev/ttyLT0
[Top] / [Debian Tips] / [ThinkPad X20] / [作業日誌 2001年, 2002年, 2003年, 2004年]