Loading... 最近组了个黑群玩,在使用transmission下载时遇到too many open file问题 群晖系统连接数过大导致此错误,跟磁盘性能关系不大,此错误出现在当你保种和下载的连接数超过系统限制时触发。 比如: - 我保种了2000个种子,每个种子都是一个单文件,基本不会出现这个错误, - 我保种了50个种子,每个种子都是5T的大包,每个包里面都是几千个小文件,很大概率触发 - 我正在下载几个大包,很可能触发 所以为什么说,有的人说固态没事,有的人说原版没事,问题的关键不是这些因素,而是上面的,做种下载上传本质为硬盘的随机读写,理论上加缓存会有些许改善,但不是此错误的解决方案,除非你加一个和存储池一样大小的缓存。 网上已有解决方案了 [群晖transmission-too-many-open-files-解决方案](https://www.mopsky.com/2019/04/16/%E7%BE%A4%E6%99%96transmission-too-many-open-files-%E8%A7%A3%E5%86%B3%E6%96%B9%E6%A1%88/)这个是原版 如果原版打不开,有人转载(博主说的是相关阅读,手动狗头)[黑群晖软件transmission下载提示:Unable to save resume file: Too many open files (3) 解决方案](https://piaoyun.cc/1369.html) 此文只为记录,防止上面的文章失效,以后找不到了。 1. SSH登入群晖 2. 下载文件,链接: `https://pan.baidu.com/s/1UcZySBbRmbn0ZEZq-L18yA?pwd=nqc5` 3. 更改rlimit程序的权限,`chmod 777 rlimit`; 4. 查找transmission的进程编号,`ps -ef|grep trans`,可以看到前面的数字即为进程编号; 5. 使用rlimit工具对进程进行更改:`./rlimit 进程编号`; 6. 查看是否生效,`cat /proc/您的进程编号/limits` 文件,可以看到file相关的都变成了60000,至此大功告成 如果没生效,第五步时提权`sudo ./rlimit 进程号`,再次检查是否生效 注意的点: - 记得把transmission的连接数修改为较大值,比如`60000` - 在每次重启transmission进程时(比如关机),如果进程改变,需要再次修改 - 群晖系统把连接数设置为1024的阈值是有自己的考量的,且对硬盘的伤害较大,如果你的硬盘和数据比较重要,请小心谨慎 最后修改:2022 年 01 月 17 日 © 允许规范转载 打赏 赞赏作者 支付宝 赞 0 如果觉得我的文章对你有用,请随意赞赏