トップ «前の日記(2008年02月09日 (Sat)) 最新 次の日記(2008年02月11日 (Mon))» 編集

 

馬写真日記

2006|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|

月日は百代の過客にして、行かふ年も又旅人也。
舟の上に生涯をうかべ、馬の口とらえて老をむかふる物は、日々旅にして旅を栖とす。

半期 四半期 全カテゴリ



トップ «前の日記(2008年02月09日 (Sat)) 最新 次の日記(2008年02月11日 (Mon))» 編集

2008年02月10日 (Sun) 本日休養日 [長年日記]

_ [馬写真] ムーンシャイン

7355ムーンシャイン先週はカメラを忘れてしまったので、昨日が初めての撮影になりました。
彼の現役競走馬時代の写真はこちらにあります。3枚のうちの右2枚は、1着の時の写真のようです。ものすごーく真剣な顔をしてますw

_ [Computer] CentOS 5.1 kernel 更新

CentOS 5.1 / Red Hat Enterprise Linux version 5 でカーネルの errata が出ている (詳細はこちら→RHSA-2008:0089-21) のは知っていたものの、再構築したものを使う必要があるという事情から、しばらく放置していました。ようやく時間ができたので、カーネルの再コンパイル&導入作業を実施。
Windows の NTFS 領域を参照したり IEEE1394 デバイスを使ったりするためには再構築が必要というスタンスからも、CentOS / Red Hat Enterprise は、やはり個人PCのクライアントよりもサーバーに向いているのでしょうかね……。

なお、前回の作業内容はこちら(2007年12月25日)を参照してください。今回の作業は、以下の通りです。。

基本情報

  • 古いカーネル:2.6.18-53.1.4.el5 を元にして作成した 2.6.18-y071225
  • 新しいカーネル:2.6.18-53.1.6.el5

事前準備

前回の残骸があるので、それらを退避。

# pwd
/usr/src
# mv linux-2.6.18.i686{,.080210}
# mv redhat{,.080210}

ディレクトリ構成を元通りに。元の構成は、

# find redhat.080210/ -type d | less
redhat.080210/
redhat.080210/SRPMS
redhat.080210/SPECS
redhat.080210/BUILD
redhat.080210/RPMS
redhat.080210/RPMS/i586
redhat.080210/RPMS/i486
redhat.080210/RPMS/i386
redhat.080210/RPMS/i686
redhat.080210/RPMS/noarch
redhat.080210/RPMS/athlon
redhat.080210/SOURCES
(一部略)

なので、

# mkdir -p redhat/SRPMS
# mkdir -p redhat/SPECS
# mkdir -p redhat/BUILD
# mkdir -p redhat/RPMS/i686
# mkdir -p redhat/RPMS/i586
# mkdir -p redhat/RPMS/i486
# mkdir -p redhat/RPMS/i386
# mkdir -p redhat/RPMS/noarch
# mkdir -p redhat/RPMS/athlon
# mkdir -p redhat/SOURCES

必要なソースコード等の準備

カーネルのソースRPMをダウンロード。
ftp://ftp.riken.jp/Linux/centos/5.1/updates/SRPMS/kernel-2.6.18-53.1.6.el5.src.rpm

src.rpm インストール。

# rpm -ivh kernel-2.6.18-53.1.6.el5.src.rpm 
# cd /usr/src/redhat/SPECS/
# pwd
/usr/src/redhat/SPECS
# rpmbuild -bp --target i686 /usr/src/redhat/SPECS/kernel-2.6.spec 
# cd /usr/src/redhat/BUILD/kernel-2.6.18/
# mv linux-2.6.18.i686/ /usr/src/.
# cd /usr/src/linux-2.6.18.i686
# pwd
/usr/src/linux-2.6.18.i686

再構築

Makefile書き換え

# vi Makefile 
EXTRAVERSION = -y080210

設定。

# make menuconfig

以下、変更点。今後のために、どこにどの項目があるのかもメモしておく。

File systems -> DOS/FAT/NT Filesystems ->
     NTFS file system support
