[ホームページに戻る]
http://www.grn.janis.or.jp/~ysuzuki/vine/kernel.html
http://www.grn.janis.or.jp/~ysuzuki/taooflinux.html
http://www.grn.janis.or.jp/~ysuzuki/index.html

Vine Linux 1.0 及び 1.1 で kernel-2.2に移行する
登録日 '99.05.30
最終更新日 '99.06.25


Project-Vine 謹製 "kernel-2.2.x-kit"の導入

kernel-2.2.x-kit は、現段階では kernel-2.2 をテストするためのものです。
とはいっても、安定しまくってるから安心していいです。

kernel 2.2 の入手先 (日本のミラーサイト)

	ftp://ftp.jp.kernel.org/pub/linux/kernel/v2.2/
	入手するファイル
		linux-2.2.5.tar.gz
		patch-2.2.6.bz2
		patch-2.2.7.bz2
		patch-2.2.8.bz2
		patch-2.2.9.bz2
                ...

pcmcia-cs-3.0.10.tar.gz の入手先(ノートPCの場合のみ必要)

	ftp://hyper.stanford.edu/pub/pcmcia/

kernel2.2 に移行する際に必要な"kernel-2.2.x-kit"の入手先 ftp://ftp.jaist.ac.jp/pub/os/linux/Vine/Vine-1.0/kernel-2.2.x-kit/

	必要なファイル
		dhcpcd-1.3.16-0.i386.rpm			
		initscripts-3.78-2.4vl1.i386.rpm
		ipchains-1.3.8-0.i386.rpm
		modutils-2.1.121-0.i386.rpm
		mount-2.9-0.i386.rpm			
		net-tools-1.50-0.i386.rpm
		procinfo-15-0.i386.rpm
		samba-2.0.3-0.i386.rpm
		util-linux-2.9-0vl.i386.rpm

参考:元になっている redhat パッケージの所在(使用しない)
http://www2.portal.redhat.com/support/docs/rhl/kernel-2.2/kernel2.2-upgrade-3.html

または、VineLinux1.1CR を購入すると、VinePlus CD-ROM が付いて来ます。
/mnt/cdrom/kernel-2.2.x-kit/RPMS/i386/
に存在します。ただし、同時に使用してはならないファイルも含まれているので 注意してください。

必要なもの。
initscripts-3.78-2.4vl1.i386.rpm
util-linux-2.9-0vl.i386.rpm

不必要(というか使用してはならない)
initscripts-3.78-2.4.i386.rpm
util-linux-2.9-0.i386.rpm


導入手順

入手したupdateファイルの検査を行う。

# rpm -K --nopgp filename.rpm

update 前に必要なファイルを退避させる。
# cp /etc/sysconfig/i18n ~/ 
# cp /etc/sysconfig/i18n.csh ~/ 
# cp /etc/rc.d/rc.local ~/
(i18n 関係を退避するのを忘れるとメニューで日本語が表示されなくなったり、アプリケーションが起動しなくなる。)

update を行う。

	# rpm -Uvh dhcpcd-1.3.16-0.i386.rpm				
	# rpm -Uvh initscripts-3.78-2.4vl1.i386.rpm
	# rpm -Uvh ipchains-1.3.8-0.i386.rpm
	# rpm -Uvh modutils-2.1.121-0.i386.rpm		
	# rpm -Uvh mount-2.9-0.i386.rpm				
	# rpm -Uvh net-tools-1.50-0.i386.rpm
	# rpm -Uvh procinfo-15-0.i386.rpm
	# rpm -Uvh samba-2.0.3-0.i386.rpm
	# rpm -Uvh util-linux-2.9-0vl.i386.rpm

退避しておいたファイルの書き戻し

# cp ~/i18n /etc/sysconfig
# cp ~/i18n.csh /etc/sysconfig
# cp ~/rc.local /etc/rc.d/

kernel-2.2.9 の導入

# cd /usr/src
# rm linux
# tar zxvf linux-2.2.5.tar.gz
# mv linux linux-2.2
# ln -s linux-2.2 linux

# cd /usr/src/linux
# bzip2 -d -c patch-2.2.6.bz2 | patch -p1
# bzip2 -d -c patch-2.2.7.bz2 | patch -p1
# bzip2 -d -c patch-2.2.8.bz2 | patch -p1
# bzip2 -d -c patch-2.2.9.bz2 | patch -p1

pcmcia で APA-1460A を自動で認識させるには、2.2.9 が必要。
2.2.6 から 2.2.8 までは、/etc/pcmcia/config で irq を
9,10,11,12 のいずれかを使用するように設定する必要がある。
	device "aha152x_cs"
	class "scsi" module "aha152x_cs" opts "irq_list=9,10,11,12"

これから、kernel の再構築を行います。
もし vfatjp-0.8.3a.tar.bz2 があれば、入れておくと良いでしょう。

入手先は、'99.06.25現在で
http://www.jaist.ac.jp/~amatsus/linux/src/vfatjp-0.8.3a.tar.bz2 です。

VFAT filesystem 上の日本語ファイル名が、文字化けせずに表示されるようになります。
これは、2.2.3用ですが、2.2.9 , 2.2.10 でもきちんと動作します。
(FileRunnerでも日本語表示ができるのにはびっくり)

