Linux百度网盘优化三板斧

解决Linux百度网盘CPU占用过高,下载进度卡住,频繁崩溃退出问题。

解决Linux百度网盘CPU占用过高问题

夏天到了,百度网盘下载时conky显示CPU温度飙升到99摄氏度,风扇嗷嗷叫,但CPU占用显示只有4%。优化了一下水冷泵速度仍然未解决。最后在网上搜到,这货虽然占得核心少,但会把核心榨干......众所周知,百度网盘在windows占用CPU过高可以通过任务管理器CPU配额进行限制,那么在linux下百度网盘CPU占用过高又该如何处理呢?

经过一番易用性比较,最终选择cpulimit这个命令行工具进行限制,以manjaro linux为例:

执行yay -S cpulimit安装cpulimit工具,

查看帮助信息:

复制代码
 cpulimit -h                                                                                                            ✔ 
Usage: cpulimit [OPTIONS...] TARGET
   OPTIONS
      -l, --limit=N          percentage of cpu allowed from 0 to 2400 (required)
      -v, --verbose          show control statistics
      -z, --lazy             exit if there is no target process, or if it dies
      -i, --include-children limit also the children processes
      -h, --help             display this help and exit
   TARGET must be exactly one of these:
      -p, --pid=N            pid of the process (implies -z)
      -e, --exe=FILE         name of the executable program file or path name
      COMMAND [ARGS]         run this command and limit it (implies -z)

Report bugs to <marlonx80@hotmail.com>.

终端执行cpulimit -e baidunetdisk -l 100进行限制,后面的数值越大,允许占用CPU越高。如果太小,又会降低下载速度,可以根据自己设备和带宽情况灵活设置。

这个指令会在后台持续监控,如果百度网盘退出仍会监测,大约每秒一次动态控制。

解决Linux百度网盘下载进度卡住问题

明明有网络,但进度条就是不动,百度网盘界面显示下载速度已跑满,实际系统监控界面流量速率归零。各种尝试,最终发现一个方法可以解决

步骤1:退出百度网盘

步骤2: rm -rf ~/.config/baidunetdisk/BaiduYunKernel

步骤3:启动百度网盘

然后下载速度就恢复正常了。至于原理,纯玄学。

解决Linux百度网盘下载一段时间崩溃退出问题

下载任务文件多时,linux百度网盘缓存数据目录等信息可能会因为各种格式问题无法处理而崩溃,但为了安心让它持续下载,想出个应对方法------写个守护进程脚本持续监控,一旦退出就将其拉起来。代码如下:

复制代码
#!/bin/sh

while true
do
        process=`ps aux | grep "baidunetdisk --no-sandbox" | grep -v grep`;

        if [ "$process" == "" ]; then
                sleep 1;
                echo $(date) " process 不存在,开始执行";
                /usr/lib/baidunetdisk/baidunetdisk --no-sandbox %U 2>> stderr.log 1>> /dev/null;
        else
                sleep 10;
                echo $(date) " process exsits";
        fi
done

pgrep也能实现类似效果,但系统未必自带,感兴趣的读者可以按需下载。脚本保存为xx.shchmod +x xx.sh赋予执行权限。然后./xx.sh就可以了。

感悟

装在linux的本意是规避windows下的cpu占用问题,结果还是太折腾,不如丢windows虚拟机里面,直接从任务管理器限制,同时外部给虚拟机分配最少的资源。

相关推荐
Gss77733 分钟前
Linux 进程管理与计划任务详解
linux·运维·服务器
one day3211 小时前
Linux和shell
linux·运维·服务器
鹏大师运维2 小时前
银河麒麟桌面操作系统:自定义截图快捷键操作指南
linux·运维·快捷键·国产操作系统·截图·麒麟kylinos·桌面操作系统
笑稀了的野生俊2 小时前
Ubuntu 下配置 NVIDIA 驱动与 CUDA 环境(适配 RTX 4060Ti)
linux·ubuntu·cuda·nvidia driver
仙云Q122 小时前
NAT技术与代理服务
linux·服务器·网络
用户4921013166573 小时前
基于FinalShell输入的虚拟机Linux指令
linux
ajassi20003 小时前
开源 Arkts 鸿蒙应用 开发(十二)传感器的使用
linux·华为·开源·harmonyos
自由鬼4 小时前
AI赋能操作系统:通往智能运维的未来
linux·运维·服务器·人工智能·程序人生·ai·操作系统
x晕x4 小时前
Qt 消息弹窗 Toast
linux·c++·windows·qt·mac
鹏大师运维4 小时前
MBR与GPT分区表深度解析:硬盘分区该怎么选?
linux·运维·服务器·gpt·国产操作系统·mbr·统信uos