Device Drivers -> IEEE 1394 (FireWire) support 
     IEEE 1394 (FireWire) support                                        
    ---   Subsystem Options                                                 
    [ ]   Excessive debugging output (NEW)                                  
    [ ]   OUI Database built-in (NEW)                                       
    [ ]   Build in extra config rom entries for certain functionality (NEW) 
    [ ]   Export all symbols of ieee1394's API (NEW)                        
    ---   Device Drivers                                                    
       Texas Instruments PCILynx support                                 
       OHCI-1394 support                                                 
    ---   Protocol Drivers                                                  
    < >   OHCI-1394 Video support                                           
       SBP-2 support (Harddisks etc.)                                    
    [ ]     Enable replacement for physical DMA in SBP2 (NEW)               
    < >   Ethernet over 1394                                                
    < >   OHCI-DV I/O support                                               
       Raw IEEE1394 I/O support                                          
Processor type and features ->
    [ ] Symmetric multi-processing support
    Processor family (Pentium-Pro) ->
       (X) Pentium-III/Celeron(Coppermine)/Pentium-III Xeon
    < > Toshiba Laptop support
    < > Dell laptop support

コンパイル。おおよその時間も測ってみることに。

# date
2008年  2月 10日 日曜日 10:51:31 JST
# make
(中略)
arch/i386/kernel/cpu/cpufreq/powernow-k8.c: In function ‘powernowk8_init’:
arch/i386/kernel/cpu/cpufreq/powernow-k8.c:1435: error: ‘struct cpuinfo_x86’ has no member named ‘booted_cores’
make[3]: *** [arch/i386/kernel/cpu/cpufreq/powernow-k8.o] エラー 1
make[2]: *** [arch/i386/kernel/cpu/cpufreq] エラー 2
make[1]: *** [arch/i386/kernel/cpu] エラー 2
make: *** [arch/i386/kernel] エラー 2

というエラーで失敗 orz
エラーメッセージから推定するに、AMD の省電力機構の周辺で不整合が発生したっぽい。 設定見直し。

# make menuconfig

追加で変更した個所

Power management options (ACPI, APM) ->
    CPU Frequency scaling ->
        < >   AMD Mobile Athlon/Duron PowerNow!
        < >   AMD Opteron/Athlon64 PowerNow!

コンパイル。今度こそ…

# date
2008年  2月 10日 日曜日 10:57:57 JST
# make
.....
# date
2008年  2月 10日 日曜日 12:21:19 JST

1時間半ほどかかりました (Pentium III 1.13GHz) この間に洗濯&昼食w
さて、続き。

# make modules_install
# installkernel 2.6.18-y080210 arch/i386/boot/bzImage System.map

動作確認

再起動。

# shutdown -r now

起動後、確認。

% uname -a
Linux thunder.tsukimi-kai.org 2.6.18-y080210 #1 Sun Feb 10 12:08:07 JST 2008 i686 i686 i386 GNU/Linux

OKですね。
NTFS領域が見える&読めるか確認。

