预置设置错误的分区大小

预置设置错误的分区大小

我正在尝试使用 preseed 工具安装 Debian。到目前为止,除了我的磁盘分区之外,一切都运行良好。基本上我想要的是:

/ of 30GB - ext4
/var/lib about 2TB - xfs
swap 2GB

但最后的系统是这样的:

/ 2TB - ext4
swap, about 20GB

这是预置文件的磁盘部分:

d-i partman-lvm/device_remove_lvm boolean true
d-i partman-auto/purge_lvm_from_device boolean true
d-i partman-lvm/confirm boolean true
d-i partman-auto/disk string /dev/sda
d-i partman-auto/method string regular
# GPT
d-i partman-basicfilesystems/choose_label string gpt
d-i partman-basicfilesystems/default_label string gpt
d-i partman-partitioning/choose_label string gpt
d-i partman-partitioning/default_label string gpt
d-i partman/choose_label string gpt
d-i partman/default_label string gpt

d-i partman-auto/expert-recipe string sql::     \
    32 32 32 free                               \
    $gptonly{ }                                 \
    $primary{ }                                 \
    $bios_boot{ }                               \
    method{ biosgrub }                          \
.                                               \
    30000 32000 30720 ext4                      \
    $gptonly                                    \
    $primary{ } $bootable{ }                    \
    method{ format } format{ }                  \
    use_filesystem{ } filesystem{ ext4 }        \
    mountpoint{ / }                             \
.                                               \
    2048 4000 2048 linux-swap                   \
    $gptonly                                    \
    method{ swap } format{ }                    \
.                                               \
    2000000 1000 -1 xfs                         \
    $gptonly                                    \
    method{ format } format{ }                  \
    use_filesystem{ } filesystem{ xfs }         \
    mountpoint{ /var/lib/ }           \
    options/noatime{ noatime }                  \
    options/nodiratime{ nodiratime }            \
    options/nobarrier{ nobarrier }              \
.                                               \

d-i partman/confirm_write_new_label boolean true
d-i partman/choose_partition select finish
d-i partman/confirm boolean true
d-i partman-partitioning/confirm_copy boolean true
d-i partman/confirm_nooverwrite boolean true

## Controlling how partitions are mounted
d-i partman/mount_style select traditionnal

我做错了什么吗?

答案1

xfs 分区最大大小的 -1 是问题所在,尽管实际上不应该如此。

partman-auto 中存在一个错误(称为算法的限制),它需要非常大的数字作为分区之一的最大大小。

`

5. 局限性

由于partman-auto中算法的限制,必须至少有一个最大大小较高的分区,以便可以使用整个可用空间。通常,您可以为包含 /home 的分区指定最大大小 1000000000,这对于当前存储设备来说已经足够了。如果大的 /home 不适合您,您还可以在配方中定义一个大小为 1000000000 的附加分区,方法“keep”并将其保留为未安装。安装完成后,您可以将其删除。

不要使用高于 1000000000 的数字,因为 shell 算术限制为 31 位(在 i386 上)。 `

http://ftp.dc.volia.com/pub/debian/preseed/partman-auto-recipe.txt

答案2

umeboshi 提到的错误是否存在取决于您的发行版使用的 Debian Installer 和 Partman 版本。在 Ubuntu 14.04 和更新的 Debian 版本上,支持 -1,但在旧版本或需要向后兼容性上,上述限制是准确的。

来自 Debian 来源的支持证据: https://salsa.debian.org/installer-team/debian-installer/blob/master/doc/devel/partman-auto-recipe.txt

相关内容