Tips for Linux Life !

もともとはインストールメモだったこのページも、進歩の早い Linux の世界、すぐに賞味期限がきれてしまいました。そこで Tips 集のページに変更することにします。これで少しは賞味期限が延びるといいなぁ…。

VAIO (PCG-505X) の HDD 換装(注意!!)

下記に記した方法を使うと、サスペンドやハイバネーションも無事正常に行われるようになったわけですが、何らかの原因によって、ハイバネーションファイルをおいているパーティション直後の領域が破壊される可能性があるかもしれません。ハイバネーション用 FAT パーティションを大きめに取っておく、などの対策が必要かも。一度は正常に動作している設定ではあるのですが・・・。

VAIO (PCG-505X) の HDD 換装

MK8113MAT(8.45mm height 8.1Gbytes HDD)

Linux とは関係ない話もありますが、505X の内蔵 HDD を交換した時のノウハウを記録しておきたいと思います。何かの参考になれば幸いです。

1. 換装前に

とりあえず BIOS を最新のものにアップデートしておきます。505X の場合、最新の BIOS はここなどにあります。BIOS アップデート後は、一旦 BIOS 設定を工場出荷時状態に戻すようにする癖をつけておくと良いかもしれません。

2. 換装作業・その直後

こちらのページなどを参考に、ハード的な換装作業を行います。正常に作業を完了した後、F2 キーを押しながらマシンを立ち上げて BIOS Setup 画面に入り、HDD 自動認識を行います。とりあえず CHS パラメータ等は全て正常に認識される(HDD 表面に貼ってあった表示と全く同じ数値に)ハズです。また、Large Disk Access 方法選択は DOS から Other へ切替えておきます。DOS のままにしておくと、今回の HDD では DOS、Linux 双方からとも正常にパーティショニングすることが出来ませんでした。

3. ハイバネーション領域確保

505X において HDD 全てに Linux を導入する場合、通常はハイバネーション領域を独立したパーティションとして確保するのが普通だと思います(詳しい話は上記換装手順のページに説明があります)。ところが、phdisk ユーティリティを利用してハイバネーション用パーティションを確保しようとすると、何故か 3Gbytes を少し越えたあたりの中途半端な位置に必ず確保されてしまいうまくありません。空きエリアを少なくして追い込もうとしても、既存のパーティションを破壊してまでその領域を利用しようとしてしまいます。これは困った。

そこで、独立パーティションとしてハイバネーション領域を確保するのではなく、Windows で利用する時と同様に、FAT ファイルシステム上にファイルとしてハイバネーション領域を作成することにしました。手順としては、MS-DOS、または Windows95/98 の起動ディスクで起動し、fdisk ユーティリティを使ってディスク上に一つだけ MS-DOS 基本区画を作成します。サイズはハイバネーションファイルが格納可能なだけ、64Mbytes のシステムであれば大体 75Mbytes もあれば十分です。また、ハイバネーションで利用するパーティションは必ずアクティブパーティションとしておかなければならないようです。その後そのパーティションをフォーマットし、前出の phdisk ユーティリティを使ってハイバネーションファイルを作成します。fn+f12 キーなどを使って正常にハイバネーション出来るかどうか確認してください。その際、一度サスペンドした後でないと正常にハイバネーション出来ないことがあるようです。

4. Linux インストール

さて、いよいよ Linux のインストールです。ディスク先頭の FAT 領域を消さないこと、その FAT 領域のみをアクティブとし残りの Linux で利用する領域はアクティブとしないこと、などを注意してください。また、ルートパーティションのサイズをあまり大きくすると、Distribution によっては lilo のインストール時に怒られるかもしれません。僕はとりあえずディスクの先頭(FAT 領域の直後)、256Mbytes(Debian なので / パーティションに存在する /var が大きいことを考慮し少し大きめにセット)をルートパーティションとしました。なお、この構成で Debian をインストールすると lilo も正常に導入されたかに思える終わり方をするのですが、実際にはこのままでは Linux を HDD から起動出来ません。したがって、boot floppy は必ず作成するようにしてください。

5. HDD からの起動

最後のステップです。今回、ブートは lilo ではなく grub を利用するようにしました。というのも lilo ではどう頑張ってもうまくブートさせられなかったからです。

まず、grub のドキュメントにある通り、grub の入ったブート FD を作成します。詳細は省きますので grub のマニュアル(info)等を参照してください。また、grub の構成ファイルの内「stage1_l」「stage2」と「menu.lst(適宜編集したもの)」を、とりあえず FAT 領域の /boot/grab ディレクトリあたりにコピーしておきます。

