Ubuntu 20.04 桌面从 120GB SSD 迁移到 RAID1(软件)1TB SSD 无法启动

Ubuntu 20.04 桌面从 120GB SSD 迁移到 RAID1(软件)1TB SSD 无法启动

我最初安装Ubuntu Studio 20.04在 120GB SSD 上。我想知道是否可以使用 (2) 个 1TB SSD 驱动器将其迁移到 RAID1(软件)。

令我困惑的是如何Ubuntu Studio 20.04安装:

sdc         8:32   0 111.8G  0 disk  
├─sdc1      8:33   0   512M  0 part  /boot/efi
└─sdc2      8:34   0 111.3G  0 part  /

/boot/efi我在安装过程中没有特别指定分区。

我创建了 (2) 个 RAID:

- 2GB fat32
- 929GB ext4

我想使 fat32 分区比它所需要的更大,以避免将来重新对驱动器进行分区。

要将文件复制到 RAID 分区,我使用了:

rsync -avP --numeric-ids --delete-during {120GB partition} {equivalent RAID1 partition}

另外我编辑/etc/fstab

# / was on /dev/sda2 during installation
UUID=a461ff1b-8d74-4e24-84e7-fe17e2097f23 /               ext4    errors=remount-ro 0       1
# /boot/efi was on /dev/sda1 during installation
UUID=06A9-23FB  /boot/efi       vfat    umask=0077      0       1
/swapfile                                 none            swap    sw              0       0

但是这无法启动。我不确定是否可以挽救。我是否应该用其他方式复制启动分区?

这是 lsblk 的结果

NAME      MAJ:MIN RM   SIZE RO TYPE  MOUNTPOINT
sda         8:0    0 931.5G  0 disk  
├─sda1      8:1    0     2G  0 part  
│ └─md127   9:127  0     2G  0 raid1 
└─sda2      8:2    0 929.5G  0 part  
  └─md126   9:126  0 929.4G  0 raid1 
sdb         8:16   0 931.5G  0 disk  
├─sdb1      8:17   0     2G  0 part  
│ └─md127   9:127  0     2G  0 raid1 
└─sdb2      8:18   0 929.5G  0 part  
  └─md126   9:126  0 929.4G  0 raid1 
sdc         8:32   0 111.8G  0 disk  
├─sdc1      8:33   0   512M  0 part  /boot/efi
└─sdc2      8:34   0 111.3G  0 part  /

我想这样设置,以便 Ubuntu Studio 20.04 可以从两个分区启动 --- 所以如果 1 个 SSD 坏了,我仍然可以启动计算机,然后更换 SSD。

答案1

经过大量的研究和来自自由节点#Ubuntu IRC 频道我有答案。由于所有的研究和失败的尝试,我最终重新安装了。我在下面分享了我的过程。对于那些将使用它来迁移到 RAID 的人,它可用于rsync -avP --numeric-ids --delete-during /path/from/ /path/to/克隆已安装的操作系统和数据(文档、视频、照片等)。

我将其视为许多需要 microSD 卡才能启动的单板计算机。我/boot/efi在 mSATA 上设置分区,并使用 USB 适配器将其粘在计算机外壳上。

为了实现这一点,我启动了实时媒体并访问了终端(CTRL ALT T),用于cfdisk在每个 SSD 驱动器上为 RAID 创建 Linux RAID 分区

sudo cfdisk /dev/sdLETTER

“选择表格类型”gpt

[新的]

分区大小: ###G

[类型]寻找Linux RAID

[写]“您确定要将分区表写入磁盘吗?”yes

[辞职]

然后弹出、卸载或以其他方式关闭每个 SSD 并重新连接。注意/dev/sdLETTER使用lsblk

接下来sudo apt install mdadm创建 RAID1

mdadm --create /dev/md/rootfs /dev/sdLETTER1 /dev/sdLETTER1 --level=1 --raid-devices=2

要监控 RAID 的创建,请使用:cat /proc/mdstat

使用以下方法完成 RAID 格式化mkfs.ext4 -m0 /dev/md/rootfs

在创建 RAID 时创建分区/boot/efi

安装您将使用该分区的设备/boot/efi。我使用了带有 USB 适配器的 mSATA。

用于lsblk识别已分配的/dev/sdLETTER

cfdisk使用上述步骤创建分区。

由于安装 Ubuntu 20.04 的实时媒体不允许使用终端进行格式化,因此请使用mkfs.vfat

创建 RAID 后,使用 Ubuntu 20.04 实时媒体安装命令进行安装选择/dev/md127(或分配的等效/dev/安装)。选择/boot/efi分区。继续安装。

安装的最后一步,grub创建引导将失败。我使用以下命令手动创建了引导:

sudo mount /dev/md127 /mnt
for i in /dev /proc /sys /run; do sudo mount -R $i /mnt$i; done
sudo chroot /mnt
apt install mdadm
mdadm --examine /dev/sda1
grub-install /dev/sdLETTER
update-grub

我的 grub-install 语法更复杂:

sudo grub-install --target=x86_64-efi --efi-directory=/boot/efi && sudo update-grub

每次安装新内核时,您都需要编辑 /etc/fstab 以确保 UUID= 与您的 RAID 匹配,而不是 /dev/sda1。要修复此错误:

首先确认您的 RAID 分区和 /dev/sda1 分区的 UUID:

blkid

要显示分配的错误 UUID:

fsck -Af -M

然后使用实时媒体启动。访问终端安装并激活 RAID:

sudo su -
apt install mdadm
mdadm --assemble /dev/md127 /dev/sda1 /dev/sdb1

RAID 分区应自动挂载。要获取音频挂载的位置,请使用:

df -h
  • 您将寻找类似以下内容的内容:

    /dev/md127 916G 82G 789G 10% /media/ubuntu-studio/f3c747fb-63d8-455d-8815-6097e1f35d58

如果不:

mount /dev/md127 /mnt

最后更正“/”的 UUID 以匹配您的 RAID:

nano /etc/fstab

我的参赛作品是:

UUID=f3c747fb-63d8-455d-8815-6097e1f35d58 /               ext4    errors=remount-ro 0       1

相关内容