在 kickstart 中创建一个使用 tmpfs 文件系统类型的 /tmp 分区?

在 kickstart 中创建一个使用 tmpfs 文件系统类型的 /tmp 分区?

我正在写启动PXE 启动时使用的脚本,用于自动配置新系统的基本设置。除了启动驱动器的分区外,我一切都正常:我的/tmp目录位于我的/(根)分区下,而不是专用tmpfs分区下。我发现这篇支持文章关于该主题,但它被付费墙锁定了。

这是我目前在 kickstart 脚本中进行分区的内容:

part /boot --fstype=xfs --size=1024 --ondisk=vda
part pv.01 --fstype=lvmpv --size=1 --grow --ondisk=vda

volgroup myvg --pesize=4096 pv.01
logvol swap --vgname=myvg --fstype=swap --recommended --name=swap
logvol / --vgname=myvg --fstype=xfs --grow --size=1024 --name=root

其输出结果df如下:

Filesystem             Size  Used Avail Use% Mounted on
devtmpfs               1.9G     0  1.9G   0% /dev
tmpfs                  1.9G     0  1.9G   0% /dev/shm
tmpfs                  1.9G  8.6M  1.9G   1% /run
tmpfs                  1.9G     0  1.9G   0% /sys/fs/cgroup
/dev/mapper/myvg-root   17G  1.5G   15G  10% /
/dev/vda1              976M  144M  766M  16% /boot
tmpfs                  379M     0  379M   0% /run/user/1000

答案1

该解决方案与分区无关。挂载选项/tmp实际上tmpfs是由 systemd 单元文件处理的,因此可以在安装后脚本中tmp.mount启用它在 kickstart 脚本中启用:tmp.mount

# Run post-install configuration
%post --interpreter=/usr/bin/bash --erroronfail --log=/var/log/kickstart-post.log
systemctl enable tmp.mount
%end

启动后输出如下结果df

Filesystem             Size  Used Avail Use% Mounted on
devtmpfs               1.9G     0  1.9G   0% /dev
tmpfs                  1.9G     0  1.9G   0% /dev/shm
tmpfs                  1.9G  8.6M  1.9G   1% /run
tmpfs                  1.9G     0  1.9G   0% /sys/fs/cgroup
/dev/mapper/myvg-root   17G  1.5G   15G  10% /
tmpfs                  1.9G  8.0K  1.9G   1% /tmp
/dev/vda1              976M  144M  766M  16% /boot
tmpfs                  379M     0  379M   0% /run/user/1000

这本质上是这个过程的逆过程记录在 archlinux wiki 上禁用此功能。

在 archlinux wiki 上有更多信息,但需要注意的一点是,如果已经安装了另一个分区,/tmp那么即使启用了该单元,它也不会产生任何效果。

/tmp关于此处放置的优点/缺点的相关阅读tmpfshttps://access.redhat.com/discussions/688183

相关内容