我有一个脚本,我运行该脚本以在备份虚拟来宾之前优化磁盘空间(使用哪个管理程序实际上并不重要)。
现代 Ubuntu 版本(例如 18.04)似乎默认使用/swapfile
分区而不是分区。那也没关系。
但是,我想将交换文件与包含它的根分区一起归零。
对于交换分区,这相对轻松,因为总有一种方法可以$UUID
从交换分区中提取现有的内容,并且 - 在对分区进行零填充之后 - 运行mkswap -U $UUID
以重新创建所述交换分区。
但是,/swapfile
我不知道该怎么做。虽然我意识到你不能通过/swapfile
UUID 在 中挂载/etc/fstab
,但我仍然想保留 UUID。
因此,我认为需要以下操作之一才能继续:
mkswap -U $UUID
)blkid
于看/dev/disk/by-uuid/$UUID
...)Ste*_*itt 15
这不会像重新创建交换文件那样彻底清除交换文件,但是如果您在跳过第一个 4KiB(严格来说,第一页,这取决于您的架构)之后清除它,您将不会触及任何结构标识交换文件。
blkid
在交换文件上也能正常工作:
$ mkswap swap
Setting up swapspace version 1, size = 512 MiB (536866816 bytes)
no label, UUID=7916b81f-1faa-4b7d-84ef-b0bf2f75dbbc
$ blkid swap
swap: UUID="7916b81f-1faa-4b7d-84ef-b0bf2f75dbbc" TYPE="swap"
Run Code Online (Sandbox Code Playgroud)内核中定义了头格式:旧格式在第一页的末尾有一个魔法值,新格式将它与一个 1KiB 的空闲区域结合起来,然后是一些字段(版本、大小、坏页、UUID、标签),它们都适合放在第一页内。
归档时间: |
|
查看次数: |
1158 次 |
最近记录: |