# cd /usr/src/linux
# bzip2 -dc ???/vfatjp-0.8.3a.tar.bz2 | tar xf -
???はパッチのおいてあるディレクトリを指定します.展開すると VFAT-jpというディレクトリが作られます。
# patch -p1 < VFAT-jp/2.2.3.vfatjp.patch
# patch -p1 < VFAT-jp/common.vfatjp.patch

# cd /usr/src/linux
( # make mrproper )  
# make xconfig
# make dep ; make clean
# make bzlilo

/etc/lilo.conf の書き換え

# vedit /etc/lilo.conf		
	image=/vmlinuz		←ここのみ
		label=linux
		root=/dev/hda3
		read-only

	image=/boot/vmlinuz-2.0.36-3vl3		←以下、2.0.36 の記述は削除可
		...
# /sbin/lilo
として、lilo の更新をお忘れなく...

# shutdown -r now
再起動して、kernel-2.2.9 環境下で module を make する事。

# cd /usr/src/linux
# make modules ; make modules_install

APM で電源断の設定。
/etc/rc.d/init.d/halt にて
	command="halt -p"
と書き換える。
kernel-2.0.36 とは異なり、append="apm=on" の記述は必要なし。

PPxP 関係を入れ直す['99.06.08更新]
kernel-2.2 に上げた時に、PPxP が動かなくなっているので userlink を rebuild する必要がある、というのは良く知られている事です。思考錯誤した結果、以下の様に行う事が判明しました。

公式コンダラ鯖から以下の2つのファイルを入手する。

userlink-0.98a-9.2.src.rpm
ppxp-0.99030108-3.src.rpm

以下の様にします。

# rpm -e ppxp
# rpm -e userlink
# cd /usr/src/redhat/RPMS/i386
# rm ./userlink-0.98a-9.i386.rpm

# rpm --rebuild userlink-0.98a-9.2.src.rpm
# rpm -Uvh --force /usr/src/redhat/RPMS/i386/userlink-0.98a-9.2.i386.rpm

# rpm --rebuild ppxp-0.99030108-3.src.rpm
# cd /usr/src/redhat/RPMS/i386/
# ls
# rpm -Uvh --force ppxp-0.99030108-3.i386.rpm
# rpm -Uvh --force tkppxp-0.99030108-3.i386.rpm
# rpm -Uvh --force xppxp-0.99030108-3.i386.rpm

# shutdown -r now
で完璧です。

kernel-2.2.9 の起動を確認する。
うまくいっていれば、以下のkernel-2.0.36 関係の箇所は削除して構わない。
# rm /boot/module-info@
# rm /boot/module-info-2.0.36-3vl3
# rm /boot/vmlinuz-2.0.36-3vl3
さて、kernel-2.2 を堪能しましょう。体感速度が上がってマシンが速くなったような感じがします。
どこぞの OS みたいに version が上がる度に 重くなっていくのとは ちょっと違うぞ。


自分で pcmcia-cs-3.0.x.tar.gz を入れ換えた時の注意事項['99.06.17 追加]

pcmcia-cs-3.0.10.tar.gz の導入とコンパイル

# cd /usr/src
# tar zxvf pcmcia-cs-3.0.10.tar.gz
# cd ./pcmcia-cs-3.0.10
# make
# make clean
# make config
# make all
# make install
さて上記では、pcmcia-cs を入れ換えています。この場合、次の様な症状が発生することがあります。
(私の場合、pcnet-cs ドライバ)
VineLinux1.0(kernel-2.0.36)の時には自動認識していた LAN-Card が使えなくなっている。
#lsmod
と入力すると現在 動いている modules の一覧が表示されます。その中で、pcnet_cs の項目が、(unused)となっている。これじゃだめです。
#linuxconf
を起動して、そこで "Basic host information" - "Adapter1" を設定して "Accept".
左下の"Quit"を押すと表示される画面で、"Active the changes" - "Quit"
ここでもう一度、#lsmod してみると
pcnet_cs の Used の所が 1 になって動くようになる、ってな具合です。
こんなときには、解決方法があります。
(/usr/src/pcmcia-cs-3.0.x/doc/SUPPORTED.CARDS に記載されてないカードを使ってるのに、なんで動かないんだあとか言わない様に。)

まず、こんな事になる原因なんですが、それはユーザが勝手にpcmcia-csを入れ換えたためです。(オイオイ)
Vine も含めた redhat系で、PCMCIA の LANカードの設定は、
/etc/sysconfig/network-scripts/ifcfg-eth0 で設定するようになっています。
普通はここを書き換えて、いろいろ試すのですが、自分で pcmcia-cs を入れ換えた場合は、
このファイルをいくら書き換えても無駄です。

/etc/sysconfig/network-scripts/ifcfg-eth0 を見ながら、その内容を
/etc/pcmcia/network.opts に書き込むのです!

/etc/pcmcia/network.opts はファイルのパーミッションが、read-only になっているので、
書き換える前に、

#chmod 644 /etc/pcmcia/network.opts
にして、書き込んだら、
#chmod 444 /etc/pcmcia/network.opts
に戻しておきます。
これで次回の起動時から、自動で pcnet-cs が動いてくれます。
(今までは、起動する度に linuxconf で設定していたんです。あー、解決して良かった。)