次に先程作成した grub 入り boot FD からブートし、コマンドラインから次のコマンドを入力します。

grub> install (hd0,0)/boot/grub/stage1_l d (hd0) ==>
(hd0,0)/boot/grub/stage2 p (hd0,0)/boot/grub/menu.lst
実際は1行。
以上で次回起動よりメニューを備えたブートシステムが使えるようになるはずです。

Enlightenment の日本語化(1)

version
enlightenment 0.15.5-1

最近の Enlightenment は国際化されてるそうですので、Font の設定さえきちんとしてしまえばなにもせずとも日本語が表示されます。具体的には、Debian の場合 /etc/alternatives/enlightenment-theme-default 内(実体はそのとき選択されている Theme のディレクトリ)の、.cfg ファイル中の Font を指定している部分をコードページごとに指定してあげるだけです。(全て変更します。)

例:/etc/alternatives/enlightenment-theme-default/textclasses.cfg 13行目(1行で書いてね)

__NORMAL "-*-helvetica-medium-r-*-*-10-*-*-*-*-*-iso8859-1,
 -misc-fixed-medium-r-normal--10-90-75-75-c-50-jisx0201.1976-0,
 -misc-fixed-medium-r-normal--10-90-75-75-c-100-jisx0208.1983-0"

Enlightenment の日本語化(2)

version
enlightenment 0.15.5-1

上記の変更を施しても、たまに表示上反映されないことがあります。そういう時は home directory 内の、.enlightenment ディレクトリ内に〜.preparsed で終わる名前のファイル(ドットファイルですので ls -a でないと見えません)を一度削除してあげると反映されることがあります。

Netscape Navigator の Java 起動で落ちる

version
navigator-smotif 4.61-8

Netscape Navigator で Java 起動時、どうしても Bus Error になって しまう場合、/etc/X11/XF86Config の Files セクション中の、FontPath の 設定から :unscaled 指定のついた行を取り除く(コメントアウトする)と 改善される場合があります。

APM が無効になってしまう

version
kernel-image-2.2.12

kernel を 2.2.12 に入れ換えたところ、起動時に何故か APM が無効になってしまい(「apm: disabled on user request」と表示される)、/etc/lilo.conf に次の一行を加える必要がありました。

append="apm=on"

IBM JDK1.1.8 for Linux での日本語入出力

version
kernel-image-2.2.12
kinput2-common 3.0-2
kinput2-canna 3.0-2

IBM 版 JDK1.1.8 for Linux は、設定次第によって awt、Light-weight component どちらにでも日本語を問題なく入出力できるようになります。スゴイ!

・~/.Xdefaults

AWTapp*international: True
AWTapp*inputMethod: kinput2

・環境変数

LANG=japanese または LANG=ja_JP。LANG=ja_JP.ujis ではうまくいかないようです。
XMODIFIERS=@im=kinput2

・JAVA_HOME/lib/font.properties.ja に実際に存在するフォントを指定。 もちろん sansserif や monospaced を別のフォントにした方がよりベター。

例:
serif.0=-adobe-helvetica-medium-r-normal-*-*-%d-*-*-*-*-iso8859-*
serif.1=-DynaLab-DFGothicP-medium-r-normal-*-*-%d-*-*-*-*-JISX0208.1983-0
serif.2=-DynaLab-DFGothicP-medium-r-normal-*-*-%d-*-*-*-*-JISX0201.1976-0
serif.3=-adobe-symbol-medium-r-normal--*-%d-*-*-p-*-adobe-fontspecific

キーボードのオートリピート設定の変更

version
util-linux-2.10-1

BIOS でもオートリピートレートやディレイの設定が出来ないマシンで、XF86Config や xset r rate で指定してみても反映されずににっちもさっちもいかなかったのですが、/sbin/kbdrate を使ったところ一発で OK デシタ。そーいうものなのか…。

パーミッション

version
なし。

UNIX 系 OS を使う以上常識なのですが、ファイル/ディレクトリのパーミッションには気をつけましょう。プログラムの中には「パーミッションがおかしくて必要なファイルが読み取れない」時に適切なエラーメッセージを出さないものがあります。先日も xfs-xtt を利用しようとした際、認識はされているのにうまくフォントが使えない(表示しようとした時点で固まる)、エラーも出ないのに、というような謎な状態に陥り、しばしはまってしまいました。


旧 Linux ページへ

1999 Copyright (C) T.Kazawa