disk operating system part 001
データーの領域を確保しましょう 約 300MB 位を 用意します。なんで 約 300MB なの? というのは
# mount -t msdos /dev/hda1 /mnt/ # df | sed 2d Filesystem 1k-blocks Used Available Use% Mounted on /dev/hda1 986024 213412 772612 22% /mnt # umount /mnt/ /* 概略の 計算をしましょう。使用されているのが 213412 blocks */ $ bc -q 213412*1024 218533888 ===> 218,533,888 bytes
ということです。ほな作成しまひょう
# dd if=/dev/zero of=freedos_hda1 bs=1k count=300000 300000+0 records in 300000+0 records out # ls -l total 300300 -rw-r--r-- 1 root root 307200000 Jul 28 09:55 freedos_hda1
loopback で mount するための ディレクトリを 作成しておきます。
# mkdir pmnt
領域は取り敢えず ext2 にて作成してみます。もちろん mkdosfs ということ も 考えられますが
# mkfs -t ext2 -L freedos_backup freedos_hda1 mke2fs 1.34 (25-Jul-2003) freedos_hda1 is not a block special device. Proceed anyway? (y,n) y Filesystem label=freedos_backup OS type: Linux Block size=1024 (log=0) Fragment size=1024 (log=0) 75184 inodes, 300000 blocks 15000 blocks (5.00%) reserved for the super user First data block=1 37 block groups 8192 blocks per group, 8192 fragments per group 2032 inodes per group Superblock backups stored on blocks: 8193, 24577, 40961, 57345, 73729, 204801, 221185 Writing inode tables: done Writing superblocks and filesystem accounting information: done This filesystem will be automatically checked every 38 mounts or 180 days, whichever comes first. Use tune2fs -c or -i to override.
ほたら loopback で mount してみましょう。
# mount -t ext2 -o loop freedos_hda1 pmnt/ # df Filesystem 1k-blocks Used Available Use% Mounted on /dev/hdb3 7617504 2992500 4231816 42% / /home/mm/f_backup/bk_freedos/freedos_hda1 290503 13 275490 1% /home/mm/f_backup/bk_freedos/pmnt # umount pmnt/
これで /dev/hda1 に ある データー を 退避させる 準備が出来ました、本 当のところは 此処に もう freedos が 試験的にインストールしてあるのです。 しかしながら インストールした方法の 備忘録が 残っていないので 再度 イン ストールを試みる事にしたのです。
当然退避させる 領域と 現在の /dev/hda1 の 容量は 異なっています。こ れを美味く吸収してもらうために parted を 使用します。
# parted freedos_hda1 /* 美味く行く事を 願って */ GNU Parted 1.6.11 Copyright (C) 1998 - 2004 Free Software Foundation, Inc. This program is free software, covered by the GNU General Public License. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. Using /home/mm/f_backup/bk_freedos/freedos_hda1 (parted) cp Source device? [/home/mm/f_backup/bk_freedos/freedos_hda1]? /dev/hda Warning: Unable to determine if partitions are mounted via /proc/mounts or /etc/mtab. Make sure you don't attempt to resize or modify mounted file systems. (Even read-only mounted) Ignore/Cancel? Ignore Source partition number? 1 Destination partition number? 1 moving data... 18% (time left 00:40) /* 動いている様です */ (parted) quit
終わったようですので 内容を 確認しておきましょう
# mount -t msdos -o loop freedos_hda1 pmnt/ # df Filesystem 1k-blocks Used Available Use% Mounted on /dev/hdb3 7617504 2992500 4231816 42% / /home/mm/f_backup/bk_freedos/freedos_hda1 299392 213412 85980 72% /home/mm/f_backup/bk_freedos/pmnt # ls pmnt/ autoexec.bat* device.raw* fdos/ gem.bat* kernel.sys* shell.raw* command.com* fdconfig.sys* freedos.bss* gemapps/ setup.bat* # umount pmnt/
後 美味く 復帰 しない場合を 考えて 所謂 mbr というものも 保存してお きましょう。
# dd if=/dev/hda of=512_dev_hda_freedos bs=512 count=1 1+0 records in 1+0 records out # ls -l total 300308 -rw-r--r-- 1 root root 512 Jul 28 11:33 512_dev_hda_freedos -rw-r--r-- 1 root root 307200000 Jul 28 10:11 freedos_hda1 drwxr-xr-x 2 root root 4096 Jul 28 09:56 pmnt/
データーの退避は 終了しました。 本来は これを 又 /dev/hda1 に 戻して 美味く動くか 検証した後 CDROM に 焼き付ける ということなのです。データー の 復帰を 試しておきましょう。
今回の parted の 方法は ”# info parted ”に 有るものを 参考に しまし た
にゃんたろう 拝!
2007年 7月28日 (土) 21:03:13 JST 作成
disk operating system part 001
Copyright © 2007. fdopstm All Rights Reserved.