如何在RAID10模式下使用btrfs进行安装?
作为测试,我想在raid10模式下将Ubuntu 11.10安装到btrfs文件系统上。 但是,我不清楚我应该怎么做。 我尝试了安装程序,然后在终端中创建了fs。 但是,这没有成功。 当我回到图形界面时,我无法安装。 因为它没有任何挂载点。 那么,我该怎么做呢?
使用备用安装程序并删除到shell后,我执行了以下操作:mkfs.btrfs -m raid10 -d raid10 / dev / sda / dev / sdb / dev / sdc / dev / sdd然后还需要运行:btrfs dev scan
然后在选择要安装的分区时,选择上述之一并将其安装到/。 保持所有分区不变。
这会安装系统,但安装引导加载程序失败…
好吧,我的部分问题是我想安装Ubuntu Server。 我终于成功了。 要在btrfs RAID10上安装Ubuntu Server,请使用以下步骤:
- 运行Ubuntu Desktop的livecd
- 使用gparted在要在btrfs RAID10设置中使用的所有磁盘上创建btrfs分区,确保在磁盘的开头留下1 MB用于GRUB。 (我在所有磁盘上留下1 MB,这样当我用新的/更大的磁盘替换磁盘时,我总是可以将grub移动到另一个磁盘上。
- 保存新分区表
- 关掉
- 启动Ubuntu服务器安装程序
- 在分区步骤中,断开安装程序并转到终端
-
在终端中键入以下命令为数据和元数据创建btrfs RAID10(注意使用分区,而不是磁盘!):
mkfs.btrfs -m raid10 -d raid10 /dev/sda1 /dev/sdb1 /dev/sdc1 /dev/sdd1
-
重要信息:执行以下命令:
btrfs dev scan
- 返回安装程序的分区部分
- 选择任何一个磁盘并选择将其用作btrfs和mountpoint root
- 正常进行安装
所以这很好,但后来我发现这不符合我的预期。 我有16-G,500G和2x 750G硬盘。
我希望能够使用910G。 但是,在我得到320G的btrfs中raid有点不同。 我想要使用的是raid1 ,因为这将为每个数据块创建2个副本,即使你添加了4个磁盘(与普通的raid1不同)。 所以现在,在btrfs中使用raid1,我确实得到了910G。
我花了几个小时尝试在RAID-1 btrfs系统上安装Ubuntu 12.04 Beta 2 Server。 balchmar的答案对我帮助很大,谢谢! 但是,我最终使用了一种稍微不同的方法,并想在此提及它的完整性:
-
准备磁盘分区。
您可以在我的情况下使用LiveCD或-as-以前安装的12.04 Ubuntu服务器安装。 重要提示:我必须了解到,与btrfs wiki中提到的相反,我不得不使用分区而不是像/ dev / sda这样的整个设备 ,以便grub可以通过Ubuntu安装程序安装到MBR中。 所以,这是我使用的分区。 请注意,我使用两个相同的500GB磁盘和两个分区,一个用于btrfs,另一个用于交换:Disk /dev/sda: 500.1 GB, 500107862016 bytes 255 heads, 63 sectors/track, 60801 cylinders, total 976773168 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: 0x0004f49a Device Boot Start End Blocks Id System /dev/sda1 * 2048 945508351 472753152 83 Linux /dev/sda2 945508352 976771071 15631360 82 Linux swap / Solaris Disk /dev/sdb: 500.1 GB, 500107862016 bytes 255 heads, 63 sectors/track, 60801 cylinders, total 976773168 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: 0x0002505f Device Boot Start End Blocks Id System /dev/sdb1 2048 945508351 472753152 83 Linux /dev/sdb2 945508352 976771071 15631360 82 Linux swap / Solaris
-
启动默认的Ubuntu 12.04服务器安装,直到磁盘分区部分。 不要在那里做任何选择。
-
按CTRL-ALT-F2并进入控制台。 发出以下命令,这将在/ dev / sda1和/ dev / sdb1上创建RAID-1 btrfs文件系统,将其标记为RAID1:
make.btrfs -L RAID1 -m raid1 -d raid1 / dev / sda1 / dev / sdb1 && btrfs device scan
-
按CTRL-ALT-F1返回安装程序并选择手动分区磁盘。
-
您现在可以选择/ dev / sda1并定义挂载点’/’。 重要提示 :不要选择格式化文件系统,因为这会删除以前创建的RAID-1! (当然,您现在也可以选择使用先前定义的交换设备。)
-
像往常一样继续安装。 所有数据现在都将安装在您的RAID-1 btrfs上!
-
不确定这是否需要,但有些人提到必须运行
btrfs文件系统平衡
初始启动后。 您可以通过发出以下命令来检查结果:
$ sudo btrfs文件系统显示
Label: 'RAID1' uuid: 49d2eaed-d598-462f-a768-e6e0d43dc7ce Total devices 2 FS bytes used 635.45MB devid 1 size 450.85GB used 1.26GB path /dev/sda1 devid 2 size 450.85GB used 1.26GB path /dev/sdb1 Btrfs Btrfs v0.19
要查看RAID-1实际上是用于数据和元数据,请发布
$ sudo btrfs文件系统df /
Data, RAID1: total=1.00GB, used=568.07MB System, RAID1: total=8.00MB, used=4.00KB System: total=4.00MB, used=0.00 Metadata, RAID1: total=256.00MB, used=67.37MB