- dual boot (use NT loader without lilo and grub)
- using networkboot (copy your HDD image to NFS server)
- for other users (to use NFS-BOOT for the other X24 : specificated MAC)
- remove LinuxPartition from your X24(sadly helps you finished using Linux)
- create nosrc.rpm (packaging your config)
- convert DOS to UNIX (and UNIX to DOS)
- kernel comile (diet is not bad)
- resize partition (without re-install)
- HDD換装
- if you want to use X24 as router
- if you want to use X24 as dialup-router
- if you want to use X24 as fileserver (or allin one network serving linux-box)
- windowsのインストーラが、MBRを壊してくれた場合(XPとか)
- GoBack3(Norton SystemWorks2002) 使用上の注意
X24は、MBR(PBR は Partition Boot Recordの略、MBRは Master Boot Recordの略です)に
disk2diskのリカバリプログラムが存在しますので MBRに書き込むブートローダ(liloや grub)は使い勝手がよくありません。
ブートローダが存在しない場合、BIOSはアクティブに設定されたパーティション(一台のHDDにひとつ)からブートするしくみになっています。
MicrosoftのOSはわがままにできているようで「自分がアクティブパーティションからブートされる」ことしか考慮していません。
わがままに付き合いましょう。笑
具体的には Windows2000のブートプログラム(NTローダ)のメニューに linuxを加えることで対処しましょう。
Linux をインストールしたパーティションにインストールされた LILO をファイル化します。/etc/lilo.conf を適切に編集したあと
# lilo
# pushd ~/
# dd if=/dev/hda6 of=tl7w.pbr bs=512 count=1
# popd
を実行します。
できた Linux ブート用のPBRファイル(/root/tl7w.pbr)を Windows へ持っていく必要があります。
Windows から Linux のインストールされた ext2 ファイルシステムを操作するツールがあります。
explore2fs(Windows2000)を使って、ext2 上にある tl7w.pbr を Windows2000の C:\にコピーするものです。
ほかに、linuxから Windows2000の D:\ドライブをマウントして、そこにコピー、次いで Windowsを起動して C:\に移動させる方法もあります。
mtoolsを使ってフロッピーに書く方法もあります。
なんらかの方法で LILO のブート用ファイルを Windows 環境へ持って来たら、boot.ini を編集し、NTローダーで Linux をブートできるようにします。
次に私の boot.ini を参考までに載せておきます。追加したのは c:\tl7w.pbr="TurboLinux 7 Workstation" です。
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINNT
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINNT="Microsoft Windows 2000 Professional" /fastdetect
c:\tl7w.pbr="TurboLinux 7 Workstation"
インストールCD-ROMで、Linux を起動した場合(rescue モード)は若干注意が必要です。
CD-ROM の kernel ではサポートされている(組み込まれている)ドライバが少ない(orHDD内のものとバージョンが合わない)ため使用できないデバイスが結構あるようです。
USBの DVD/CD-RWドライブは利用できるのですが、USB のハードディスク(CENTURY Zipang)は利用できませんでした。(インストールしている TL7Wからは使えるんだけどなぁ)
X24に搭載されている Intel(R) PRO/100 はネットワークブートできるようになっています。
X24以外に、母艦となる Linuxサーバがある場合、OSそのものは Linuxサーバに置き、X24を「ディスクレス ワークステーション」として使うことができます。
「X24のハードディスクを(スワップ以外は)使わない」ので、X24はすごく静かに動作しますし、Windows2000を再インストールしても平気です。
何より「バックアップするファイルはすべてファイルサーバにある」のが楽ですね。
■母艦の設定
サーバで次の設定をしておきます。
- DHCPサーバの設定をしておく。(X24のMACアドレスを調べておき、IPアドレスを与えるようにする)
- BOOTPサーバの設定をしておく。(X24からの BOOTP要求に応答するようにする)
- TFTPサーバの設定をしておく。(X24に TL7Wのブートイメージ=kernelをダウンロード可能にする)
- NFSサーバの設定をしておく。(X24が TL7Wブートイメージでブートしたあと、/をnfsrootにマウントさせる。/homeをマウントさせる。)
■X24の設定
- X24で「ループバックインストール」して C:\linux.img と C:\lin-swap.imgを作る。
- C:\linux.imgを母艦にコピーし、loopマウントして /nfsroot/(MACアドレス)/ にコピーしておく。
- X24では C:\linux.img は削除して構いません。C:\lin-swap.img は、メモリを増設すればたぶん不要ですが増設していない場合、残しましょう。
X24のブート時、F12を押して「ネットワークブート」を選べば TL7Wが、普通にブートすれば Windows2000が使えます。
スワップファイルを使うときは、母艦で /nfsroot/(MACアドレス)/etc/fstab に swapファイルの設定を追記してください。
X24が複数台あるのなら、それぞれ MACアドレスは違うので、母艦で /nfsroot/(MACアドレス)をコピーすれば、同様に使えます。
X24でなくとも、同様の手順でディスクレスワークステーションを使えるでしょう。
DynabookSS3020でも同様の手順で使えています。
X24にインストールした TL7Wをきれいさっぱり「アンインストール」する方法です。
Windows2000に全領域を戻すため、Windows2000は再インストールになります。
ループバックインストールした場合は、C:\(linux.img,lin-swap.img)を削除すれば終わりです。
ここでは「パーティションを切ってインストールした」linuxを削除する方法を紹介します。
※本コンテンツでは「MBR」は「いじらない」方法しか紹介していませんので、MBRの戻し方は紹介しません。
- ramfloppyで USBディスケットドライブからブートします。
- fdisk を起動します。
- /dev/hda2 以外を、dコマンドで削除します。
/dev/hda1を確保する必要はありません。
- wで書込み、fdiskを終了します。
- shutdown -r nowします。
- ブート時 F11を押して「IBM recovery」します。
このときに /dev/hda1が fat32で作成・フォーマットされ、windows2000が再インストールされます。
TL7Wのカーネルソースパッケージをインストールしておきます。
TL7Wのカーネルソースの /usr/src/linux/Makefile 内の install セクションのコメントを外し、有効にしておきます。
(これやらないと make bzImage で /vmlinuz になっちゃいます。/boot/vmlinuz-(version)にしたい、ということです。)
インストールしているカーネルバイナリのオプションを、ダイエットの出発点にしましょう。
# cd /usr/src/linux
# vi Makefile (installセクションのコメント外し)
# make mrproper
# cp config/(simple) ../
# make menuconfig (要らない機能をはずす)
カーネルコンパイル作業でミスった場合に、ブートできるように「インストールのあとに」の作業をやっておいてください。
さて、コンパイルします。作業は次の 5つ。特にひとつめを抜かさないように注意。笑
- 「うまくいきますように」とお祈りする。
- kernelをコンパイル。40分くらいです。
# make dep; make clean; make bzImage
できあがった kernelの存在を確認しておきましょう。(時刻を見ればわかります)
# ls /boot/kernel*
- moduleをコンパイル・インストール。30分くらいです。
# make modules; make modules_install
できあがった moduleの存在を確認しておきましょう。(時刻を見ればわかります)
# ls /lib/modules/2.4.18-3/kernel/
- PCMCIAをコンパイル・インストール。20分くらいです。
# cd pcmcia-cs-3.0.0
# ./Config
# make install
できあがった pcmcia-module の存在を確認しておきましょう。(時刻を見ればわかります)
# ls /lib/modules/2.4.18-3/pcmcia/
- 新カーネルでブート
# lilo -v
# sync; sync; sync
ループバックインストールしている場合、ブートフロッピーに新kernelをコピーします。(別フロッピーがいいでしょう)
# mkbootdisk --device /dev/sda 2.4.18-3 (フロッピーを挿してから)
リブートします。
# shutdown -r now
kernelのダイエット(自分が使わない機能を削る)は、人間と同じくきっと効果はあるぞ。たぶん。
パーティションの中身を壊さずにサイズを調整する fipsとか partdというツールがあるんですが、私は使いません。
ここでは「バックアップ運用」手順を適用してあることを前提に、fdiskでパーティションの切りなおしをする方法を紹介します。
パーティション設計を甘く考えて「こっちがいっぱいになってしまったけど、あっちは無駄に空いている」状態になったときや、
「/bootと/だけでインストールしたけど、/を分割して /usrと /varを作りたくなった」といったときの方法です。
「TL7Wをインストールした直後状態に戻したい(そのときのバックアップはとってある)」ときにも使えます。
注意点・キモを紹介します。
- ramfloppyでブートした環境で操作します。
- fdisk でパーティションを切りなおします。
- 切りなおしたパーティションは mke2fs/mke3fsでフォーマットします。
- tar xvf で、バックアップファイルを展開します。
- /を変更した場合は、/root/作業ログ をあとで記述しておきましょう。
- /を変更した場合は、rpm --force dev しておいたほうがいいでしょう。
- /varを変更した場合は、/var/logをあとで整理しておきましょう。
X24のハードディスクは 30GBもの容量があり、静かなドライブなので、しばらくは容量不足に悩まされることはないと思います。
(DynabookSS3020は 6.4GBしかなく「不満」で、30GBのドライブ(やっぱりIBM TravelStar)に換装しました。)
何年か使っていると「たった 30GB ?!」という時代がくるかもしれませんね。
換装するときの注意点・キモを紹介します。(まだやったことないですもん。笑)
- 換装するときは同じ IBM TravelStarシリーズにしておくのが無難。笑
- disk2diskのパーティション /dev/hda2 を 1.2GB、ディスク末尾に確保する。
- MBR(IBM Recovery Program)を吸い出し(dd if=/dev/hda of=mbr.img bs=512 count=1)ておいて、書き込む(dd if=mbr.img of=/dev/hda bs=512 count=1)。
- リカバリプログラムは、/dev/hda1が FAT32(type=c)であることを前提にしていますが(リカバリプログラムは Win98コマンドプロンプトで実行される)、
FAT32 の仕様では 32GBまでしかフォーマットできません。
30GBよりも大きなディスクに換装するので、リカバリプログラムが /dev/hda1として確保できる容量が 32GB以内になるよう、
先に linux用パーティションや 拡張パーティション(type=5)を確保して、制限しておきましょう。
とか、言っているうちに、換装しちゃいました(笑)。
TravelStarの40GBです。まだ、IBMリカバリCD-ROMを入手していないので、D2Dは使えてませんが、TL7Wでの動作は問題ありませんでした。
なお、期待していた速度(hdparm -t /dev/hda)ですが、やっぱり 20MB/sec でした(笑)。
2枚目のetherだけ。あとは天保山へ。
もしもブートセクタを書き換えてしまったために NT Loader 自体が起動しなくなったり、
NT Loader は起動するものの Windows2000 が正常に起動しない場合には、
「修復セットアップ」を行えば元通りになるかも知れません。
ここで回復コンソールを選べば FIXMBR コマンドが使えます。
(回復コンソールのインストールは事前にやっておく作業を参照)
linuxは起動できる場合には、MBRではなく、パーテーションブートレコード(PBR)が損傷したんでしょう。
この場合には FIXBOOT コマンドを使います。
なお、Windows95系とのデュアルブートの HowToで良く出てくる fdisk.exe /MBR は Windows2000では適用できません。
Symantec Norton SystemWorks2002に付属の
GoBack 3 Personal Editionは、TurboLinux7Workstationのループバックインストールとの
同時利用はできません。
GoBack3をインストールすると Windowsのパーティションが type=c (Windows FAT32 LBA)から type=44 (unknown) に変化してしまいます(怒)。
結果として、ループバックインストールしようとしたときに、インストールに利用すべき Windowsパーティションが見つからないため
TL7W インストーラの「マウス選択」から先に進めなくなります(何度も「マウス選択」が出てきてループします)。
ループバックインストールしたあと、GoBack3をインストールすると、linux.img が入っているはずの Windows パーティションが見つからないためブートできなくなります。
GoBack3 をアンインストールすると、2度目の再起動のときに type=cに戻ってくれます(やれやれ)。
けっこうビビりましたよ。