我正在使用上网本作为 Plex 媒体服务器。
当我想看电影时,我会使用局域网唤醒来启动 Ubuntu。当 Plex 正在向客户端传输视频时,Windows 会阻止我的电脑进入休眠状态。Ubuntu 不会,大约 20 分钟后,Ubuntu 就会进入睡眠/休眠状态。
通常,当流式传输到客户端时,我的 CPU 使用率会超过 40%。我认为 ubuntu 不是空闲的,但显然 ubuntu 是空闲的。有解决方法吗?如果某个进程或所有进程合计占用了超过 40% 的 CPU,有什么方法可以防止 ubuntu 休眠?
咖啡因并不能解决我的问题,因为 Plex Media Server 作为服务/守护进程运行,所以如果某个进程正在运行,我无法将其设置为保持 ubuntu 处于唤醒状态,因为它永远不会休眠。
任何解决方案都会非常有用!
答案1
我遇到了类似的问题,我需要备份服务器在暂停之前保持唤醒状态以进行长时间备份。
您可以使用 Keep.Awakehttps://launchpad.net/keep.awake。
但是它还不能与休眠模式一起工作,只能与挂起到内存模式一起工作。
我将在不久的将来更新该程序以允许休眠。目前还没有 snap 或 deb 包,因为我还没有来得及打包,但你可以下载该程序这里。
只需解压并运行python3程序即可。
它的工作方式与正确的命令类似。输入 --help 可查看可执行操作的完整列表。下面的示例只是其中几个:
./keepawake.py --help
以交互方式运行:
./keepawake.py
要作为后台服务运行:
nohup ./keepawake.py -r > /dev/null 2>&1 &
作为后台服务运行,并在确定用户处于空闲状态之前将 15 分钟(900 秒)设置为用户活动空闲时间:
nohup ./keepawake.py -u 900 -r > /dev/null 2>&1 &
要作为后台服务运行并将最低 CPU 负载设置为 13%:
nohup ./keepawake.py -c 13 -r > /dev/null 2>&1 &
作为后台服务运行并将最小网络流量设置为 5KB(5120 字节):
nohup ./keepawake.py -s 5120 -r > /dev/null 2>&1 &
要一次性运行上述所有三个设置(网络、CPU、用户空闲):
nohup ./keepawake.py -s 5120 -c 13 -u 900 -r > /dev/null 2>&1 &