我使用在 SD 卡上安装了 Debian Buster ( armhf )的单板计算机。它有 1 GB 的焊接 RAM,无法增加。我禁用了 Linux 交换,它通常工作正常。
但我有一个应用程序,我希望交换可用。我想在 USB 硬盘驱动器上有一个交换分区,并且只有在需要使用交换时才插入驱动器。此应用程序需要此驱动器存在,因此添加交换功能将非常方便。
到目前为止,一切都很好。
但是,我希望 Debian 在可用时自动检测和使用交换空间,而无需用户交互。
没有用户调用脚本的好方法吗?重新启动是可以接受的,但我宁愿不需要它。如果我只是将交换分区放在fstab中,如果在启动时没有插入驱动器,则启动会失败。
最后,我不担心禁用交换。应用程序完成后系统将关闭。
如果要使用自动挂载
fstab
条目,可以添加挂载选项nofail
和 systemd timeoutx-systemd.device-timeout=XX
。这样就不会报告错误,并且在指定的超时设置后继续引导。否则默认超时为 90 秒。fstab
具有 3 秒超时的示例条目:要在启动后挂载交换分区,您必须创建
udev
规则或手动运行swapon -a
或创建脚本来启动检查设备并运行的应用程序swapon -a
。