如何将磁盘预置为 50% / 和 /tmp?

ice*_*ich 5 server partitioning preseed

我需要通过预置文件和部分磁盘将 ubuntu 服务器 10.04 安装到 / 的 50% 和 /tmp 的其余部分。我试过这个:

    # Partitioning
# use first hard drive SCSI/SATA:
d-i partman-auto/disk string /dev/sda
d-i partman-auto/method string regular
d-i partman-auto/purge_lvm_from_device boolean true
d-i partman-lvm/device_remove_lvm boolean true
d-i partman-md/device_remove_md boolean true
d-i partman-lvm/confirm boolean true
d-i partman-auto/choose_recipe select atomic

# Actualy use 50% for / and rest 50% for /LOGS
d-i partman-auto/expert_recipe string                         \
      boot-root ::                                            \
              2048 50% 1000000000 ext4                        \
                      $primary{ }                             \
                      method{ format } format{ }              \
                      use_filesystem{ } filesystem{ ext4 }    \
                      mountpoint{ / }                         \
              .                                               \
              2048 50% -1 ext4                                \
                      method{ format } format{ }              \
                      use_filesystem{ } filesystem{ ext4 }    \
                      mountpoint{ /TMP}                       \
              .                                               \
              50% 4096 50% linux-swap                         \
                      method{ swap } format{ }                \
              .

d-i partman-partitioning/confirm_write_new_label boolean true
d-i partman/choose_partition select finish
d-i partman/confirm boolean true
d-i partman/confirm_nooverwrite boolean true
Run Code Online (Sandbox Code Playgroud)

谁能告诉我,为什么它不起作用?它仅创建 1.9 Gb 到 / 和 /tmp。

谢谢!

ice*_*ich 2

看来我解决了这个问题。我应该使用数字值而不是百分比。

# Partitioning
# use first hard drive SCSI/SATA:
d-i partman-auto/disk string /dev/sda
d-i partman-auto/method string regular
d-i partman-auto/purge_lvm_from_device boolean true
d-i partman-lvm/device_remove_lvm boolean true
d-i partman-md/device_remove_md boolean true
d-i partman-lvm/confirm boolean true
d-i partman-auto/choose_recipe select atomic

# Actualy use 50% for / and rest 50% for /TMP
d-i partman-auto/expert_recipe string                         \
      boot-root ::                                            \
              2048 30720 1000000000 ext4                      \
                      $primary{ }                             \
                      method{ format } format{ }              \
                      use_filesystem{ } filesystem{ ext4 }    \
                      mountpoint{ / }                         \
              .                                               \
              50% 4096 50% linux-swap                         \
                      method{ swap } format{ }                \
              .                                               \
              2048 30720 -1 ext4                              \
                      method{ format } format{ }              \
                      use_filesystem{ } filesystem{ ext4 }    \
                      mountpoint{ /TMP }                      \
              .                                               \

d-i partman-partitioning/confirm_write_new_label boolean true
d-i partman/choose_partition select finish
d-i partman/confirm boolean true
d-i partman/confirm_nooverwrite boolean true
Run Code Online (Sandbox Code Playgroud)


IBB*_*ard 1

看起来你的定义是错误的,所以partman可能会误解它。如果您查看规范(例如此处),那么限制的顺序是:

<minimal size> <priority> <maximal size> <parted fs>

所以你的初始版本有“50%”优先级。您的交换是正确的(根据规范),但交换分区大小为内存大小的 50%(如果您有 2GB RAM,则为 1GB),优先级为 4096。