这是我的主要预置文件:
# Partition Disks
d-i partman-auto/disk string /dev/sda
d-i partman-auto/method string regular
d-i partman-auto/expert_recipe string \
boot-root :: \
30000 30000 30000 btrfs \
$primary{ } $bootable{ } \
method{ format } format{ } \
use_filesystem{ } filesystem{ btrfs } \
mountpoint{ / } \
. \
8000 8000 8000 linux-swap \
method{ swap } format{ } \
use_filesystem{ } filesystem{ swap } \
$primary{ } \
. \
30000 30000 30000 ext4 \
method{ format } format{ } \
use_filesystem{ } filesystem{ ext4 } \
mountpoint{ /data } \
label{ data } \
. \
15000 15000 15000 ext4 \
method{ format } format{ } \
use_filesystem{ } filesystem{ ext4 } \
mountpoint{ /work } \
label{ work } \
.
d-i partman/confirm_write_new_label boolean true
d-i partman/confirm boolean true
d-i partman/choose_partition select Finish partitioning and write changes to disk
d-i partman/confirm_nooverwrite boolean true
这是应该格式化并进行全新安装的预置,但不会触及分区或分区上的数据:
# Partition Disks
d-i partman-auto/expert_recipe string \
boot-root :: \
30000 30000 30000 btrfs \
$primary{ } $bootable{ } \
method{ format } format{ } \
use_filesystem{ } filesystem{ btrfs } \
mountpoint{ / } \
. \
8000 8000 8000 linux-swap \
method{ swap } format{ } \
use_filesystem{ } filesystem{ swap } \
$primary{ } \
. \
30000 30000 30000 ext4 \
method{ keep } \
label{ data } \
. \
15000 15000 15000 ext4 \
method{ keep } \
label{ work } \
.
partman-basicfilesystems partman-basicfilesystems/no_mount_point boolean false
d-i partman/confirm_write_new_label boolean true
d-i partman/confirm boolean true
d-i partman/choose_partition select Finish partitioning and write changes to disk
d-i partman/confirm_nooverwrite boolean true
使用此预置运行安装后,数据和工作内的文件将消失。
我看过 https://wikitech.wikimedia.org/wiki/PartMan并设置了保留方法但遗憾的是仍然没有运气。
分区完好且仍然保留,只是分区内的文件消失了。
我的最终目标是实现无人值守安装,格式化并重新启动 ubuntu,但仍保持分区和数据完好无损。
谢谢你!
答案1
partman 文档有一些很好的提示: https://sources.debian.org/src/debian-installer/20190410/doc/devel/partman-auto-recipe.txt/
首先,我相信您可以定义一个具有“无限”大小的分区,在计算完所有其他分区的大小后,它实际上将使用设备上剩余的空间,例如:
30000 30000 -1 ext4 \
method{ format } \
format{ } \
use_filesystem{ } \
filesystem{ ext4 } \
mountpoint{ /data } \
label{ data } \
无论如何,您是否找到了将数据保存在分区中的方法?
答案2
这对我有用,只是格式化操作系统但数据保留并安装。
您所要做的就是,放入方法{ 格式 } 但删除格式{ }。
format{ } 是进行格式化的标签,如果不存在,则不会删除数据。最后……
method{ format } \
use_filesystem{ } filesystem{ ext4 } \
mountpoint{ /data } \