% ls /mnt/ntfs/
AUTOEXEC.BAT*            NTDETECT.COM*               cygwin/
BOOT.INI*                PS2/                        drivez.log*
BOOTLOG.PRV*             Program Files/              explore2fs-1.00pre6/
BOOTLOG.TXT*             RECYCLER/                   hiberfil.sys*
BOOTSECT.DOS*            SC/                         icons/
CONFIG.SYS*              SUPPORT/                    ntldr*
DRIVERS/                 SYSCMNDR.SYS*               s2tc.vk*
Documents and Settings/  SYSLEVEL.IBM*               setup.log*
EPSON/                   System Volume Information/  twui13j/
I386/                    VALUEADD/                   volumeid.zbx*
IBMTOOLS/                WINDOWS/                    windu200/
IO.SYS*                  WUTemp/                     ~cevts_001_tmp.dir/
MSDOS.SYS*               bootfont.bin*
% xv /mnt/ntfs/Documents\ and\ Settings/yuuki/My\ Documents/My\ Pictures/080209_TR/*

IEEE1394接続の外付 HDD (NTFS) が認識されるか?

% dmesg
(略)
ieee1394: The root node is not cycle master capable; selecting a new root node and resetting...
ieee1394: Node added: ID:BUS[0-00:1023]  GUID[004026020f01b41a]
ieee1394: Node changed: 0-00:1023 -> 0-01:1023
ieee1394: sbp2: Driver forced to serialize I/O (serialize_io=1)
ieee1394: sbp2: Try serialize_io=0 for better performance
scsi0 : SBP-2 IEEE-1394
ieee1394: sbp2: Logged into SBP-2 device
ieee1394: Node 0-00:1023: Max speed [S400] - Max payload [2048]
  Vendor: WDC       Model: WD1200AB-00DYA0   Rev:     
  Type:   Direct-Access                      ANSI SCSI revision: 02
SCSI device sda: 234441649 512-byte hdwr sectors (120034 MB)
sda: Write Protect is off
sda: Mode Sense: 00 a2 00 00
SCSI device sda: drive cache: write back
SCSI device sda: 234441649 512-byte hdwr sectors (120034 MB)
sda: Write Protect is off
sda: Mode Sense: 00 a2 00 00
SCSI device sda: drive cache: write back
 sda: sda1
sd 0:0:0:0: Attached scsi disk sda
sda: Current: sense key: No Sense
    Add. Sense: No additional sense information
sd 0:0:0:0: Attached scsi generic sg0 type 0

mount できるか?

# mount -t ntfs /dev/sda1 /media/ieee

中身が読めるか?

# ls /media/ieee/
# xv /media/ieee/bak.070917/070915_TR/*

異常がないことを確認。

後処理

さて、/boot の下が大変なことになっておりますw

# ls -l /boot
合計 32356
lrwxrwxrwx 1 root root      31  2月 10 12:39 System.map -> /boot/System.map-2.6.18-y080210
-rw-r--r-- 1 root root  903999 11月 30 15:11 System.map-2.6.18-53.1.4.el5
-rw-r--r-- 1 root root  904078  1月 24 01:53 System.map-2.6.18-53.1.6.el5
-rw-r--r-- 1 root root  903969 11月 12 16:46 System.map-2.6.18-53.el5
-rw-r--r-- 1 root root  727558 12月 25 21:12 System.map-2.6.18-y071225
-rw-r--r-- 1 root root  860224  2月 10 12:39 System.map-2.6.18-y080210
-rw-r--r-- 1 root root  851108 12月 25 11:42 System.map-2.6.18-y1
-rw-r--r-- 1 root root   64555 11月 30 15:11 config-2.6.18-53.1.4.el5
-rw-r--r-- 1 root root   64555  1月 24 01:53 config-2.6.18-53.1.6.el5
-rw-r--r-- 1 root root   64551 11月 12 16:46 config-2.6.18-53.el5
drwxr-xr-x 2 root root    4096  2月 10 12:42 grub
-rw------- 1 root root 2370717 12月 24 21:35 initrd-2.6.18-53.1.4.el5.img
-rw------- 1 root root 2371837  2月 10 10:05 initrd-2.6.18-53.1.6.el5.img
-rw------- 1 root root 2370555 12月 24 21:11 initrd-2.6.18-53.el5.img
-rw------- 1 root root 2385935 12月 25 21:13 initrd-2.6.18-y071225.img
-rw------- 1 root root 2363558  2月 10 12:41 initrd-2.6.18-y080210.img
-rw------- 1 root root 2346431 12月 25 11:43 initrd-2.6.18-y1.img
-rw-r--r-- 1 root root   80032 11月 23 08:24 message
-rw-r--r-- 1 root root   87584 11月 30 15:12 symvers-2.6.18-53.1.4.el5.gz
-rw-r--r-- 1 root root   87584  1月 24 01:53 symvers-2.6.18-53.1.6.el5.gz
-rw-r--r-- 1 root root   87586 11月 12 16:46 symvers-2.6.18-53.el5.gz
lrwxrwxrwx 1 root root      28  2月 10 12:39 vmlinuz -> /boot/vmlinuz-2.6.18-y080210
-rw-r--r-- 1 root root 1790676 11月 30 15:11 vmlinuz-2.6.18-53.1.4.el5
-rw-r--r-- 1 root root 1791572  1月 24 01:53 vmlinuz-2.6.18-53.1.6.el5
-rw-r--r-- 1 root root 1791540 11月 12 16:46 vmlinuz-2.6.18-53.el5
-rw-r--r-- 1 root root 1789344 12月 25 21:12 vmlinuz-2.6.18-y071225
-rw-r--r-- 1 root root 1645652  2月 10 12:39 vmlinuz-2.6.18-y080210
-rw-r--r-- 1 root root 1623316 12月 25 11:42 vmlinuz-2.6.18-y1

grub.conf の中身もグダグダ。

# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE:  You do not have a /boot partition.  This means that
#          all kernel and initrd paths are relative to /, eg.
#          root (hd0,1)
#          kernel /boot/vmlinuz-version ro root=/dev/hda2
#          initrd /boot/initrd-version.img
#boot=/dev/hda
default=1
timeout=5
splashimage=(hd0,1)/boot/grub/splash.xpm.gz
hiddenmenu
title CentOS (2.6.18-y080210)
        root (hd0,1)
        kernel /boot/vmlinuz-2.6.18-y080210 ro root=LABEL=/ rhgb quiet
        initrd /boot/initrd-2.6.18-y080210.img
title CentOS (2.6.18-53.1.6.el5)
        root (hd0,1)
        kernel /boot/vmlinuz-2.6.18-53.1.6.el5 ro root=LABEL=/ rhgb quiet
        initrd /boot/initrd-2.6.18-53.1.6.el5.img
title CentOS (2.6.18-y071225)
        root (hd0,1)
        kernel /boot/vmlinuz-2.6.18-y071225 ro root=LABEL=/ rhgb quiet
        initrd /boot/initrd-2.6.18-y071225.img
title CentOS (2.6.18-y1)
        root (hd0,1)
        kernel /boot/vmlinuz-2.6.18-y1 ro root=LABEL=/ rhgb quiet
        initrd /boot/initrd-2.6.18-y1.img
title CentOS (2.6.18-53.1.4.el5)
        root (hd0,1)
        kernel /boot/vmlinuz-2.6.18-53.1.4.el5 ro root=LABEL=/ rhgb quiet
        initrd /boot/initrd-2.6.18-53.1.4.el5.img
title CentOS (2.6.18-53.el5)
        root (hd0,1)
        kernel /boot/vmlinuz-2.6.18-53.el5 ro root=LABEL=/ rhgb quiet
        initrd /boot/initrd-2.6.18-53.el5.img
title Other
        rootnoverify (hd0,0)
        chainloader +1

grub.conf 内容を整理。今回作成したカーネル (2.6.18-y080210)、再構築前のカーネル(2.6.18-53.1.6.el5)、以前使用していたカーネル (1.6.18-y071225)、Windows XP 以外を削除。さらに、デフォルトで起動するカーネルを、今回作成したカーネルに変更。

# cp grub.conf{,.080210}
# vi grub.conf
# diff grub.conf*
10c10
< default=0
---
> default=1
25a26,37
> title CentOS (2.6.18-y1)
>       root (hd0,1)
>       kernel /boot/vmlinuz-2.6.18-y1 ro root=LABEL=/ rhgb quiet
>       initrd /boot/initrd-2.6.18-y1.img
> title CentOS (2.6.18-53.1.4.el5)
>       root (hd0,1)
>       kernel /boot/vmlinuz-2.6.18-53.1.4.el5 ro root=LABEL=/ rhgb quiet
>       initrd /boot/initrd-2.6.18-53.1.4.el5.img
> title CentOS (2.6.18-53.el5)
>       root (hd0,1)
>       kernel /boot/vmlinuz-2.6.18-53.el5 ro root=LABEL=/ rhgb quiet
>       initrd /boot/initrd-2.6.18-53.el5.img

再起動して、確認。

# shutdown -r now

特に異常はないようです。

[]

トップ «前の日記(2008年02月09日 (Sat)) 最新 次の日記(2008年02月11日 (Mon))» 編集

webmaster@tsukimi-kai.org
Copyright © 1996-2008 Y.Yuki