Jun 6, 2003 onlsbc1, コンパクトフラッシュ上のLinuxシステム復旧 --- インストール #7 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ (http://www-online.kek.jp/~inoue/para-CAMAC/ Work/SBC-Linux11.html) 高エネルギー加速器研究機構 素粒子原子核研究所 物理、オンライングループ 井上 栄二 目的 コンパクトフラッシュ上のLinuxシステムを壊してしまった場合の復旧方法 について検討する。 (1). ディスクコピーによるブータブルコンパクトフラッシュ再構築 (2). KNOPPIXのCD-ROMからの復旧テスト -------------------------------------------------------------------- (1). ディスクコピーによるブータブルコンパクトフラッシュ再構築 コンパクトフラッシュ上のシステムをハードディスク上にセーブしておく。 コンパクトフラッシュ上のシステムを一旦クリアした後で、先にハードディスク 上にセーブしたファイルをコンパクトフラッシュ上に書き戻す。 コンパクト フラッシュのブートブロックも書き直す。 (1-1). コンパクトフラッシュのLinuxシステムをハードディスク上にセーブ (1-1-1). 2.5"IDE上のLinuxシステムにコンパクトフラッシュをマウント [root@onlsbc1 /]# df -k Filesystem 1K-ブロック 使用 使用可 使用% マウント位置 /dev/hda5 505605 85174 394327 18% / /dev/hda1 101089 9162 86708 10% /boot /dev/hda2 10080520 715464 8852988 8% /home none 152188 0 152188 0% /dev/shm /dev/hda3 10080520 3968132 5600320 42% /usr /dev/hda6 1027768 158084 817476 17% /var /dev/hdc1 484602 430911 28669 94% /mnt onlpara:/home2/onlpara-wrk 22659860 709784 20799020 4% /mnt1 [root@onlsbc1 /]# [root@onlsbc1 /]# ls -l /mnt 合計 147 drwxr-xr-x 2 root root 2048 5月 14 22:49 bin drwxr-xr-x 3 root root 1024 5月 14 15:46 boot drwxr-xr-x 20 root root 116736 5月 20 16:54 dev drwxr-xr-x 25 root root 3072 5月 21 08:47 etc drwxr-xr-x 5 root root 1024 5月 14 22:59 home drwxr-xr-x 2 root root 1024 6月 22 2001 initrd drwxr-xr-x 5 root root 3072 5月 14 22:50 lib drwx------ 2 root root 12288 5月 14 22:35 lost+found drwxr-xr-x 3 root root 1024 5月 14 14:07 mnt drwxr-xr-x 2 root root 1024 8月 24 1999 opt drwxr-xr-x 2 root root 1024 5月 14 22:35 proc drwxr-xr-x 4 root root 1024 5月 14 14:19 ramfs drwxr-x--- 2 root root 1024 5月 20 17:07 root drwxr-xr-x 2 root root 3072 5月 14 22:49 sbin lrwxrwxrwx 1 root root 9 5月 14 14:19 tmp -> ramfs/tmp drwxr-xr-x 16 root root 1024 5月 19 14:59 usr lrwxrwxrwx 1 root root 9 5月 14 14:19 var -> ramfs/var [root@onlsbc1 /]#1 (1-1-2). コンパクトフラッシュの圧縮ファイルを作成 [root@onlsbc1 /]# df -k Filesystem 1K-ブロック 使用 使用可 使用% マウント位置 /dev/hda5 505605 85174 394327 18% / /dev/hda1 101089 9162 86708 10% /boot /dev/hda2 10080520 715464 8852988 8% /home none 152188 0 152188 0% /dev/shm /dev/hda3 10080520 3968132 5600320 42% /usr /dev/hda6 1027768 158088 817472 17% /var /dev/hdc1 484602 430911 28669 94% /mnt onlpara:/home2/onlpara-wrk 22659860 709784 20799020 4% /mnt1 [root@onlsbc1 /]# ls -l /mnt1/root 合計 60380 -rw-r--r-- 1 nfsnobody nfsnobody 2339328 5月 14 17:01 hdlist -rw-r--r-- 1 nfsnobody nfsnobody 17138748 5月 14 16:55 hdlist2 -rwxr-xr-x 1 nfsnobody nfsnobody 42250657 4月 7 09:35 j2sdk-1_4_1_02-linux- i586.bin drwxr-xr-x 3 nfsnobody nfsnobody 4096 4月 10 14:29 j2sdk1.4.1_02 drwxr-xr-x 17 nfsnobody nfsnobody 4096 4月 7 10:06 linux-2.4.18-14 drwxr-xr-x 2 nfsnobody nfsnobody 4096 12月 17 16:33 t5 -rw-r--r-- 1 nfsnobody nfsnobody 0 4月 7 09:49 t6 [root@onlsbc1 /]# [root@onlsbc1 mnt]# pwd /mnt [root@onlsbc1 mnt]# ls -l 合計 147 drwxr-xr-x 2 root root 2048 5月 14 22:49 bin drwxr-xr-x 3 root root 1024 5月 14 15:46 boot drwxr-xr-x 20 root root 116736 5月 20 16:54 dev drwxr-xr-x 25 root root 3072 5月 21 08:47 etc drwxr-xr-x 5 root root 1024 5月 14 22:59 home drwxr-xr-x 2 root root 1024 6月 22 2001 initrd drwxr-xr-x 5 root root 3072 5月 14 22:50 lib drwx------ 2 root root 12288 5月 14 22:35 lost+found drwxr-xr-x 3 root root 1024 5月 14 14:07 mnt drwxr-xr-x 2 root root 1024 8月 24 1999 opt drwxr-xr-x 2 root root 1024 5月 14 22:35 proc drwxr-xr-x 4 root root 1024 5月 14 14:19 ramfs drwxr-x--- 2 root root 1024 5月 20 17:07 root drwxr-xr-x 2 root root 3072 5月 14 22:49 sbin lrwxrwxrwx 1 root root 9 5月 14 14:19 tmp -> ramfs/tmp drwxr-xr-x 16 root root 1024 5月 19 14:59 usr lrwxrwxrwx 1 root root 9 5月 14 14:19 var -> ramfs/var [root@onlsbc1 mnt]# [root@onlsbc1 mnt]# tar cf /mnt1/root/compact.tar . [root@onlsbc1 mnt]# [root@onlsbc1 mnt]# cd /mnt1/root [root@onlsbc1 root]# ls -l 合計 493448 -rw-r--r-- 1 nfsnobody nfsnobody 443023360 5月 21 09:43 compact.tar -rw-r--r-- 1 nfsnobody nfsnobody 2339328 5月 14 17:01 hdlist -rw-r--r-- 1 nfsnobody nfsnobody 17138748 5月 14 16:55 hdlist2 -rwxr-xr-x 1 nfsnobody nfsnobody 42250657 4月 7 09:35 j2sdk-1_4_1_02-linux- i586.bin drwxr-xr-x 3 nfsnobody nfsnobody 4096 4月 10 14:29 j2sdk1.4.1_02 drwxr-xr-x 17 nfsnobody nfsnobody 4096 4月 7 10:06 linux-2.4.18-14 drwxr-xr-x 2 nfsnobody nfsnobody 4096 12月 17 16:33 t5 -rw-r--r-- 1 nfsnobody nfsnobody 0 4月 7 09:49 t6 [root@onlsbc1 root]# [root@onlsbc1 root]# gzip compact.tar [root@onlsbc1 root]# ls -l 合計 209680 -rw-r--r-- 1 nfsnobody nfsnobody 152726128 5月 21 09:43 compact.tar.gz -rw-r--r-- 1 nfsnobody nfsnobody 2339328 5月 14 17:01 hdlist -rw-r--r-- 1 nfsnobody nfsnobody 17138748 5月 14 16:55 hdlist2 -rwxr-xr-x 1 nfsnobody nfsnobody 42250657 4月 7 09:35 j2sdk-1_4_1_02-linux- i586.bin drwxr-xr-x 3 nfsnobody nfsnobody 4096 4月 10 14:29 j2sdk1.4.1_02 drwxr-xr-x 17 nfsnobody nfsnobody 4096 4月 7 10:06 linux-2.4.18-14 drwxr-xr-x 2 nfsnobody nfsnobody 4096 12月 17 16:33 t5 -rw-r--r-- 1 nfsnobody nfsnobody 0 4月 7 09:49 t6 [root@onlsbc1 root]# (1-2). コンパクトフラッシュの準備 KNOPPIX3.2を立ち上げる。 その後USBコンパクトフラッシュ・リーダ・ライタ をUSBポートにつなぐ。 そうすると、KNOPPIXはデバイスを認識してくれる。 (1-2-1). コンパクトフラッシュ上にファイルシステムを作成 root@ttyp1[knoppix]# fdisk /dev/sda コマンド (m でヘルプ): m コマンドの動作 a ブート可能フラグをつける b bsd ディスクラベルを編集する c dos 互換フラグをつける d 領域を削除する l 既知の領域タイプをリスト表示する m このメニューを表示する n 新たに領域を作成する o 新たに空の DOS 領域テーブルを作成する p 領域テーブルを表示する q 変更を保存せずに終了する s 空の Sun ディスクラベルを作成する t 領域のシステム ID を変更する u 表示/項目ユニットを変更する v 領域テーブルを照合する w テーブルをディスクに書き込み、終了する x 特別な機能 (エキスパート専用) コマンド (m でヘルプ): p Disk /dev/sda: 512 MB, 512483328 bytes 16 heads, 63 sectors/track, 993 cylinders Units = シリンダ数 of 1008 * 512 = 516096 bytes デバイス ブート 始点 終点 ブロック ID システム /dev/sda1 * 1 993 500440+ 6 FAT16 コマンド (m でヘルプ): d Selected partition 1 コマンド (m でヘルプ): p Disk /dev/sda: 512 MB, 512483328 bytes 16 heads, 63 sectors/track, 993 cylinders Units = シリンダ数 of 1008 * 512 = 516096 bytes デバイス ブート 始点 終点 ブロック ID システム コマンド (m でヘルプ): n コマンドアクション e 拡張 p 基本領域 (1-4) p 領域番号 (1-4): 1 最初 シリンダ (1-993, 初期値 1): 初期値 1 を使いま 終点 シリンダ または +サイズ または +サイズM または +サイズK (1-993, 初期値 993): 993 コマンド (m でヘルプ): p Disk /dev/sda: 512 MB, 512483328 bytes 16 heads, 63 sectors/track, 993 cylinders Units = シリンダ数 of 1008 * 512 = 516096 bytes デバイス ブート 始点 終点 ブロック ID システム /dev/sda1 1 993 500440+ 83 Linux コマンド (m でヘルプ): w 領域テーブルは交換されました! ioctl() を呼び出して領域テーブルを再読込みしま 警告: 領域テーブルの再読込みがエラー 16 で失敗しました: デバイスもしくはリソースがビジー状態で カーネルはまだ古いテーブルを使っていま 新しいテーブルは次回リブート時に使えるようになるでしょ ディスクを同期させま root@ttyp1[knoppix]# root@ttyp1[knoppix]# mke2fs -j /dev/sda1 mke2fs 1.32 (09-Nov-2002) /dev/sda1 is mounted; will not make a filesystem here! root@ttyp1[knoppix]# df -k Filesystem 1K-ブロック 使用 使用可 使用% マウント位置 /dev/root 1971 1452 519 74% / /dev/cdrom 717056 717056 0 100% /cdrom /dev/cloop 1783328 1783328 0 100% /KNOPPIX /dev/shm 408924 12320 396604 4% /ramdisk /dev/hda1 32018 722 31296 3% /mnt/hda1 /dev/hda2 39029916 13154400 25875516 34% /mnt/hda2 /dev/sda1 500176 0 500176 0% /mnt/sda1 root@ttyp1[knoppix]# root@ttyp1[/]# umount /mnt/sda1 root@ttyp1[/]# mke2fs -j /dev/sda1 mke2fs 1.32 (09-Nov-2002) Filesystem label= OS type: Linux Block size=1024 (log=0) Fragment size=1024 (log=0) 125488 inodes, 500440 blocks 25022 blocks (5.00%) reserved for the super user First data block=1 62 block groups 8192 blocks per group, 8192 fragments per group 2024 inodes per group Superblock backups stored on blocks: 8193, 24577, 40961, 57345, 73729, 204801, 221185, 401409 Writing inode tables: done Creating journal (8192 blocks): done Writing superblocks and filesystem accounting information: done This filesystem will be automatically checked every 35 mounts or 180 days, whichever comes first. Use tune2fs -c or -i to override. root@ttyp1[/]# root@ttyp1[/]# mount -t ext3 /dev/sda1 /mnt/sda1 root@ttyp1[/]# df -k Filesystem 1K-ブロック 使用 使用可 使用% マウント位 /dev/root 1971 1452 519 74% / /dev/cdrom 717056 717056 0 100% /cdrom /dev/cloop 1783328 1783328 0 100% /KNOPPIX /dev/shm 408924 12320 396604 4% /ramdisk /dev/hda1 32018 722 31296 3% /mnt/hda1 /dev/hda2 39029916 13154400 25875516 34% /mnt/hda2 /dev/sda1 484602 8239 451341 2% /mnt/sda1 root@ttyp1[/]# (1-3). 再構築 root@ttyp1[/]# mount onlpara.kek.jp:/home2/onlpara-wrk /mnt1 root@ttyp1[/]# df -k Filesystem 1K-ブロック 使用 使用可 使用% マウント位 /dev/root 1971 1452 519 74% / /dev/cdrom 717056 717056 0 100% /cdrom /dev/cloop 1783328 1783328 0 100% /KNOPPIX /dev/shm 408924 12320 396604 4% /ramdisk /dev/hda1 32018 722 31296 3% /mnt/hda1 /dev/hda2 39029916 13154400 25875516 34% /mnt/hda2 /dev/sda1 484602 8239 451341 2% /mnt/sda1 onlpara.kek.jp:/home2/onlpara-wrk 22659864 1142856 20365952 6% /mnt1 root@ttyp1[/]# root@ttyp1[sda1]# ls -l /mnt1/root 合計 209680 -rw-r--r-- 1 nobody nogroup 152726128 2003-05-21 09:43 compact.tar.gz -rw-r--r-- 1 nobody nogroup 2339328 2003-05-14 17:01 hdlist -rw-r--r-- 1 nobody nogroup 17138748 2003-05-14 16:55 hdlist2 -rwxr-xr-x 1 nobody nogroup 42250657 2003-04-07 09:35 j2sdk-1_4_1_02-linux-i586.bin drwxr-xr-x 3 nobody nogroup 4096 2003-04-10 14:29 j2sdk1.4.1_02 drwxr-xr-x 17 nobody nogroup 4096 2003-04-07 10:06 linux-2.4.18-14 drwxr-xr-x 2 nobody nogroup 4096 2002-12-17 16:33 t5 -rw-r--r-- 1 nobody nogroup 0 2003-04-07 09:49 t6 root@ttyp1[sda1]# root@ttyp1[sda1]# pwd /mnt/sda1 root@ttyp1[sda1]# ls -l 合計 12 drwx------ 2 root root 12288 2003-05-28 16:31 lost+found root@ttyp1[sda1]# root@ttyp1[sda1]# tar xzf /mnt1/root/compact.tar.gz root@ttyp1[sda1]# ls -l 合計 135 drwxr-xr-x 2 root root 2048 2003-05-14 22:49 bin drwxr-xr-x 3 root root 1024 2003-05-14 15:46 boot drwxr-xr-x 20 root root 116736 2003-05-20 16:54 dev drwxr-xr-x 25 root root 2048 2003-05-21 08:47 etc drwxr-xr-x 5 root root 1024 2003-05-14 22:59 home drwxr-xr-x 2 root root 1024 2001-06-22 03:32 initrd drwxr-xr-x 5 root root 3072 2003-05-14 22:50 lib drwx------ 2 root root 1024 2003-05-14 22:35 lost+found drwxr-xr-x 3 root root 1024 2003-05-14 14:07 mnt drwxr-xr-x 2 root root 1024 1999-08-24 01:03 opt drwxr-xr-x 2 root root 1024 2003-05-14 22:35 proc drwxr-xr-x 4 root root 1024 2003-05-14 14:19 ramfs drwxr-x--- 2 root root 1024 2003-05-20 17:07 root drwxr-xr-x 2 root root 3072 2003-05-14 22:49 sbin lrwxrwxrwx 1 root root 9 2003-05-28 16:51 tmp -> ramfs/tmp drwxr-xr-x 16 root root 1024 2003-05-19 14:59 usr lrwxrwxrwx 1 root root 9 2003-05-28 16:51 var -> ramfs/var root@ttyp1[sda1]# root@ttyp1[sbin]# pwd /mnt/sda1/sbin root@ttyp1[sbin]# ls -l grub -rwxr-xr-x 1 root root 248416 2002-09-06 05:59 grub root@ttyp1[sbin]# root@ttyp1[sbin]# ./grub Probing devices to guess BIOS drives. This may take a long time. GRUB version 0.92 (640K lower / 3072K upper memory) [ Minimal BASH-like line editing is supported. For the first word, TAB lists possible command completions. Anywhere else TAB lists the possible completions of a device/filename. ] grub> root (hd1,0) Filesystem type is ext2fs, partition type 0x83 grub> root (hd1,0) Filesystem type is ext2fs, partition type 0x83 grub> setup (hd1) Checking if "/boot/grub/stage1" exists... yes Checking if "/boot/grub/stage2" exists... yes Checking if "/boot/grub/e2fs_stage1_5" exists... yes Running "embed /boot/grub/e2fs_stage1_5 (hd1)"... 22 sectors are embedded. succeeded Running "install /boot/grub/stage1 (hd1) (hd1)1+22 p (hd1,0)/boot/grub/stage2 /boot/grub/grub.conf"... succeeded Done. grub> quit root@ttyp1[sbin]# (1-4). 起動テスト コピーしたコンパクトフラッシュをonlsbc1にセットして電源をオンした。 : VFS: Mounted root (ext2 filesystem). Red Hat nash version 3.4.28 starting Loading jbd module Journalled Block Device driver loaded Loading ext3 module Mounting /proc filesystem Creating block devices Creating root device hdc: hdc1 mkrootdev: label / not found Mounting root filesystem mount: error 2 mounting ext3 pivotroot: pivot_root (/sysroot, /sysroot/initrd) failed: 2 umount /initrd/proc failed: 2 Freeing unused kernel memory: 152K freed Kernael panic: No init found. Try passing init= option to kernel. <-- ここでフリーズ (1-5). コンパクトフラッシュのLinuxシステムをハードディスク上にセーブ(その2) 上記の項目1-1ではonlsbc1の2.5"IDEハードディスクのシステムを使って コンパクトフラッシュのシステムのセーブを行なった。 ここでは、KNOPPIXの システムを使ってコンパクトフラッシュのシステムのセーブを行なってみる。 (1-5-1). KNOPPIXシステム上にコンパクトフラッシュのシステムをセーブ onlsbc1のコンパクトフラッシュをUSBコンパクトフラッシュ・リーダライタに セットしてKNOPPIXを立ち上げる。 root@ttyp0[knoppix]# mkdir /mnt1 root@ttyp0[knoppix]# mkdir /mnt2 root@ttyp0[knoppix]# mount -t ext3 /dev/sda1 /mnt1 root@ttyp0[knoppix]# mount onlpara.kek.jp:/home2/onlpara-wrk /mnt2 root@ttyp0[knoppix]# df -k Filesystem 1K-ブロック 使用 使用可 使用% マウント位 /dev/root 1971 1453 518 74% / /dev/cdrom 717056 717056 0 100% /cdrom /dev/cloop 1783328 1783328 0 100% /KNOPPIX /dev/shm 408924 11188 397736 3% /ramdisk /dev/sda1 484602 431039 28541 94% /mnt1 onlpara.kek.jp:/home2/onlpara-wrk 22659864 1009768 20499040 5% /mnt2 root@ttyp0[knoppix]# root@ttyp0[knoppix]# cd /mnt1 root@ttyp0[mnt1]# ls -l 合計 147 drwxr-xr-x 2 root root 2048 2003-05-14 22:49 bin drwxr-xr-x 3 root root 1024 2003-05-22 10:51 boot drwxr-xr-x 20 root root 116736 2003-05-29 08:23 dev drwxr-xr-x 25 root root 3072 2003-05-29 08:23 etc drwxr-xr-x 5 root root 1024 2003-05-14 22:59 home drwxr-xr-x 2 root root 1024 2001-06-22 03:32 initrd drwxr-xr-x 5 root root 3072 2003-05-14 22:50 lib drwx------ 2 root root 12288 2003-05-14 22:35 lost+found drwxr-xr-x 3 root root 1024 2003-05-14 14:07 mnt drwxr-xr-x 2 root root 1024 1999-08-24 01:03 opt drwxr-xr-x 2 root root 1024 2003-05-14 22:35 proc drwxr-xr-x 4 root root 1024 2003-05-14 14:19 ramfs drwxr-x--- 3 root root 1024 2003-05-22 10:33 root drwxr-xr-x 2 root root 3072 2003-05-14 22:49 sbin lrwxrwxrwx 1 root root 9 2003-05-14 14:19 tmp -> ramfs/tmp drwxr-xr-x 16 root root 1024 2003-05-19 14:59 usr lrwxrwxrwx 1 root root 9 2003-05-14 14:19 var -> ramfs/var root@ttyp0[mnt1]# root@ttyp0[mnt1]# pwd /mnt1 root@ttyp0[mnt1]# ls -l /mnt2/root/knoppix 合計 0 root@ttyp0[mnt1]# tar cf /mnt2/root/knoppix/compact.tar . root@ttyp0[mnt1]# root@ttyp0[mnt1]# cd /mnt2/root/knoppix root@ttyp0[knoppix]# ls -l 合計 433200 -rw-r--r-- 1 nobody nogroup 443156480 2003-05-29 14:00 compact.tar root@ttyp0[knoppix]# gzip compact.tar root@ttyp0[knoppix]# ls -l 合計 149420 -rw-r--r-- 1 nobody nogroup 152848889 2003-05-29 14:00 compact.tar.gz root@ttyp0[knoppix]# root@ttyp0[knoppix]# umount /mnt1 root@ttyp0[knoppix]# df -k Filesystem 1K-ブロック 使用 使用可 使用% マウント位 /dev/root 1971 1453 518 74% / /dev/cdrom 717056 717056 0 100% /cdrom /dev/cloop 1783328 1783328 0 100% /KNOPPIX /dev/shm 408924 11188 397736 3% /ramdisk onlpara.kek.jp:/home2/onlpara-wrk 22659864 1159192 20349616 6% /mnt2 root@ttyp0[knoppix]# ここで、onlsbc1のコンパクトフラッシュをリーダライタからはずして、代わり に復旧用のコンパクトフラッシュメディアを装着する。 (1-6). コンパクトフラッシュの準備(その2) (1-6-1). コンパクトフラッシュ上にファイルシステムを作成(その2) root@ttyp0[knoppix]# fdisk /dev/sda コマンド (m でヘルプ): p Disk /dev/sda: 512 MB, 512483328 bytes 16 heads, 63 sectors/track, 993 cylinders Units = シリンダ数 of 1008 * 512 = 516096 bytes デバイス ブート 始点 終点 ブロック ID システム /dev/sda1 1 993 500440+ 83 Linux コマンド (m でヘルプ): p Disk /dev/sda: 512 MB, 512483328 bytes 16 heads, 63 sectors/track, 993 cylinders Units = シリンダ数 of 1008 * 512 = 516096 bytes デバイス ブート 始点 終点 ブロック ID システム /dev/sda1 1 993 500440+ 83 Linux コマンド (m でヘルプ): q root@ttyp0[knoppix]# root@ttyp0[knoppix]# mke2fs -j /dev/sda1 mke2fs 1.32 (09-Nov-2002) Filesystem label= OS type: Linux Block size=1024 (log=0) Fragment size=1024 (log=0) 125488 inodes, 500440 blocks 25022 blocks (5.00%) reserved for the super user First data block=1 62 block groups 8192 blocks per group, 8192 fragments per group 2024 inodes per group Superblock backups stored on blocks: 8193, 24577, 40961, 57345, 73729, 204801, 221185, 401409 Writing inode tables: done Creating journal (8192 blocks): done Writing superblocks and filesystem accounting information: done This filesystem will be automatically checked every 36 mounts or 180 days, whichever comes first. Use tune2fs -c or -i to override. root@ttyp0[knoppix]# (1-7). 再構築(その2) ot@ttyp0[knoppix]# mkdir /mnt1 root@ttyp0[knoppix]# mkdir /mnt2 root@ttyp0[knoppix]# mount -t ext3 /dev/sda1 /mnt1 root@ttyp0[knoppix]# mount onlpara.kek.jp:/home2/onlpara-wrk /mnt2 root@ttyp0[knoppix]# df -k Filesystem 1K-ブロック 使用 使用可 使用% マウント位 /dev/root 1971 1453 518 74% / /dev/cdrom 717056 717056 0 100% /cdrom /dev/cloop 1783328 1783328 0 100% /KNOPPIX /dev/shm 408924 11196 397728 3% /ramdisk /dev/sda1 484602 8239 451341 2% /mnt1 onlpara.kek.jp:/home2/onlpara-wrk 22659864 1159192 20349616 6% /mnt2 root@ttyp0[knoppix]# root@ttyp0[mnt1]# pwd /mnt1 root@ttyp0[mnt1]# ls -l 合計 12 drwx------ 2 root root 12288 2003-05-30 08:41 lost+found root@ttyp0[mnt1]# ls -l /mnt2/root/knoppix 合計 149420 -rw-r--r-- 1 nobody nogroup 152848889 2003-05-29 14:00 compact.tar.gz root@ttyp0[mnt1]# tar xzf /mnt2/root/knoppix/compact.tar.gz root@ttyp0[mnt1]# root@ttyp0[mnt1]# ls -l /mnt1 合計 135 drwxr-xr-x 2 root root 2048 2003-05-14 22:49 bin drwxr-xr-x 3 root root 1024 2003-05-22 10:51 boot drwxr-xr-x 20 root root 116736 2003-05-29 08:23 dev drwxr-xr-x 25 root root 2048 2003-05-29 08:23 etc drwxr-xr-x 5 root root 1024 2003-05-14 22:59 home drwxr-xr-x 2 root root 1024 2001-06-22 03:32 initrd drwxr-xr-x 5 root root 3072 2003-05-14 22:50 lib drwx------ 2 root root 1024 2003-05-14 22:35 lost+found drwxr-xr-x 3 root root 1024 2003-05-14 14:07 mnt drwxr-xr-x 2 root root 1024 1999-08-24 01:03 opt drwxr-xr-x 2 root root 1024 2003-05-14 22:35 proc drwxr-xr-x 4 root root 1024 2003-05-14 14:19 ramfs drwxr-x--- 3 root root 1024 2003-05-22 10:33 root drwxr-xr-x 2 root root 3072 2003-05-14 22:49 sbin lrwxrwxrwx 1 root root 9 2003-05-30 08:45 tmp -> ramfs/tmp drwxr-xr-x 16 root root 1024 2003-05-19 14:59 usr lrwxrwxrwx 1 root root 9 2003-05-30 08:45 var -> ramfs/var root@ttyp0[mnt1]# root@ttyp0[mnt1]# e2label /dev/sda1 root@ttyp0[mnt1]# e2label /dev/sda1 / root@ttyp0[mnt1]# e2label /dev/sda1 / root@ttyp0[mnt1]# root@ttyp0[sbin]# pwd /mnt1/sbin root@ttyp0[sbin]# ls -l grub -rwxr-xr-x 1 root root 248416 2002-09-06 05:59 grub root@ttyp0[sbin]# ./grub Probing devices to guess BIOS drives. This may take a long time. GRUB version 0.92 (640K lower / 3072K upper memory) [ Minimal BASH-like line editing is supported. For the first word, TAB lists possible command completions. Anywhere else TAB lists the possible completions of a device/filename. ] grub> root (hd1,0) Filesystem type is ext2fs, partition type 0x83 grub> setup (hd1) Checking if "/boot/grub/stage1" exists... yes Checking if "/boot/grub/stage2" exists... yes Checking if "/boot/grub/e2fs_stage1_5" exists... yes Running "embed /boot/grub/e2fs_stage1_5 (hd1)"... 22 sectors are embedded. succeeded Running "install /boot/grub/stage1 (hd1) (hd1)1+22 p (hd1,0)/boot/grub/stage2 /boot/grub/grub.conf"... succeeded Done. grub> quit root@ttyp0[sbin]# root@ttyp0[sbin]# cd / root@ttyp0[/]# umount /mnt1 root@ttyp0[/]# (1-8). 起動テスト(その2) コピーしたコンパクトフラッシュをonlsbc1にセットして電源をオンした。 ok. システムは正常に立ち上がった。 knoppix@ttyp2[knoppix]$ ssh -l inoue onlsbc1.kek.jp The authenticity of host 'onlsbc1.kek.jp (130.87.153.3)' can't be established. RSA key fingerprint is 8e:30:a5:d9:48:a5:fa:25:11:bd:15:f7:2d:47:0d:f7. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added 'onlsbc1.kek.jp,130.87.153.3' (RSA) to the list of known hosts. inoue@onlsbc1.kek.jp's password: [inoue@onlsbc1 inoue]$ ls -l 合計 0 [inoue@onlsbc1 inoue]$ ls -l / 合計 134 drwxr-xr-x 2 root root 2048 5月 14 22:49 bin drwxr-xr-x 3 root root 1024 5月 22 10:51 boot drwxr-xr-x 20 root root 116736 5月 30 09:20 dev drwxr-xr-x 25 root root 2048 5月 30 09:20 etc drwxr-xr-x 5 root root 1024 5月 14 22:59 home drwxr-xr-x 2 root root 1024 6月 22 2001 initrd drwxr-xr-x 5 root root 3072 5月 14 22:50 lib drwx------ 2 root root 1024 5月 14 22:35 lost+found drwxr-xr-x 3 root root 1024 5月 14 14:07 mnt drwxr-xr-x 2 root root 1024 8月 24 1999 opt dr-xr-xr-x 36 root root 0 5月 30 2003 proc drwxr-xr-x 5 root root 1024 5月 30 09:19 ramfs drwxr-x--- 3 root root 1024 5月 22 10:33 root drwxr-xr-x 2 root root 3072 5月 14 22:49 sbin lrwxrwxrwx 1 root root 9 5月 30 08:45 tmp -> ramfs/tmp drwxr-xr-x 16 root root 1024 5月 19 14:59 usr lrwxrwxrwx 1 root root 9 5月 30 08:45 var -> ramfs/var [inoue@onlsbc1 inoue]$ (2). KNOPPIXのCD-ROMからの復旧テスト 上記の項目1でハードディスク上にセーブしたコンパクトフラッシュ上のLinux システムを、KNOPPIXシステムのインストールされているCDの中に組み込んで このCDを使ってコンパクトフラッシュ上に書き戻す。 (2-1). KNOPPIXシステムの再構築 (2-1-1). knx-cdcust.shの実行 root@ttyp0[knoppix]# df -k Filesystem 1K-ブロック 使用 使用可 使用% マウント位置 /dev/root 1971 1454 517 74% / /dev/cdrom 717056 717056 0 100% /cdrom /dev/cloop 1783328 1783328 0 100% /KNOPPIX /dev/shm 408924 11188 397736 3% /ramdisk root@ttyp0[knoppix]# mount /dev/sda3 /mnt/sda3 root@ttyp0[knoppix]# mount /dev/sda5 /mnt/sda5 root@ttyp0[knoppix]# df -k Filesystem 1K-ブロック 使用 使用可 使用% マウント位 /dev/root 1971 1454 517 74% / /dev/cdrom 717056 717056 0 100% /cdrom /dev/cloop 1783328 1783328 0 100% /KNOPPIX /dev/shm 408924 11188 397736 3% /ramdisk /dev/sda3 9621880 3959704 5173400 44% /mnt/sda3 /dev/sda5 10231392 694264 9537128 7% /mnt/sda5 root@ttyp0[knoppix]# root@ttyp0[sda5]# ./knx-cdcust.sh #============================================================================= # VERSION : 0.5.1 # LICENCE : GPL # PURPOSE : Knoppix CD Customizer # DATE : 2003-03-15 # REVISION: 2003-03-28 # AUTHOR : Hans-Achim Unger, Achim.Unger@web.de (xdialog-features) # ORIGINAL: (c) 3/2003 by Thomas Lange, lange@informatik.uni-koeln.de # USAGE : knx-cdcust.sh # SW : bash, xdialog, create_compressed_fs # SYSTEM : GNU/LINUX # INIFILE : $HOME/.knx-cdcust.rc #============================================================================= create_compressed_fs: /usr/bin/create_compressed_fs /usr/share/man/man1/create_compressed_fs.1.gz Xdialog: /usr/bin/Xdialog /usr/share/man/man1/Xdialog.1.gz cdrecord: /usr/bin/cdrecord /etc/cdrecord /etc/cdrecord.conf /usr/share/man/man1/cdrecord.1.gz WORKPART=>< Linux sg driver version: 3.1.24 Seconds since start: 324, 324 in menu test ! -/mnt/sda5//knx-cdcust && mkdir -p /mnt/sda5//knx-cdcust 読み込んだブロック数は 717060+0 書き込んだブロック数は 717060+0 734269440 bytes transferred in 743.898689 seconds (987056 bytes/sec) Seconds since start: 324, 324 in menu Seconds since start: 1327, 1003 in menu A1 mkdir: ディレクトリ `/mnt/sda5' を作成できません: 読み込み専用ファイルシステムです root@ttyp0[sda5]# : 以下、メニューに従って isoファイルを作成した。 作成したisoファイルは TOYO.isoと名前を付けた。 KNOPPIXを実行中にはCDメディアを取り外すことができない。 それで私のPCでは KNOPPIX下でCD-Rの作成はできない。 Windows XP下で作成する。 Windows XPの "Easy CD Creator" を使って焼いた。 (2-1-2). TOYO.isoで作成したKNOPPIXの実行 CDから起動して、"BOOT:" のプロンプトが表示された時のキー入力に問題が ある。 "y"キーと"z"キーを逆に認識してしまう。 他のキーは正常に認識する。 KNOPPIXが立ち上がってからは何も問題はない。 knx-cdcust.shを使わないで再度KNOPPIXの再構築を行なう。 (2-2). KNOPPIXシステムの再構築(その2) (2-1-1). CD上にインストールされたKNOPPIXをハードディスク上に展開 (2-1-1A). ハードディスク上に作業領域を確保 root@ttyp1[knoppix]# fdisk /dev/sda このディスクのシリンダ数は 3648 に設定されています。 間違いではないのですが、1024 を超えているため、以下の場合 に問題を生じうる事を確認しましょう: 1) ブート時に実行するソフトウェア (例. バージョンが古い LILO) 2) 別の OS のブートやパーティション作成ソフ (例. DOS FDISK, OS/2 FDISK) コマンド (m でヘルプ): p Disk /dev/sda: 30.0 GB, 30005821440 bytes 255 heads, 63 sectors/track, 3648 cylinders Units = シリンダ数 of 16065 * 512 = 8225280 bytes デバイス ブート 始点 終点 ブロック ID システム /dev/sda1 1 638 5124703+ b Win95 FAT32 /dev/sda2 639 1913 10241437+ f Win95 拡張領域 (LBA) /dev/sda3 1914 3130 9775552+ 83 Linux /dev/sda4 3131 3648 4160835 82 Linux スワップ /dev/sda5 639 1913 10241406 b Win95 FAT32 コマンド (m でヘルプ): q root@ttyp1[knoppix]# root@ttyp1[knoppix]# mke2fs /dev/sda3 mke2fs 1.32 (09-Nov-2002) Filesystem label= OS type: Linux Block size=4096 (log=2) Fragment size=4096 (log=2) 1224000 inodes, 2443888 blocks 122194 blocks (5.00%) reserved for the super user First data block=0 75 block groups 32768 blocks per group, 32768 fragments per group 16320 inodes per group Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632 Writing inode tables: done Writing superblocks and filesystem accounting information: done This filesystem will be automatically checked every 37 mounts or 180 days, whichever comes first. Use tune2fs -c or -i to override. root@ttyp1[knoppix]# root@ttyp1[knoppix]# mkswap /dev/sda4 Setting up swapspace version 1, size = 4260687 kB root@ttyp1[knoppix]# 注. ここでswapoff, swaponを実行するかシステムをリブートしないと スワップ領域が切り替わらない (2-1-1B). CD-ROM上のファイルをハードディスク上に展開 root@ttyp1[knoppix]# mount /dev/sda3 /mnt/sda3 root@ttyp1[knoppix]# root@ttyp1[knoppix]# mkdir -p /mnt/sda3/source/KNOPPIX root@ttyp1[knoppix]# mkdir -p /mnt/sda3/master/KNOPPIX/KNOPPIX root@ttyp1[knoppix]# root@ttyp1[knoppix]# cp -Rpv /KNOPPIX/* /mnt/sda3/source/KNOPPIX : `/KNOPPIX/var/tmp' -> `/mnt/sda3/source/KNOPPIX/var/tmp' `/KNOPPIX/var/www' -> `/mnt/sda3/source/KNOPPIX/var/www' `/KNOPPIX/var/www/index.html' -> `/mnt/sda3/source/KNOPPIX/var/www/index.html' `/KNOPPIX/var/www/search.html' -> `/mnt/sda3/source/KNOPPIX/var/www/search.html' `/KNOPPIX/var/www/users' -> `/mnt/sda3/source/KNOPPIX/var/www/users' `/KNOPPIX/var/www/wordtrans' -> `/mnt/sda3/source/KNOPPIX/var/www/wordtrans' `/KNOPPIX/var/yp' -> `/mnt/sda3/source/KNOPPIX/var/yp' `/KNOPPIX/var/yp/binding' -> `/mnt/sda3/source/KNOPPIX/var/yp/binding' `/KNOPPIX/var/yp/Makefile' -> `/mnt/sda3/source/KNOPPIX/var/yp/Makefile' `/KNOPPIX/var/yp/nicknames' -> `/mnt/sda3/source/KNOPPIX/var/yp/nicknames' `/KNOPPIX/vmlinuz' -> `/mnt/sda3/source/KNOPPIX/vmlinuz' root@ttyp1[knoppix]# root@ttyp1[knoppix]# cp -p /cdrom/KNOPPIX/*.* /mnt/sda3/master/KNOPPIX/KNOPPIX root@ttyp1[knoppix]# root@ttyp1[knoppix]# cp /cdrom/*.* /mnt/sda3/master/KNOPPIX/ root@ttyp1[knoppix]# (2-1-1C). ハードディスク上に展開したファイルを追加/削除 root@ttyp1[knoppix]# chroot /mnt/sda3/source/KNOPPIX/ root@ttyp1[/]# root@ttyp1[/]# mount -t proc /proc proc root@ttyp1[/]# root@ttyp1[dhcpc]# pwd /etc/dhcpc root@ttyp1[dhcpc]# ls -l 合計 8 -rw-r--r-- 1 root root 343 2001-06-05 13:41 config -rw-r--r-- 1 root knoppix 49 2003-03-27 00:53 resolv.conf root@ttyp1[dhcpc]# mv resolv.conf resolv.conf-org root@ttyp1[dhcpc]# cp resolv.conf-org resolv.conf root@ttyp1[dhcpc]# vi resolv.conf # Insert nameservers here # nameserver 127.0.0.1 search nameserver 130.87.152.1 nameserver 130.87.34.2 nameserver 130.87.34.3 ~ ~ E138: Can't write viminfo file /home/knoppix/.viminfo! Hit ENTER or type command to continue root@ttyp1[dhcpc]# root@ttyp1[dhcpc]# cat resolv.conf # Insert nameservers here # nameserver 127.0.0.1 search nameserver 130.87.152.1 nameserver 130.87.34.2 nameserver 130.87.34.3 root@ttyp1[dhcpc]# root@ttyp1[share]# pwd /usr/share root@ttyp1[share]# du -k : 56 ./zoneinfo/SystemV 52 ./zoneinfo/US 6712 ./zoneinfo 675776 . root@ttyp1[share]# ls WINGs doc-base java rtf2latex WindowMaker dpkg jpilot samba XaoS emacs kbackup sane a2ps emacs21 kdoc screen aclocal enscript kernel-package services aclocal-1.7 et keymaps servicetypes alien etable kismet sgml-base alsa ethereal knoppix sitar amanda ettercap knoppix-terminalserver slrn apache evolution language-env sndconfig apmd fluxbox lftp sodipodi applets fonts libgphoto2 sounds application-registry foomatic libical-evolution squid applnk ftape-tools libtool tabset apps gal linda tasksel arpwatch games lintian tct aumix-gtk gettext locale templates autoconf ghostscript lyx terminfo automake-1.7 gimp mailx texinfo autostart glib-2.0 man texmf awk gnibbles man-db themes base-config gnobots2 mc tipptrainer base-files gnome menu tix4.1 base-passwd gnome-pilot mime-info tk8.3 bb gnome-print mimelnk trans binfmts gnumeric mindi type-convert bison gnupg misc unidata bochs gpa modconf usbutils bonobo gpsdrive mondo util-linux bonobo-conf grace mpage vgabios bug groff mysql videolan calendar gs-esp nmap videomodes cdrdao gtk-doc oaf vim common-licenses gtkam ogonkify vncserver config gtkhtml-1.1 omf wallpapers configlets guppi perl wine console hwdata perl5 wmakerconf consolefonts i18n pilot-link wnn consoletrans icewm pixmaps wordtrans control-center icons pnm2ppa wprint cups idl pnp.ids wx curl ifupdown po-debconf xfce debconf images ppp xfig debhelper info psi xine defoma initrd-tools pspell xmms devscripts ircII qcad xpdf dict isdn qt3 xviddetect dlint isdn-config rdesktop zile doc isdnvboxserver rosegarden zoneinfo root@ttyp1[share]# root@ttyp1[share]# pwd /usr/share root@ttyp1[share]# rm -rf doc root@ttyp1[share]# rm -rf games root@ttyp1[share]# rm -rf texmf root@ttyp1[share]# du -k 2228 ./zoneinfo/right 56 ./zoneinfo/SystemV 52 ./zoneinfo/US 6712 ./zoneinfo 415324 . root@ttyp1[share]# これで260MBの空領域ができた。 compact.tar.gzファイルを組み込む。 root@ttyp1[/]# pwd / root@ttyp1[/]# ls -l 合計 104 drwxr-xr-x 2 root root 4096 2003-03-23 01:55 bin drwxr-xr-x 2 root root 4096 2003-03-27 00:55 boot drwxr-xr-x 2 root root 4096 2003-03-31 13:50 cdrom drwxr-xr-x 10 root root 32768 2003-04-07 10:27 dev drwxr-xr-x 143 root root 8192 2003-04-07 10:55 etc drwxr-xr-x 2 root root 4096 2001-04-15 09:45 floppy drwxrwsr-x 2 root staff 4096 2003-03-28 15:19 home drwxr-xr-x 2 root root 4096 2001-04-15 09:45 initrd drwxr-xr-x 7 root root 4096 2003-03-23 01:56 lib drwx------ 2 root root 4096 2003-03-27 00:24 lost+found drwxr-xr-x 5 root root 4096 2003-04-07 10:55 mnt drwxr-xr-x 2 root root 4096 2002-11-27 10:05 none drwxr-xr-x 3 root root 4096 2003-04-03 16:43 opt dr-xr-xr-x 58 root root 0 2003-05-30 19:45 proc drwxr-xr-x 2 root root 4096 2003-03-25 08:51 root drwxr-xr-x 2 root root 8192 2003-03-25 07:44 sbin lrwxrwxrwx 1 root root 8 2003-05-30 11:16 tmp -> /var/tmp drwxr-xr-x 14 root root 4096 2002-08-17 20:49 usr drwxr-xr-x 16 root root 4096 2003-04-07 10:55 var lrwxrwxrwx 1 root root 23 2003-05-30 11:54 vmlinuz -> boot/vmlinuz-2.4.20-xfs root@ttyp1[/]# mkdir TOYO root@ttyp1[/]# root@ttyp1[/]# mount 130.87.153.9:/home2/onlpara-wrk /mnt root@ttyp1[/]# ls -l /mnt/root/knoppix 合計 149420 -rw-r--r-- 1 nobody nogroup 152848889 2003-05-29 14:00 compact.tar.gz root@ttyp1[/]# ls -l TOYO 合計 0 root@ttyp1[/]# cp /mnt/root/knoppix/compact.tar.gz TOYO root@ttyp1[/]# ls -l TOYO 合計 149420 -rw-r--r-- 1 root root 152848889 2003-05-30 14:03 compact.tar.gz root@ttyp1[/]# root@ttyp1[/]# df -k Filesystem 1K-ブロック 使用 使用可 使用% マウント位 rootfs 9621880 1841196 7291908 21% / /dev/root.old 9621880 1841196 7291908 21% / none 9621880 1841196 7291908 21% /dev/pts /dev/scd0 9621880 1841196 7291908 21% /cdrom df: `/KNOPPIX': そのようなファイルやディレクトリはありません df: `/ramdisk': そのようなファイルやディレクトリはありません df: `/mnt/sda3': そのようなファイルやディレクトリはありません 130.87.153.9:/home2/onlpara-wrk 22659864 1159192 20349616 6% /mnt root@ttyp1[/]# umount /mnt root@ttyp1[/]# root@ttyp1[/]# cd etc/dhcpc root@ttyp1[dhcpc]# ls -l 合計 12 -rw-r--r-- 1 root root 343 2001-06-05 13:41 config -rw-r--r-- 1 root root 126 2003-05-30 13:18 resolv.conf -rw-r--r-- 1 root knoppix 49 2003-03-27 00:53 resolv.conf-org root@ttyp1[dhcpc]# rm resolv.conf rm: remove 通常ファイル `resolv.conf'? y root@ttyp1[dhcpc]# mv resolv.conf-org resolv.conf root@ttyp1[dhcpc]# ls -l 合計 8 -rw-r--r-- 1 root root 343 2001-06-05 13:41 config -rw-r--r-- 1 root knoppix 49 2003-03-27 00:53 resolv.conf root@ttyp1[dhcpc]# root@ttyp1[dhcpc]# updatedb root@ttyp1[dhcpc]# umount /proc root@ttyp1[dhcpc]# exit exit root@ttyp1[knoppix]# df -k Filesystem 1K-ブロック 使用 使用可 使用% マウント位 /dev/root 1971 1454 517 74% / /dev/cdrom 717056 717056 0 100% /cdrom /dev/cloop 1783328 1783328 0 100% /KNOPPIX /dev/shm 408924 11312 397612 3% /ramdisk /dev/sda3 9621880 1840740 7292364 21% /mnt/sda3 root@ttyp1[knoppix]# root@ttyp1[knoppix]# touch /mnt/sda3/master/KNOPPIX/KNOPPIX/ MyKNOPPIX-May30-2003 root@ttyp1[knoppix]# (2-1-1D). 圧縮ルートイメージの作成 root@ttyp1[knoppix]# mkisofs -R -l -V "My KNOPPIX iso9660 filesystem" -hide-rr-moved -v /mnt/sda3/source/KNOPPIX | create_compressed_fs - 65536 > /mnt/sda3/master/KNOPPIX/KNOPPIX/KNOPPIX : Block# 26642 size 65536 -> 65562 [compression ratio 100%, overall: 41%] Block# 26643 size 65536 -> 64750 [compression ratio 98%, overall: 41%] Block# 26644 size 65536 -> 65562 [compression ratio 100%, overall: 41%] Block# 26645 size 65536 -> 65169 [compression ratio 99%, overall: 41%] Total translation table size: 0 Total rockridge attributes bytes: 8970012 Total directory bytes: 22941696 Path table size(bytes): 91016 Done with: The File(s) Block(s) 841349 Writing: Ending pad block Start Block 852700 Block# 26646 size 65536 -> 55851 [compression ratio 85%, overall: 41%] Done with: Ending pad block Block(s) 20 Max brk space used 329f904 852720 extents written (1665 Mb) Partial read (32768 bytes of 65536), padding with zeros. Block# 26647 size 32768 -> 84 [compression ratio 0%, overall: 41%] Block size 65536, number of blocks 26648. Done. root@ttyp1[knoppix]# (2-1-1E). 独自 KNOPPIX iso ファイルの作成 (ここで作業を中断してKNOPPIXをリブートしたので再マウントしている) root@ttyp0[knoppix]# fdisk /dev/sda このディスクのシリンダ数は 3648 に設定されています。 間違いではないのですが、1024 を超えているため、以下の場合 に問題を生じうる事を確認しましょう: 1) ブート時に実行するソフトウェア (例. バージョンが古い LILO) 2) 別の OS のブートやパーティション作成ソフト (例. DOS FDISK, OS/2 FDISK) コマンド (m でヘルプ): p Disk /dev/sda: 30.0 GB, 30005821440 bytes 255 heads, 63 sectors/track, 3648 cylinders Units = シリンダ数 of 16065 * 512 = 8225280 bytes デバイス ブート 始点 終点 ブロック ID システム /dev/sda1 1 638 5124703+ b Win95 FAT32 /dev/sda2 639 1913 10241437+ f Win95 拡張領域 (LBA) /dev/sda3 1914 3130 9775552+ 83 Linux /dev/sda4 3131 3648 4160835 82 Linux スワップ /dev/sda5 639 1913 10241406 b Win95 FAT32 コマンド (m でヘルプ): q root@ttyp0[knoppix]# root@ttyp0[knoppix]# mkdir /mnt1 root@ttyp0[knoppix]# mkdir /mnt2 root@ttyp0[knoppix]# mount /dev/sda1 /mnt2 root@ttyp0[knoppix]# mount /dev/sda3 /mnt1 root@ttyp0[knoppix]# df -k Filesystem 1K-ブロック 使用 使用可 使用% マウント位置 /dev/root 1971 1453 518 74% / /dev/cdrom 717056 717056 0 100% /cdrom /dev/cloop 1783328 1783328 0 100% /KNOPPIX /dev/shm 408924 11216 397708 3% /ramdisk /dev/sda1 5114692 8 5114684 1% /mnt2 /dev/sda3 9621880 2542880 6590224 28% /mnt1 root@ttyp0[knoppix]# root@ttyp0[KNOPPIX]# pwd /mnt1/master/KNOPPIX root@ttyp0[KNOPPIX]# root@ttyp0[KNOPPIX]# ls -l 合計 28 drwxr-xr-x 2 root root 4096 2003-05-30 15:35 KNOPPIX -r-xr-xr-x 1 root root 54 2003-05-30 13:09 autorun.bat -r--r--r-- 1 root root 45 2003-05-30 13:09 autorun.inf -r--r--r-- 1 root root 3262 2003-05-30 13:09 cdrom.ico -r-xr-xr-x 1 root root 3433 2003-05-30 13:09 index.html -r--r--r-- 1 root root 1083 2003-05-30 13:09 index.html.orig.gz -r--r--r-- 1 root root 2021 2003-05-30 13:09 music.html root@ttyp0[KNOPPIX]# root@ttyp0[KNOPPIX]# mkisofs -l -r -J -V "My-KNOPPIX" -hide-rr-moved -v -b KNOPPIX/boot.img -c KNOPPIX/boot.cat -o ../my-knoppix.iso /mnt1/master/KNOPPIX mkisofs 2.0 (i686-pc-linux-gnu) Scanning /mnt1/master/KNOPPIX Scanning /mnt1/master/KNOPPIX/KNOPPIX Writing: Initial Padbock Start Block 0 Done with: Initial Padbock Block(s) 16 Writing: Primary Volume Descriptor Start Block 16 Done with: Primary Volume Descriptor Block(s) 1 Writing: Eltorito Volume Descriptor Start Block 17 Size of boot image is 2880 sectors -> Emulating a 1440 kB floppy Done with: Eltorito Volume Descriptor Block(s) 1 Writing: Joliet Volume Descriptor Start Block 18 Done with: Joliet Volume Descriptor Block(s) 1 Writing: End Volume Descriptor Start Block 19 Done with: End Volume Descriptor Block(s) 1 Writing: Version block Start Block 20 Done with: Version block Block(s) 1 Writing: Path table Start Block 21 Done with: Path table Block(s) 4 Writing: Joliet path table Start Block 25 Done with: Joliet path table Block(s) 4 Writing: Directory tree Start Block 29 Done with: Directory tree Block(s) 4 Writing: Joliet directory tree Start Block 33 Done with: Joliet directory tree Block(s) 2 Writing: Directory tree cleanup Start Block 35 Done with: Directory tree cleanup Block(s) 0 Writing: Extension record Start Block 35 Done with: Extension record Block(s) 1 Writing: The File(s) Start Block 36 1.41% done, estimate finish Sat May 31 16:38:44 2003 2.83% done, estimate finish Sat May 31 16:38:08 2003 4.24% done, estimate finish Sat May 31 16:51:43 2003 5.65% done, estimate finish Sat May 31 16:48:10 2003 7.07% done, estimate finish Sat May 31 16:46:45 2003 8.48% done, estimate finish Sat May 31 16:51:30 2003 9.89% done, estimate finish Sat May 31 16:49:52 2003 11.31% done, estimate finish Sat May 31 16:51:51 2003 12.72% done, estimate finish Sat May 31 16:51:35 2003 14.13% done, estimate finish Sat May 31 16:50:25 2003 15.54% done, estimate finish Sat May 31 16:52:41 2003 16.96% done, estimate finish Sat May 31 16:51:37 2003 18.37% done, estimate finish Sat May 31 16:50:48 2003 19.78% done, estimate finish Sat May 31 16:52:28 2003 21.19% done, estimate finish Sat May 31 16:51:43 2003 22.61% done, estimate finish Sat May 31 16:52:36 2003 24.02% done, estimate finish Sat May 31 16:52:20 2003 25.44% done, estimate finish Sat May 31 16:51:43 2003 26.85% done, estimate finish Sat May 31 16:52:54 2003 28.26% done, estimate finish Sat May 31 16:52:15 2003 29.67% done, estimate finish Sat May 31 16:52:03 2003 31.09% done, estimate finish Sat May 31 16:52:44 2003 32.50% done, estimate finish Sat May 31 16:52:17 2003 33.91% done, estimate finish Sat May 31 16:52:48 2003 35.32% done, estimate finish Sat May 31 16:52:39 2003 36.74% done, estimate finish Sat May 31 16:52:15 2003 38.15% done, estimate finish Sat May 31 16:52:59 2003 39.57% done, estimate finish Sat May 31 16:52:33 2003 40.98% done, estimate finish Sat May 31 16:52:46 2003 42.39% done, estimate finish Sat May 31 16:53:03 2003 43.80% done, estimate finish Sat May 31 16:53:28 2003 45.22% done, estimate finish Sat May 31 16:53:22 2003 46.63% done, estimate finish Sat May 31 16:53:02 2003 48.04% done, estimate finish Sat May 31 16:53:33 2003 49.45% done, estimate finish Sat May 31 16:53:16 2003 50.87% done, estimate finish Sat May 31 16:53:13 2003 52.28% done, estimate finish Sat May 31 16:53:28 2003 53.69% done, estimate finish Sat May 31 16:53:10 2003 55.11% done, estimate finish Sat May 31 16:53:26 2003 56.52% done, estimate finish Sat May 31 16:53:22 2003 57.93% done, estimate finish Sat May 31 16:53:09 2003 59.35% done, estimate finish Sat May 31 16:53:27 2003 60.76% done, estimate finish Sat May 31 16:53:17 2003 62.17% done, estimate finish Sat May 31 16:53:14 2003 63.58% done, estimate finish Sat May 31 16:53:25 2003 65.00% done, estimate finish Sat May 31 16:53:14 2003 66.41% done, estimate finish Sat May 31 16:53:24 2003 67.82% done, estimate finish Sat May 31 16:53:20 2003 69.23% done, estimate finish Sat May 31 16:53:12 2003 70.65% done, estimate finish Sat May 31 16:53:25 2003 72.06% done, estimate finish Sat May 31 16:53:19 2003 73.48% done, estimate finish Sat May 31 16:53:19 2003 74.89% done, estimate finish Sat May 31 16:53:23 2003 76.30% done, estimate finish Sat May 31 16:53:15 2003 77.71% done, estimate finish Sat May 31 16:53:22 2003 79.13% done, estimate finish Sat May 31 16:53:19 2003 80.54% done, estimate finish Sat May 31 16:53:17 2003 81.95% done, estimate finish Sat May 31 16:53:25 2003 83.36% done, estimate finish Sat May 31 16:53:18 2003 84.78% done, estimate finish Sat May 31 16:53:18 2003 86.19% done, estimate finish Sat May 31 16:53:23 2003 87.61% done, estimate finish Sat May 31 16:53:16 2003 89.02% done, estimate finish Sat May 31 16:53:24 2003 90.43% done, estimate finish Sat May 31 16:53:21 2003 91.84% done, estimate finish Sat May 31 16:53:18 2003 93.26% done, estimate finish Sat May 31 16:53:24 2003 94.67% done, estimate finish Sat May 31 16:53:19 2003 96.08% done, estimate finish Sat May 31 16:53:22 2003 97.49% done, estimate finish Sat May 31 16:53:21 2003 98.91% done, estimate finish Sat May 31 16:53:19 2003 Total translation table size: 2048 Total rockridge attributes bytes: 3374 Total directory bytes: 6144 Path table size(bytes): 26 Done with: The File(s) Block(s) 353810 Writing: Ending pad block Start Block 353846 Done with: Ending pad block Block(s) 26 Max brk space used 9000 353872 extents written (691 Mb) root@ttyp0[KNOPPIX]# root@ttyp0[master]# pwd /mnt1/master root@ttyp0[master]# ls -l 合計 708444 drwxr-xr-x 3 root root 4096 2003-05-30 13:09 KNOPPIX -rw-r--r-- 1 root root 724729856 2003-05-31 16:53 my-knoppix.iso root@ttyp0[master]# (2-1-1E). 独自 KNOPPIX iso ファイルの作成 作成したisoファイルは my-knoppix.iso と名付けた。 Windows XPの "Easy CD Creator" を使ってCDを焼いた。 (2-2-2). my-knoppix.isoで作成したKNOPPIXの実行 CDから起動して、"BOOT:" のプロンプトが表示された時のキー入力は正常。 KNOPPIXが立ち上がってからも何も問題はない。 (2-2-3). KNOPPIXのCDに組み込んだ compact.tar.gzからの復旧 (2-2-2A). コンパクトフラッシュの準備 root@ttyp2[my-knoppix-iso]# /sbin/fdisk /dev/sda コマンド (m でヘルプ): m コマンドの動作 a ブート可能フラグをつける b bsd ディスクラベルを編集する c dos 互換フラグをつける d 領域を削除する l 既知の領域タイプをリスト表示する m このメニューを表示する n 新たに領域を作成する o 新たに空の DOS 領域テーブルを作成する p 領域テーブルを表示する q 変更を保存せずに終了する s 空の Sun ディスクラベルを作成する t 領域のシステム ID を変更する u 表示/項目ユニットを変更する v 領域テーブルを照合する w テーブルをディスクに書き込み、終了する x 特別な機能 (エキスパート専用) コマンド (m でヘルプ): p Disk /dev/sda: 512 MB, 512483328 bytes 16 heads, 63 sectors/track, 993 cylinders Units = シリンダ数 of 1008 * 512 = 516096 bytes デバイス ブート 始点 終点 ブロック ID システム /dev/sda1 1 993 500440+ 83 Linux コマンド (m でヘルプ): d Selected partition 1 コマンド (m でヘルプ): n コマンドアクション e 拡張 p 基本領域 (1-4) p 領域番号 (1-4): 1 最初 シリンダ (1-993, 初期値 1): 初期値 1 を使います 終点 シリンダ または +サイズ または +サイズM または +サイズK (1-993, 初期値 993): 初期値 993 を使います コマンド (m でヘルプ): p Disk /dev/sda: 512 MB, 512483328 bytes 16 heads, 63 sectors/track, 993 cylinders Units = シリンダ数 of 1008 * 512 = 516096 bytes デバイス ブート 始点 終点 ブロック ID システム /dev/sda1 1 993 500440+ 83 Linux コマンド (m でヘルプ): w 領域テーブルは交換されました! ioctl() を呼び出して領域テーブルを再読込みしま ディスクを同期させま root@ttyp2[my-knoppix-iso]# root@ttyp2[my-knoppix-iso]# mke2fs -j /dev/sda1 mke2fs 1.32 (09-Nov-2002) Filesystem label= OS type: Linux Block size=1024 (log=0) Fragment size=1024 (log=0) 125488 inodes, 500440 blocks 25022 blocks (5.00%) reserved for the super user First data block=1 62 block groups 8192 blocks per group, 8192 fragments per group 2024 inodes per group Superblock backups stored on blocks: 8193, 24577, 40961, 57345, 73729, 204801, 221185, 401409 Writing inode tables: done Creating journal (8192 blocks): done Writing superblocks and filesystem accounting information: done This filesystem will be automatically checked every 22 mounts or 180 days, whichever comes first. Use tune2fs -c or -i to override. root@ttyp2[my-knoppix-iso]# root@ttyp2[my-knoppix-iso]# mount -t ext3 /dev/sda1 /mnt/sda1 root@ttyp2[my-knoppix-iso]# df -k Filesystem 1K-ブロック 使用 使用可 使用% マウント位 /dev/root 1971 1456 515 74% / /dev/cdrom 707744 707744 0 100% /cdrom /dev/cloop 1705440 1705440 0 100% /KNOPPIX /dev/shm 408932 8604 400328 3% /ramdisk /dev/hda2 39029916 13266544 25763372 34% /mnt/hda2 /dev/sdb3 9621880 5385860 3747244 59% /mnt/sdb3 /dev/sda1 484602 8239 451341 2% /mnt/sda1 root@ttyp2[my-knoppix-iso]# (2-2-2B). compact.tar.gzを展開 root@ttyp2[my-knoppix-iso]# cd /mnt/sda1 root@ttyp2[sda1]# pwd /mnt/sda1 root@ttyp2[sda1]# ls -l 合計 12 drwx------ 2 root root 12288 2003-06-05 16:10 lost+found root@ttyp2[sda1]# ls -l /KNOPPIX/TOYO 合計 149267 -rw-r--r-- 1 root root 152848889 2003-05-30 14:03 compact.tar.gz root@ttyp2[sda1]# tar xzf /KNOPPIX/TOYO/compact.tar.gz root@ttyp2[sda1]# root@ttyp2[sda1]# pwd /mnt/sda1 root@ttyp2[sda1]# ls -l 合計 135 drwxr-xr-x 2 root root 2048 2003-05-14 22:49 bin drwxr-xr-x 3 root root 1024 2003-05-22 10:51 boot drwxr-xr-x 20 root root 116736 2003-05-29 08:23 dev drwxr-xr-x 25 root root 2048 2003-05-29 08:23 etc drwxr-xr-x 5 root root 1024 2003-05-14 22:59 home drwxr-xr-x 2 root root 1024 2001-06-22 03:32 initrd drwxr-xr-x 5 root root 3072 2003-05-14 22:50 lib drwx------ 2 root root 1024 2003-05-14 22:35 lost+found drwxr-xr-x 3 root root 1024 2003-05-14 14:07 mnt drwxr-xr-x 2 root root 1024 1999-08-24 01:03 opt drwxr-xr-x 2 root root 1024 2003-05-14 22:35 proc drwxr-xr-x 4 root root 1024 2003-05-14 14:19 ramfs drwxr-x--- 3 root root 1024 2003-05-22 10:33 root drwxr-xr-x 2 root root 3072 2003-05-14 22:49 sbin lrwxrwxrwx 1 root root 9 2003-06-05 16:17 tmp -> ramfs/tmp drwxr-xr-x 16 root root 1024 2003-05-19 14:59 usr lrwxrwxrwx 1 root root 9 2003-06-05 16:17 var -> ramfs/var root@ttyp2[sda1]# root@ttyp2[sbin]# e2label /dev/sda1 root@ttyp2[sbin]# e2label /dev/sda1 / root@ttyp2[sbin]# e2label /dev/sda1 / root@ttyp2[sbin]# root@ttyp2[sda1]# cd sbin root@ttyp2[sbin]# ls -l grub -rwxr-xr-x 1 root root 248416 2002-09-06 05:59 grub root@ttyp2[sbin]# ./grub Probing devices to guess BIOS drives. This may take a long time. GRUB version 0.92 (640K lower / 3072K upper memory) [ Minimal BASH-like line editing is supported. For the first word, TAB lists possible command completions. Anywhere else TAB lists the possible completions of a device/filename. ] grub> root (hd1,0) Filesystem type is ext2fs, partition type 0x83 grub> setup (hd1) Checking if "/boot/grub/stage1" exists... yes Checking if "/boot/grub/stage2" exists... yes Checking if "/boot/grub/e2fs_stage1_5" exists... yes Running "embed /boot/grub/e2fs_stage1_5 (hd1)"... 22 sectors are embedded. succeeded Running "install /boot/grub/stage1 (hd1) (hd1)1+22 p (hd1,0)/boot/grub/stage2 /boot/grub/grub.conf"... succeeded Done. grub> quit root@ttyp2[sbin]# 注. "root (hd1,0)" および "setup (hd1)" のコマンドで指定するハードディス クの番号は、ユーザの使用環境によって変わる。 私の環境では、 内蔵IDEハードディスク : /dev/hda hd0 USB-コンパクトフラッシュR/Wアダプタ : /dev/sda hd1 外部USBディスク : /dev/sdb hd2 となっている。 (2-2-2C). 作成したコンパクトフラッシュを起動 onlsun1[35]% ssh onlsbc1 inoue@onlsbc1's password: [inoue@onlsbc1 inoue]$ ls -l / 合計 134 drwxr-xr-x 2 root root 2048 5月 14 22:49 bin drwxr-xr-x 3 root root 1024 5月 22 10:51 boot drwxr-xr-x 20 root root 116736 6月 5 17:09 dev drwxr-xr-x 25 root root 2048 6月 5 17:08 etc drwxr-xr-x 5 root root 1024 5月 14 22:59 home drwxr-xr-x 2 root root 1024 6月 22 2001 initrd drwxr-xr-x 5 root root 3072 5月 14 22:50 lib drwx------ 2 root root 1024 5月 14 22:35 lost+found drwxr-xr-x 3 root root 1024 5月 14 14:07 mnt drwxr-xr-x 2 root root 1024 8月 24 1999 opt dr-xr-xr-x 36 root root 0 6月 6 2003 proc drwxr-xr-x 5 root root 1024 6月 5 17:08 ramfs drwxr-x--- 3 root root 1024 5月 22 10:33 root drwxr-xr-x 2 root root 3072 5月 14 22:49 sbin lrwxrwxrwx 1 root root 9 6月 5 16:17 tmp -> ramfs/tmp drwxr-xr-x 16 root root 1024 5月 19 14:59 usr lrwxrwxrwx 1 root root 9 6月 5 16:17 var -> ramfs/var [inoue@onlsbc1 inoue]$ ok. システムは正常に立ち上がった。 これで、KNOPPIXのCD-ROMに組み込んだ compact.tar.gzファイルから、コンパク トフラッシュへシステムを復旧する環境ができた。 ---xxxxx