如何在一个磁盘上预先设置多个分区;/tmp /data /usr swap?

如何在一个磁盘上预先设置多个分区;/tmp /data /usr swap?

尝试在 12.04 64 位上进行预置,基本设置如下:

  • /dev/sda-唯一使用的驱动器

  • /-根文件系统-100GB

  • /启动-1GB
  • /tmp——10GB
  • /data – 应占用所有可用空间
  • 交换 - 10GB

-

d-i partman-auto/expert_recipe string \
boot-root :: \
1000 50 1000 ext4 \
$primary{ } $bootable{ } \
method{ format } format{ } \
use_filesystem{ } filesystem{ ext4 } \
mountpoint{ /boot } \
. \
500 1000 10000 ext4 \
method{ format } format{ } \
use_filesystem{ } filesystem{ ext4 } \
mountpoint{ /tmp } \
. \
500 5000 100000000 ext4 \
method{ format } format{ } \
use_filesystem{ } filesystem{ ext4 } \
mountpoint{ /data } \
. \
64 2000 10000 linux-swap \
method{ swap } format{ } \
. \
500 3000 100000 ext4 \
method{ format } format{ } \
use_filesystem{ } filesystem{ ext4 } \
mountpoint{ / } \
.

如果我只使用 /boot、swap 和 / 的代码,它就可以工作。另外,我想知道我是否必须指定除“boot-root”之外的其他配方名称,但尝试“thisNameIsNotDefinedInPartman”结果是一样的。

ubuntu 安装程序显示的错误信息始终是“没有定义根文件系统”

答案1

我自己已经解决了。问题是 partman 按照定义的顺序创建分区,而我定义的分区应该占用所有可用的磁盘空间,而不是在最后,因此无法创建以下分区(包括 rootfs 的分区)。

这是现在对我有用的食谱:

d-i partman-auto/method string regular
d-i partman-auto/expert_recipe string \
thisDoesNotMatter :: \
1000 50 1000 ext3 \
$primary{ } $bootable{ } \
method{ format } format{ } \
use_filesystem{ } filesystem{ ext3 } \
mountpoint{ /boot } \
. \
64 512 10000 linux-swap \
method{ swap } format{ } \
. \
1 600 10000 ext4 \
method{ format } format{ } \
use_filesystem{ } filesystem{ ext4 } \
mountpoint{ /tmp } \
. \
1 700 350000 ext4 \
method{ format } format{ } \
use_filesystem{ } filesystem{ ext4 } \
mountpoint{ /data } \
. \
500 1000 1000000000 ext4 \
method{ format } format{ } \
use_filesystem{ } filesystem{ ext4 } \
mountpoint{ / } \
.

答案2

您确定起始/结束分区位置不重叠吗?

此外,单个磁盘可以划分为 4 个主分区或 3 个主分区和 3 个扩展分区,我不确定此配置是否能正确处理这种情况。您必须重新检查配置参数以查看是否能正确处理。

这基本上是我的猜测。

相关内容