windows を /dev/hda に インストール

前に |次へ

windows2000 backup 再度

少し 趣向を 変えてみよう

backup

windows2000 の 領域を 縮小して backup を 試みる。再度 領域を 見よう

# mount /dev/hda9 /mnt/
# cd /mnt/backup_win2k_dev_hda1/
# ls -l
total 2050268
-rw-r--r--    1 root     root     2097414144 Jul  6 12:24 dev-hda1-win2k
-rw-r--r--    1 root     root          512 Jul  6 12:25 hda-512-win2k
# mkdir www

loop back mount

領域を loop back mount してみると

# mount -t vfat -o loop dev-hda1-win2k www/
# df   
Filesystem           1k-blocks      Used Available Use% Mounted on
/dev/hda12             9461416   2623404   6349640  30% /
/dev/hda9              9614116   2050284   7075460  23% /mnt
/mnt/backup_win2k_dev_hda1/dev-hda1-win2k
                       2044244   1128696    915548  56% /mnt/backup_win2k_dev_hda1/www
# du -h www
...
...
26M     www/Program Files
1.1G    www

# umount www/
# cd
# umount /mnt/

要するに 1.2 GB 有れば 収納できるべや んでもって 再度 領域を 再構築す べえ

# fdisk -l /dev/hda

Disk /dev/hda: 255 heads, 63 sectors, 10011 cylinders
Units = cylinders of 16065 * 512 bytes

   Device Boot    Start       End    Blocks   Id  System
/dev/hda1             1       155   1245006    c  Win95 FAT32 (LBA)
/dev/hda2           156       370   1726987+  83  Linux
/dev/hda3           371      8524  65497005    f  Win95 Ext'd (LBA)
/dev/hda4          8525     10011  11944327+  83  Linux
/dev/hda5           371       857   3911796   1c  Hidden Win95 FAT32 (LBA)
/dev/hda6           858      1227   2971993+  82  Linux swap
/dev/hda7          1228      2444   9775521   83  Linux
/dev/hda8          2445      3660   9767488+  83  Linux
/dev/hda9          3661      4876   9767488+  83  Linux
/dev/hda10         4877      6092   9767488+  83  Linux
/dev/hda11         6093      7308   9767488+  83  Linux
/dev/hda12         7309      8524   9767488+  83  Linux
# fdisk -lu /dev/hda

Disk /dev/hda: 255 heads, 63 sectors, 10011 cylinders
Units = sectors of 1 * 512 bytes

   Device Boot    Start       End    Blocks   Id  System
/dev/hda1            63   2490074   1245006    c  Win95 FAT32 (LBA)
/dev/hda2       2490075   5944049   1726987+  83  Linux
/dev/hda3       5944050 136938059  65497005    f  Win95 Ext'd (LBA)
/dev/hda4     136938060 160826714  11944327+  83  Linux
/dev/hda5       5944113  13767704   3911796   1c  Hidden Win95 FAT32 (LBA)
/dev/hda6      13767768  19711754   2971993+  82  Linux swap
/dev/hda7      19711818  39262859   9775521   83  Linux
/dev/hda8      39262923  58797899   9767488+  83  Linux
/dev/hda9      58797963  78332939   9767488+  83  Linux
/dev/hda10     78333003  97867979   9767488+  83  Linux
/dev/hda11     97868043 117403019   9767488+  83  Linux
/dev/hda12    117403083 136938059   9767488+  83  Linux

この位だと どうだんべさ?

$ bc -q

1245006*1024
1274886144           1,274,886,144  1.27 GB

ほんでもって

# mkdosfs -F 32 -n win2k /dev/hda1
mkdosfs 2.7 (14 Feb 2001)
# mount /dev/hda9 /mnt/

parted

まず /dev/hda1 の領域に 再度 parted にて backup から コピーすべえ

# mount /dev/hda1 /mnt/
# df
Filesystem           1k-blocks      Used Available Use% Mounted on
/dev/hda12             9461416   2623280   6349764  30% /
/dev/hda1              1242560         4   1242556   1% /mnt
# umount /mnt/
# mount /dev/hda9 /mnt/
# cd /mnt/backup_win2k_dev_hda1/
# parted /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                                                     
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 /dev/hda
Information: The operating system thinks the geometry on /dev/hda is      
10011/255/63.  Therefore, cylinder 1024 ends at 8032.499M.
(parted) cp                                                               
Source device?  [/dev/hda]? dev-hda1-win2k                                
Source partition number? 1                                                
Destination partition number? 1                                           
moving data... 3%       (time left 02:58)                        
(parted) quit                                                             
Information: Don't forget to update /etc/fstab, if necessary.             
# cd
# umount /mnt/

