当我使用 OpenSUSE 作为我的服务器时,我设计了一个我非常满意的分区方案 - bcache 设备上的 BTRFS RAID10。我想用 Ubuntu Server 20.04 重新创建它,但到目前为止我失败了,因为 subiquity 似乎不支持 bcache 或 btrfs RAID。
lsblk
输出:
root@ubuntu-server:/# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
loop0 7:0 0 351.9M 1 loop /media/filesystem
loop1 7:1 0 223.7M 1 loop
loop2 7:2 0 57.1M 1 loop /usr/lib/modules
loop3 7:3 0 29.9M 1 loop /snap/snapd/8542
loop4 7:4 0 55M 1 loop /snap/core18/1880
loop5 7:5 0 51M 1 loop /snap/subiquity/1966
sda 8:0 0 2.7T 0 disk
`-bcache0 252:0 0 2.7T 0 disk /target
sdb 8:16 0 2.7T 0 disk
`-bcache1 252:128 0 2.7T 0 disk
sdc 8:32 0 2.7T 0 disk
`-bcache2 252:256 0 2.7T 0 disk
sdd 8:48 0 2.7T 0 disk
`-bcache3 252:384 0 2.7T 0 disk
sde 8:64 1 57.3G 0 disk
|-sde1 8:65 1 914M 0 part /cdrom
|-sde2 8:66 1 3.9M 0 part
`-sde3 8:67 1 56.4G 0 part /var/crash
nvme0n1 259:0 0 465.8G 0 disk
|-nvme0n1p1 259:1 0 1G 0 part
`-nvme0n1p2 259:2 0 464.8G 0 part
|-bcache0 252:0 0 2.7T 0 disk /target
|-bcache1 252:128 0 2.7T 0 disk
|-bcache2 252:256 0 2.7T 0 disk
`-bcache3 252:384 0 2.7T 0 disk
其中 bcache 设备使用此命令组成 btrfs raid:
# mkfs.btrfs -d raid10 -m raid10 /dev/bcache0 /dev/bcache1 /dev/bcache2 /dev/bcache3
在进入安装程序的分区部分之前,已经使用可从安装程序访问的 shell 创建了整个部分。
在分区部分,我选择了Custom storage layout
。
在分区器中,缓存设备(三星 SSD,分区 2)显示为未使用,以及 BTRFS Raid 中使用的所有 4 个设备,如下图所示。
东芝硬盘是/dev/sdX
“”,而不是/dev/bcacheY
“”,因此很明显安装程序无法识别我已经设置的分区。
我如何继续安装,将我的 BTRFS RAID 设置为 root?即安装完成后将/dev/bcache0
安装。/
举例来说,它被安装在/target
上lsblk
,因为 shell 说那将是安装根。
答案1
如果您想要安装程序未提供的东西,最简单的方法是先将其初始安装到另一台设备(可能是某些 USB 记忆棒),然后从那里复制。
- 安装到附加设备
- 在线启动系统
- 制定分区方案
- 将所有内容 rsync 到最终安装位置
- 使用正确的挂载点和 uuid 更新 fstab
- chroot 进入新系统
- 创建新的 initramfs
- 安装 grub
我做过这样的安装,但还没有测试过 F2FS 作为系统分区,例如
大号