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虚拟机里面,直接从任务管理器限制,同时外部给虚拟机分配最少的资源。

相关推荐
码河漫步4 分钟前
vmware安装ubuntu22.04
linux·运维
杜子不疼.1 小时前
【Linux】进程状态全解析:从 R/S/D/T 到僵尸 / 孤儿进程
linux·人工智能·ai
序属秋秋秋2 小时前
《Linux系统编程之进程基础》【进程优先级】
linux·运维·c语言·c++·笔记·进程·优先级
加勒比之杰克2 小时前
【操作系统原理】Linux 进程控制
linux·运维·服务器·进程控制
XH-hui4 小时前
【打靶日记】TheHackerLabs 之 THLPWN
linux·网络安全·thehackerlabs·thl
小兔薯了10 小时前
11. Linux firewall 防火墙管理
linux·运维·服务器
Linux技术芯11 小时前
浅谈SCSI寻址机制与工作阶段深度解析?
linux
☼←安于亥时→❦13 小时前
Linux 系统日志‘/var/log/syslog‘ 和 ‘/var/log/messages‘ 详解
linux
袁气满满~_~13 小时前
Ubuntu下配置PyTorch
linux·pytorch·ubuntu
倦王13 小时前
Linux看ip,改用户名字加权限,在单独用户下设置miniconda
linux·服务器·tcp/ip