使用小型无头服务器(PC Engines APU 1D4)和 Debian。我从串行端口上的终端控制它。
通常我从 USB 闪存盘安装操作系统,但这个过程非常漫长并且容易出错。
我正在尝试从新 SSD 上的工作 SSD 克隆 2 个分区:克隆 8GB 大约需要 12 分钟,而不是 3 个多小时。为了节省时间,值得在安装后更改一些参数。
新的 SSD 已准备好适当的分区(使用 fdisk),在第一个分区上启动激活,就像在原始 SSD 中一样。我检查分区是否从正确的块开始,并且它们是相同的。
由于我无法直接从源 SDD 复制到目标 SDD,因此我在以相同方式分区的 SD 卡上进行了复制。然后将映像从 SD 卡克隆到新的 SSD。
我正在使用 dd:
dd if=/dev/sdaX of=/dev/sdcY bs=64K conv=noerror,sync status=progress
全部复制,没有任何问题或警告。
但是当我启动安装了新 SSD 的设备时,它会在启动时停止:
PC Engines APU BIOS build date: Sep 8 2014
Total memory 4096 MB
AMD G-T40E Processor
CPU MHz=1001
Press F10 key now for boot menu:
drive 0x000f2a90: PCHS=16383/16/63 translation=lba LCHS=1024/255/63 s=488397168
Booting from Hard Disk...
handle_75
handle_02
handle
知道底部的两条消息是什么意思吗?
我在这里缺少什么?
答案1
您必须安装并配置grub
以使新的 SSD 可启动。
您仅将旧磁盘的分区克隆到新磁盘,这忽略了分区外部的 grub 的初始部分。如果您克隆了整个磁盘,则无需重新安装引导加载程序。要复制整个磁盘,请dd
像这样使用
dd if=/dev/sda of=/dev/sdb
或者如果您想衡量进度
dd if=/dev/sda |pv| dd of=/dev/sdb
请注意,上述命令将整个sda
磁盘复制到sdb
而不是像sdaX
.
否则,在克隆两个分区后,使用任何操作系统的实时磁盘(最好是与您正在克隆的操作系统相同的操作系统)启动系统。chroot
克隆操作系统的根目录并重新安装grub
如果您使用的是具有1MB 分区GPT
的分区表,则还需要。请搜索“适合您操作系统的 Grub 重新安装过程”Legacy BIOS
biosboot
答案2
请不要用于dd
此用途partclone
。
partclone -b -s /dev/sda1 -o /dev/sdb1
这将比无论如何使用都要快得多dd
。