込具合を 確認すると

# mount /dev/hda1 /mnt/
# df
Filesystem           1k-blocks      Used Available Use% Mounted on
/dev/hda12             9461416   2623292   6349752  30% /
/dev/hda1              1242556   1128696    113860  91% /mnt

これを 起動できれば良いのだが

# cat /mnt/boot.ini 
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINNT
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINNT="Microsoft Windows 2000 Professional" /fastdetect

# ls /mnt/
Documents and Settings/  boot.ini*      config.sys*  ntdetect.com*  winnt/
Program Files/           bootfont.bin*  io.sys*      ntldr*
autoexec.bat*            bootsect.dos*  msdos.sys*   pagefile.sys*
# umount /mnt/

まず 縮小コピー は成功 但し、起動は windows2000 のものでないと 起動しない 本来は 起動しても 良いはずであるが なにかが 変わっているのでしょう 取り 敢えず windows2000 の 起動ディスクの boot.ini を 上記の ものと 同じ内容 に変更したものでの 起動は 可能

backup

領域を 縮小した /dev/hda1 に backup から parted にて コピー したもの は windows2000 の 起動ディスク でもって 起動は 可能 但し windows2000 の 起動ディスクの boot.ini ファイルは /dev/hda1 領域 1に 変更したもの

補足

最初 /dev/hda1 に windows2000 を インストールしました。

# fdisk -l /dev/hda /* 最初の 領域  */

Disk /dev/hda: 255 heads, 63 sectors, 10011 cylinders
Units = cylinders of 16065 * 512 bytes

   Device Boot    Start       End    Blocks   Id  System
/dev/hda1   *         1       255   2048256    c  Win95 FAT32 (LBA)

# fdisk -l /dev/hda    /* 縮小領域に コピー  */

Disk /dev/hda: 255 heads, 63 sectors, 10011 cylinders
Units = cylinders of 16065 * 512 bytes

   Device Boot    Start       End    Blocks   Id  System
/dev/hda1   *         1       155   1245006    c  Win95 FAT32(LBA)

それを backup して 保存していました。 領域の 使用状況から 判断しても う少し 小さな領域に コピー 出来るのでは ということで backup から 小さな 領域に parted にて コピー しました。 ここでは 省略したが mbr の 最初の 446 bytes 書き込みしても windows2000 は 起動はしない 但し、windows2000 の起動ディスクの boot.ini を /dev/hda1 領域 1 のものに 変更したものから は起動できる。

想像ですが mbr の情報 は 新しく 変更しないといけないかもしれない。ま た windows 98 の起動ディスク での fdisk /mbr を 行わないで linux でのみ 処理しているので 領域の 変更には 追従出来ていないのかも 知れないが windows2000 の 起動ディスクで 起動すると いう事を 考えると ファイルは 破 損していない と考えられる。と勝手に 判断して この 小さな領域を backup す る。

# mount /dev/hda9 /mnt/
# cd /mnt/
# cd backup_win2k_dev_hda1/
# ls -l
total 2050268
-rw-r--r--    1 root     root     2097414144 Jul  6 12:24 dev-hda1-win2k
-rw-r--r--    1 root     root          512 Jul  6 12:25 hda-512-win2k
# dd if=/dev/hda1 of=small_hda1_win2k bs=1k
1245006+0 records in
1245006+0 records out
# df
Filesystem           1k-blocks      Used Available Use% Mounted on
/dev/hda12             9461416   2623356   6349688  30% /
/dev/hda9              9614116   3296508   5829236  37% /mnt
# ls -l
total 3296496
-rw-r--r--    1 root     root     2097414144 Jul  6 12:24 dev-hda1-win2k
-rw-r--r--    1 root     root          512 Jul  6 12:25 hda-512-win2k
-rw-r--r--    1 root     root     1274886144 Jul  8 09:43 small_hda1_win2k

つまり 無駄ですが windows2000 の backup として 2個 保存した 状況になっているのです。

現在の 状況を 再度 確認すると windows2000 の backup を 2組 持っている 元もとのものから と それを 縮小した領域に コピー した物に 対する backup の 2種類 ある なんで そういうややこしい事を するのだ というの はおいといて 現状は そうなっている

2007年 7月 9日 (月) 21:51:49 JST 作成


前に |次へ

windows を /dev/hda に インストール

Copyright © 2007. nyantarou All Rights Reserved.