CentOSでASUSマザーボード P5Q SEでAtheros L1E LANアダプタを認識させる †
CentOS 5.4(x86_64)をデスクトップのみの標準インストールでインストールして、システムを更新していない状態で、AtherosのL1E LANアダプタを認識させるために、カーネルを再構築して、LANアダプタのドライバソフトをコンパイル、インストールする。カーネルソースパッケージとLANアダプタのドライバソフトはUSBメモリ等でマシンにコピーし、それ以外のパッケージはDVDからインストールする。なお、カーネルの再構築はもしかしたら不要かもしれないし、以下では余計な作業があるかもしれない。
1. gccのインストール †
# rpm -ivh gcc-4.1.2-46.el5.x86_64.rpm glibc-devel-2.5-42.x86_64.rpm libgomp-4.4.0-6.el5.x86_64.rpm glibc-headers-2.5-42.x86_64.rpm kernel-headers-2.6.18-164.el5.x86_64.rpm
2. カーネルソースパッケージのコピー、インストール †
カーネルソースパッケージは別マシンでwgetでダウンロードする。
$ wget ftp://ftp.riken.jp/Linux/centos/5.4/os/SRPMS/kernel-2.6.18-164.el5.src.rpm
CentOSマシンにUSBメモリ等でコピーして、
# mkdir /usr/src/redhat
# rpm -ivh kernel-2.6.18-164.el5.src.rpm
3. rpm-buildのインストール †
# rpm -ivh rpm-build-4.4.2.3-18.el5.x86_64.rpm elfutils-0.137-3.el5.x86_64.rpm elfutils-libs-0.137-3.el5.x86_64.rpm
4. redhat-rpm-configのインストール †
# rpm -ivh redhat-rpm-config-8.0.45-32.el5.centos.noarch.rpm
5. unifdefのインストール †
# rpm -ivh unifdef-1.171-5.fc6.x86_64.rpm
6. ncurses-develのインストール †
# rpm -ivh ncurses-devel-5.5-24.20060715.x86_64.rpm
7. カーネルソースパッケージのrpmbuild -bpの実行 †
# cd /usr/src/redhat/SPECS
# rpmbuild -bp --target=x86_64 kernel-2.6.spec
8. シンボリックリンクの作成 †
# cd /usr/src
# ln -s /usr/src/redhat/BUILD/kernel-2.6.18i/linux-2.6.18.x86_64 linux
9. カーネルのコンパイルとインストール †
# cd /usr/src/redhat/BUILD/kernel-2.6.18/linux-2.6.18.x86_64/
カーネルにバージョン番号を付ける。
# cp Makefile Makefile.org
# vi Makefile
EXTRAVERSION = -prep
を
EXTRAVERSION = -091115
に修正。091115は年月日でオリジナルカーネルと区別できるようにしている。
# make mrproper
# cp /boot/config-2.6.18-164.el5 .config
# make menuconfig
何も変更せず、configurationをsaveしてexit
# make bzImage && make modules
# make modules_install
# /sbin/installkernel 2.6.18-091115 arch/x86_64/boot/bzImage System.map
追記(Nov 28, 2009)。書き忘れで、必要。
初期RAMディスクの作成
# mkinitrd -f /boot/initrd-2.6.18-091115.img 2.6.18-091115
システムを再起動して、grubメニューでインストールしたカーネルを選択して起動。新しいカーネルで起動しておかないと、次項10のインストールがうまくいかなかった。
10. Atheros L1E LANドライバの展開、コンパイル、インストール †
ASUSのサポートページより、Atheros L1E LANドライバをダウンロードして、USBメモリ等でシステムにコピーする。
$ unzip LinuxDrivers.zip
$ cd LinuxDrivers/Lan
$ tar jxfv l1e-l2e-linux-v1.0.0.4.tar.bz2
$ cd atl1e/src
$ make
$ su
# make install
11. /etc/modprobe.confの編集 †
# vi /etc/modprobe.conf
alias eth0 atl1e
を追加