如何处理完整安装的 USB 和交换空间

如何处理完整安装的 USB 和交换空间

使用具有交换分区的计算机创建完整安装 USB 驱动器时,安装程​​序 Ubiquity 会格式化计算机上的每个交换分区并将其路径添加到 fstab。这包括计算机上现有的交换分区和安装过程创建的交换分区。

如果计算机上已有交换分区,Ubiquity 不会为 USB 驱动器创建新的交换文件。如果在没有交换分区的计算机上启动 USB 驱动器,则没有可用的交换空间。

我该怎么办?我应该创建一个新的交换文件并将其添加到 fstab 吗?如果是这样,我应该从 fstab 中删除任何现有的交换分区还是应该保留它们?是否存在安全问题,下一个使用计算机的人是否可以复制我的交换数据、银行账户等?

答案1

可启动 USB 和交换空间

一台计算机可以有多个交换分区,并且全新安装的 Ubuntu 将使用它们全部,即使它们没有在 fstab 中列出,此外,如果在 fstab 中列出,计算机可以使用单个交换文件。

即使是实时和持久可启动 USB 设备也将使用它们找到的所有交换分区。

只要计算机上没有交换分区,Ubuntu 20.04 就会在安装过程中创建交换文件。(这是安装时拔下内置 HDD/SSD 的另一个原因)。

一旦将交换文件添加到 fstab,计算机将不会使用 fstab 中未列出的任何交换分区。

安全:

闪存驱动器很容易丢失或放错。如果您使用 U 盘处理敏感数据,则驱动器应完全加密。

交换分区可以像任何其他文件或分区一样被复制或克隆。

交换文件是根分区的一部分,并会自动随根分区一起加密。

使用可启动 USB 时,加密他人计算机上的交换分区通常不是一个好主意。为了防止任何数据留在主机计算机的交换分区中,应使用交换文件或至少在退出之前关闭交换:sudo swapoff -a

要使用可启动 USB 上的交换文件替换交换分区:

  • 检查正在使用的交换:

    sudo swapon -s

  • 如果找到交换分区:

    sudo swapoff -a

    sudo nano -Bw /etc/fstab

  • 在交换分区的 UUID 前添加“#”:

    # UUID=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX  none  swap  sw    0       0

  • 为交换文件添加一行:

    swapfile none swap sw      0       0

  • 创建交换文件:

    sudo fallocate -l XG /swapfile

其中 X 是交换文件大小(以 GB 为单位)

    sudo mkswap /swapfile

    sudo chmod 0600 /swapfile

    sudo swapon /swapfile
  • 重启:

    sudo reboot

要启用休眠模式:

  • 根据需要增加交换文件大小以匹配 RAM 大小,最高可达 8GB。

  • 编辑 /etc/default/grub 以将恢复位置和偏移量添加到 grub.cfg:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash resume=UUID=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX resume_offset=XXXXX"

  • 从 root 使用 UUID。

  • 使用偏移量sudo filefrag -v /swapfile

cscameron@cscameron-T:~$ filefrag -v /swapfile Filesystem type is: ef53 File size of /swapfile is 4819255296 (1176576 blocks of 4096 bytes) ext: logical_offset: physical_offset: length: expected: flags: 0: 0.. 0: 303104.. 303104: 1: 1: 1.. 2047: 303105.. 305151: 2047: unwritten 2: 2048.. 4095: 311296.. 313343: 2048: 305152: unwritten

  • 恢复偏移量=303104

  • 更新 GRUB

    sudo update-grub

  • 测试休眠

    sudo systemctl hibernate

可以使用 gnome 扩展添加休眠按钮。

笔记:

  • 使用 fallocate 创建交换文件时,可能会出现一些漏洞。可以搜索 /var/log/syslog 中的短语swapon: swapfile has holes以确保不会丢失数据。

  • 为了最大程度地成功恢复,请将 USB 插入休眠时所在的同一插槽。当 USB 处于休眠状态时,从其自己的操作系统运行主机应该没问题。

相关内容