On 02/28/2009 03:05 PM, Tod Thomas wrote:
I know this is a little off topic. I did google around looking for
the correct forum to post this question but had little luck. If
anyone can make an informed suggestion I'd very much appreciate it.
I have a 150GB ATA disk, /dev/hdb, containing winxp. I'd like to move
the contents to an spare 80GB ATA disk, /dev/hda, to make room for a
full install of FC10 on the larger disk in preparation for ultimately
getting the winxp install running under a linux based VM.
From knoppix, I started by using ntfsresize to shrink the xp partition
down to 20GB. That worked suprisingly fine.
I then installed the smaller drive and used dd to copy over the image
of the xp installation: dd if=/dev/hdb of=/dev/hda bs=10000000
count=2000
I rebooted and voila! it worked - sort of. The new disk boots xp but
it still, according to fdisk, thinks its 150GB. So I used fdisk to
delete and redefine the xp partition (primary, bootable type=7) with
the new size of the drive, 20GB. After rebooting xp came up but then
started quickly blue screening a message I couldn't read, and
rebooting. This repeated in a loop until I just rebooted. I tried
the whole process over again but this time specified 80GB to dd and
fdisk, same disaster.
I tried everything again, but this time instead of fdisk I fired up
gparted to see if I could resize from there hoping that if it could
some magic would also fix the invalid sizing detected by fdisk.
gparted could see the drive but couldn't recognize it as having
anything it could work with. I highlighted the drive and the progress
bar stayed gray.
So far it seems I can use the drive this way without causing xp any
problems. The issue is things just don't look right and I suspect it
will come back to bite me one day. I'm not an expert at manipulating
bits on a hard drive just yet. Could someone point me to my error?
Is what I'm trying do-able? If its a conceptual problem a little
education would come in handy too.
I think that Tod got a lot of good solutions
have been proposed. I just
want to make some clarifications.
ntsfresize (and resize.e2fs, etc) resize file systems, not partitions.
This is why fdisk things the disk is 150GB. fdisk only looks at the
partition tables. So, resizing a partition is physically a 2-step
operation that gparted, qtparted, et. al. do as if it were a single
step. If you ever have to resize an LVM, it is much the same. To shring,
first shrink the file system, then the logical volume, to make it
larger, do just the opposite.
Please report your success once you have virtualized XP into F10, and
what virtual manager you have used.
--
Jerry Feldman <gaf(a)blu.org>
Boston Linux and Unix
PGP key id: 537C5846
PGP Key fingerprint: 3D1B 8377 A3C0 A5F2 ECBB CA3B 4607 4319 537C 5846