由于一些需要花很长时间才能解释清楚的原因,我必须将我的 Linux 分区复制到另一个 HD 中,然后从那里启动 Ubuntu。
这是我的fdisk -l
输出
Disk /dev/sda: 250.1 GB, 250059350016 bytes
255 testine, 63 settori/tracce, 30401 cilindri, totale 488397168 settori
Unità = settori di 1 * 512 = 512 byte
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Identificativo disco: 0x52f375e9
Dispositivo Boot Start End Blocks Id System
/dev/sda1 2048 3071999 1534976 82 Linux swap / Solaris
/dev/sda2 * 3072000 254730239 125829120 7 HPFS/NTFS/exFAT
/dev/sda3 254730240 438394879 91832320 7 HPFS/NTFS/exFAT
/dev/sda4 438396926 488396799 24999937 5 Esteso
/dev/sda5 438396928 488396799 24999936 83 Linux
有sda2
Windows、sda3
数据分区和sda5
Ububntu。
我从 LiveCD 创建了一个将我的分区映像sda5
到第三个外部磁盘的工具:
$ sudo dd if=/dev/sda5 of=/path-to-external-disk/ubuntu.img
现在我想把这个镜像放到另一个硬盘上,这样我就可以从那里启动 Ubuntu,而不是从 PC 硬盘启动。我试过
$ sudo dd if=/path-to-external-disk/ubuntu.img of=/dev/sdb1
HD 在哪里sdb1
。一切顺利,但我无法从外部 HD 启动 Ubuntu。
编辑:Sneetsher 的建议
不,以前我不是从 Live CD 来的,现在我是了,这些是你问我的命令的输出
输出fdisk -l
Disk /dev/sda: 250.1 GB, 250059350016 bytes
255 heads, 63 sectors/track, 30401 cylinders, total 488397168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x52f375e9
Device Boot Start End Blocks Id System
/dev/sda1 2048 3071999 1534976 82 Linux swap / Solaris
/dev/sda2 * 3072000 254730239 125829120 7 HPFS/NTFS/exFAT
/dev/sda3 254730240 438394879 91832320 7 HPFS/NTFS/exFAT
/dev/sda4 438396926 488396799 24999937 5 Extended
/dev/sda5 438396928 488396799 24999936 83 Linux
Disk /dev/sdb: 4192 MB, 4192206848 bytes
129 heads, 62 sectors/track, 1023 cylinders, total 8187904 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0002cb8f
Device Boot Start End Blocks Id System
/dev/sdb1 * 62 8181953 4090946 c W95 FAT32 (LBA)
Disk /dev/sdc: 82.0 GB, 81964302336 bytes
255 heads, 63 sectors/track, 9964 cylinders, total 160086528 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0008f93b
Device Boot Start End Blocks Id System
/dev/sdc1 * 63 160071659 80035798+ 7 HPFS/NTFS/exFAT
输出df
Filesystem 1K-blocks Used Available Use% Mounted on
/cow 1032088 127720 851940 14% /
udev 2056204 4 2056200 1% /dev
tmpfs 825908 888 825020 1% /run
/dev/sdb1 4082952 1771180 2311772 44% /cdrom
/dev/loop0 691456 691456 0 100% /rofs
tmpfs 2064768 24 2064744 1% /tmp
none 5120 4 5116 1% /run/lock
none 2064768 176 2064592 1% /run/shm
问题是我无法安装磁盘,当我尝试时出现以下错误:
mount: wrong fs type, bad option, bad superblock on /dev/sdc1,
missing codepage or helper program, or other error
In some cases useful info is found in syslog - try
dmesg | tail or so
答案1
请不要应用此程序,直到其他人审核为止。我可能会错过一些东西!
使用 Ubuntu Live CD 中的 Gparted,可以直接(动态)复制分区而无需制作映像。
由于新分区“/dev/sdc1 .. HPFS/NTFS/exFAT”的分区类型错误,因此它应该是 83 Linux(可能是 Ext4)。我认为该分区已损坏。我建议。使用 gparted:删除它,申请,复制分区 /dev/sda5,粘贴到 /dev/sdc 驱动器上,申请,然后继续该过程。
使用 Ubuntu Live CD 启动,运行 Gparted,卸载所有已安装的分区(交换、lvm 等)
现在有两个具有相同 UUID 的克隆分区,系统将无法区分它们。
选择外部驱动器→右键单击新的克隆分区(从映像恢复的分区)→新 UUID。
旧 Gparted: 中没有新的 UUID
sudo tune2fs -U random /dev/sdxy
,请替换sdxy
为新的分区路径 (sdc1)它需要可启动
再次右键单击新的克隆分区(从映像恢复的分区)→管理标志→检查:启动标志。
右键点击 → 挂载新的克隆分区
右键点击 → 信息 → 复制:UUID 并记住 PATH (/dev/sdxy)
关闭 Gparted
/
将根分区的旧 UUID 替换为新复制的 UUID/etc/fstab
sudo cp /media/cloned_part/etc/fstab /media/cloned_part/etc/fstab_backup sudo gedit /media/cloned_part/etc/fstab
注意:
cloned_part
用新克隆分区的安装路径替换。重新安装 grub 以更新其菜单列表
sudo grub-install --root-directory=/media/cloned_part /dev/sdx
注意:
sdx
用 gparted 的记录替换(但没有最后一个数字),目标是硬盘而不是分区。重新启动,选择从 USB HDD 启动。