我最初安装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