Last Updated at $Date: 2009-03-02 13:51:33 $.
ひょんなことから,T42p を個人的に利用できることになった. 最初に BIOS アップデートを行い,続いて, Debian Installer RC3 のイメージを利用してインストールした.拍子抜けするほど簡単に終了.
防火壁外から防火壁内のネットワークを透過的に利用する必要に迫られたので, 設定した.
gpdf などのツールバーの文字を消すには,gnome-control-center を起動して, 「メニューとツールバー」を選択し,「ツールバーのスタイル」を「アイコンのみ」にすれば良い.
xfce4-terminal の設定変更を行うには,~/.config/Terminal/terminalrc
を編集する.個人的には,初期ウインドウサイズの変更と,ツールバーを表示させておくために,以下のように編集した.
MiscDefaultGeometry=80x40 MiscToolbarsDefault=TRUE
Etch に更新したついでに,X11 の描画を高速化するべく,ATI の純正ドライバのインストールを試みる.
# apt-get install fglrx-driver fglrx-control fglrx-kernel-src mesa-utils
ただし,# module-assistant prepare # module-assistant a-i fglrx # modprobe fglrx
drm
などの kernel module が組み込まれていると入らないので,
/etc/modules
に fglrx
を追加して再起動するのが簡単.
/etc/X11/xorg.conf
に以下のような記述を加える.
Section "Device" Identifier "Generic Video Card" Driver "fglrx" EndSection Section "Extensions" Option "Composite" "False" EndSection
% fglrxinfo display: :0.0 screen: 0 OpenGL vendor string: ATI Technologies Inc. OpenGL renderer string: MOBILITY FIREGL T2 Pentium 4 (SSE2) (FireGL) (GNU_ICD) OpenGL version string: 2.0.6011 (8.28.8) % glxinfo | grep direct direct rendering: Yes
ついでに,touchpad の設定も有効化しておいた.
ふと気付くと,vpnc が,以下のようなエラーで接続できなくなっていた.
vpnc-connect: binding to 0.0.0.0:500: Address already in use
/etc/vpnc/default.conf
に,以下の指定(random に port を選択)を追加して回避.
Local port 0
パスワード情報を plaint text のファイルに保存しておくのはまずいなあと思ったので,
EasyPG を使うように設定した.
apt-get install easypg
で簡単簡単…というようにはいかずに難儀した.
最終的に判明した手順は,以下の通り.
apt-get install easypg gpg2 gpg-agent pinentry-gtk2
apt-get install easypg gnupg2 gnupg-agent pinentry-gtk2
use-agent
という指定を ~/.gnupg/gpg.conf
に加える.
(setq epg-gpg-program "gpg2")
という設定を ~/.emacs
に加える.
簡単じゃないかって? いや,ここに達するまでに2時間苦労したんですよ….
lenny に更新.
持ち歩くことを想定しているので,電源管理にはちょっと気を使う.
バッテリーによる駆動時間を伸ばすには,システムの負荷に応じて CPU の動作周波数を調節する
CPUFreq が有効である.
2.4 系の kernel には CPUFreq の機能は組み込まれておらず,
パッチを適用する必要があるのに対して,
2.6 系の kernel には CPUFreq の機能が最初から組み込まれている.
ただし,CPUFreq の機能を利用するためには speedstep-centrino
モジュールを組み込まなければならないが,このモジュールは ACPI が必須のようだ.
当初,APM で電源管理を行いながら CPUFreq を使おうとしたが, modprobe speedstep-centrino とコマンドを実行しても, No such device というエラーメッセージで拒否された.
そこで,kernel として linux-2.6.11 を利用し,ACPI を通じて電源管理を行うことにした.
最初に linux-2.6.11 と,/dev/
配下を管理するための udevd を導入しておく.
# apt-get install kernel-image-2.6.11-1-686 udev
次に,ACPI を設定する.
/boot/grub/menu.list
を編集して,
kernel の起動時パラメータ(kopt
の行)に以下を追加.
pci=noacpi acpi_sleep=s3_bios追加したら再起動.
# echo 3 >/proc/acpi/sleep
# apt-get install acpid
/etc/acpi/sleepbtn.sh
を呼び出すように,
設定ファイル /etc/acpi/events/sleepbtn
を用意する.
/etc/acpi/events/sleepbtn
でのイベントの指定を下記のように書き換える必要があった.(2009年2月16日)
event=ibm/hotkey HKEY 00000080 00001004
# apt-get install acpi wmbattery従来は wmacpi を使っていたのだが,wmacpi-2.1 がうまく動かないので, 代わりに wmbattery を使うようにした.
次に,CPUFreq を設定する.
/etc/modules
に,以下の3つのモジュールを追加する.
再起動するか,speedstep-centrino cpufreq_powersave cpufreq_userspace
modprobe
コマンドで手動で組み込む.
# cat /sys/devices/system/kernel/cpu/cpu0/cpufreq/cpuinfo_cur_freq
# apt-get install cpudyn
/etc/default/cpudyn
に次の2行を追加して,ハードディスクのアクセスを停止するようにする.
TIMEOUT=20 DISKS=/dev/hda
以前,X31 用に無線 LAN を設定したときは, madwifi のソースを CVS 経由で取得してコンパイルした. この方法では,パッケージ管理下にないモジュールを利用することになるため,少し余計な注意が必要になって面倒だった.
最近,madwifi-source というパッケージが利用できるようになったらしいので,それを使ってみることにする.
/etc/apt/sources.list
に以下の指定を追加.
deb ftp://debian.marlow.dk/ sid madwifi deb-src ftp://debian.marlow.dk/ sid madwifi
# apt-get update
# apt-get install madwifi-source
% sh build-modules madwifi
# dpkg -i madwifi-module-*.deb
XF86Config-4
の Files セクションに defoma 用の FontPath が正しく挿入されるように
defoma-dexconf モジュールをインストールして,
XF86Config-4
を再生成するように以下のコマンドを実行.
# dexconf
/etc/X11/Xmodmap
と /etc/X11/Xsession.d/40custom_load-xmodmap
をインストールして,「半角/全角」キーを Escape キーとして使えるように設定.
/etc/X11/Xsession.d/80custom_load-ximrc
と /etc/X11/Xim
を用意し,
kinput2 が起動されるように設定.
とりあえず,必要なバイナリパッケージをまとめてインストールする.
# apt-get install ptex-bin jbibtex-bin mendexk xdvik-ja dvipsk-ja dvi2ps dvipdfmx
それから,必要になりそうなクラスファイル,仮想フォントデータをインストールしておく.
# apt-get install okumura-clsfiles vfdata-morisawa5 dvi2ps-fontdata-ja dvi2ps-fontdata-n2a dvips-fontdata-n2bk
/etc/texmf/texmf.d/50dvipdfmx.cnf
を編集して,以下の指定を加える.
CMAPINPUTS = .;/usr/share/fonts/cmap/adobe-japan1//;/usr/share/fonts/cmap/adobe-japan2//:/usr/share/fonts/cmap/gs-cjk-resource//
/etc/texmf/dvipdfm/dvipdfmx.cfg
を編集して,
以下の行を追加する.
f jis-cjk.map
/etc/texmf/dvipdfm/cid-x.map
に以下の指定を追加する.
ryumin-l H Ryumin-Light gtbbb-m H GothicBBB-Medium futomin-b H FutoMinA101-Bold futogo-b H FutoGoB101-Bold ryumin-l-v V Jun101-Light gtbbb-m-v V GothicBBB-Medium futomin-b-v V FutoMinA101-Bold futogo-b-v V FutoGoB101-Bold
ここまでで,日本語フォントを埋め込まない PDF が作れるようになっているはず.
しかし,海外に論文を投稿する場合などは,逆に日本語フォントを埋め込まないといけない場合がある.
そのような場合は,以下のように PS フォント名の代わりにフォントファイル名を指定した
cid-x.map
をカレントディレクトリに用意する.
rml H sazanami-mincho.ttf gbm H sazanami-gothic.ttf rmlv V sazanami-mincho.ttf gbmv V sazanami-gothic.ttf
TrueType フォントは,カレントディレクトリか kpathsea ライブラリに見つかる場所に置く必要がある. kpathsea ライブラリが探す場所は,以下のコマンドで調べられる.
% kpsewhich -progname=dvipdfm -show-path="truetype fonts"
参照したいフォントが,このパスに含まれていなかった場合は,以下のように環境変数を設定すれば良い.
% export TTFONTS=.:/usr/share/fonts/truetype//:
この設定は,/usr/share/fonts/truetype
以下の全てのサブディレクトリを検索対象に加えることを意味する.
ヒラギノフォントを利用する場合は,以下のような指定になる.
rml H HiraMinPro-W3.otf gbm H HiraKakuStd-W5.otf rmlv V HiraMinPro-W3.otf gbmv V HiraKakuStd-W5.otf
ただし,Debian(sarge) に付属している kpathsea ライブラリは,OpenType フォントに対応していない. 正確には,OpenType フォントに対応した検索ルーチンが存在しない. そのため,dvipdfmx は,OpenType フォントを「その他のバイナリファイル」として検索する. その検索対象となるディレクトリは,以下のコマンドで調べられる.
% kpsewhich -progname=dvipdfm -show-path="other binary files"
例えば,~/.fonts/
以下にインストールしているファイルを利用したい場合は,
以下のように環境変数を設定すれば良い.
% export DVIPDFMINPUTS=.:${HOME}/.fonts:
これで大体使えるようになっているが,/etc/texmf/dvipsj/config.ps
に以下の指定を加えて,標準出力に出力されるように調整しておく.
/usr/sbin/morisawa-config add% o |lpr f
2.6 系の kernel では,2.4 系とは異なり, ide-scsi モジュールを利用しないように変更された.
/usr/share/doc/cdrecord/README.ATAPI.setup
の記述にしたがって,cdrecord を設定する.
# cdrecord dev=ATA: -scanbus
/etc/default/cdrecord
に,以下の指定を書き込む.
CDR_DEVICE=cdrw cdrw=ATA:1,0,0 12 30m
/usr/share/doc/xcdroast/README.atapi
の記述にしたがって,xcdroast を設定する.
デバイスの自動検索は動作しないので,
手動で SCSI ID (= ATA:1,0,0
) を指定する.
という設定で動くはず.ただし,どうも CD-R のメディアを選ぶようだ. 640MB のメディアでは read/write error が頻発してまともに動かず, 700MB のメディアでは正しく書き込めた.
VMware Workstation 4 までは,VMware 用にカスタマイズされた samba が付属していて, その設定ファイルに日本語設定を加えれば,日本語ファイル名も扱えた. VMware Workstation 5 になって,samba を経由せず,もっと簡単に使えるファイル共有が実装された…のだが, なんと日本語ファイル名が通らない. したがって,独自に samba をインストールしてやる必要がある.
/etc/samba/smb.conf
を設定.
dos charset = CP932 unix charset = EUCJP-MS display charset = EUCJP-MS
bind interfaces only = yes interfaces = lo vmnet1
writable = yes
# update-rc.d -f samba remove # update-rc.d samba defaults 95
まず,通常通りに以下の手順を実行して,インストールを試みる.
# tar xzf VMware-workstation-4.5.2-8848.tar.gz # cd vmware-distrib # perl vmware-install.pl
すると,vmnet モジュールのコンパイル中にエラーが発生して,インストールに失敗する.
掲示板での報告に従い,vmnet モジュールの source を更新した後で,
vmware-config.pl
を再実行すれば良い.
% wget http://ftp.cvut.cz/vmware/vmware-any-any-update90.tar.gz % tar xzf vmware-any-any-update90.tar.gz # cp vmware-any-any-update90/vmnet.tar /usr/local/vmware/lib/vmware/modules/source/ # /usr/local/vmware/bin/vmware-config.pl
VMware の仮想マシンから外部への通信は,Linux カーネルに組み込まれている
NAT 機能を用いて転送する.
このため,vmware-config.pl
の実行時には,以下のように質問に答える.
その上で,/etc/vmware/vmnet1/dhcpd/dhcpd.conf
に,
以下の指定を追加しておく.
option routers 192.168.xxx.1;
加えて,VMware 付属の samba が日本語ファイル名を正しく処理できるように,
/etc/vmware/vmnet1/smb/smb.conf
に以下の指定を加えておく.
code page directory = /usr/local/vmware/lib/vmware/smb/codepages client code page = 932 coding system = EUC
これで,日本語 EUC のファイル名が正しく扱えるはずである.
VMware の仮想マシン上で稼働している OS から DNS をひけるようにするため, dnsmasq をインストールしておく.
# apt-get install dnsmasq
以前苦労したのが嘘のように簡単.
# apt-get install alsa-base # alsaconf % alsamixer
画面切り替え用キー(Fn+F7 キー)や音量調節キーなどが押されたことを検出するため, 以下のように設定する.
module-assistant
コマンドを利用して,thinkpad-module-2.6.11 パッケージを導入.
/etc/modules
に,以下の2つのモジュールを追加する.
先に udevd をインストールしてあれば,modprobe nvram とモジュールを組み込むと,自動的にthinkpad nvram
/dev/nvram
が作成される.
/sbin/MAKEDEV nvram などの操作は必要ない.
# apt-get install tpb
# adduser username thinkpad # adduser username nvram
ibm_acpi
モジュールを使うと,ウルトラベイの着脱もできるらしい.
/etc/
X11/
XF86Config-4
for XFree86-4.3.0
Xim
Xmodmap
Xsession.d/
apt/
apt.conf.d/
sources.list
default/cpudyn
modules
[Top] / [Debian Tips] / [ThinkPad T42p,X31,X20,s30,560 / Portage SS3330]