Loading... <div class="tip share">请注意,本文编写于 1776 天前,最后修改于 1248 天前,其中某些信息可能已经过时。</div> Unraid是挺好用的,但是因为家里用的移动,所以托管在github上的代码下载速度极慢,有时候遇到dns污染还会出现网络错误。由于还没有折腾好移动的光猫,索性就琢磨手动安装Unraid插件,实现加速。 <!--more--> ## 商店Feed加速 Apps选项卡经常会出现刷新失败,即使更换DNS也无济于事,通过查看`/usr/local/emhttp/plugins/community.applications/include` 目录下的 `paths.php`文件可以确定更新Feed需要的路径 这里可以通过反代方式切换到不容易被干扰的域名,也可以使用jsdelivr的CDN反代Github静态资源 我也在本站的 `/unraid/`路径下放置了对应的文件,并为不易访问的imgurl和github部分图片地址增加了反向代理,两小时更新一次,修改后的 `paths.php`如下 <iframe src="https://gist.github.com/issaccv/2321228f2ff4fb1b8595d9115c183015.pibb" width="600px" height="500px" frameborder="0"></iframe> **Update**:在经过一番[讨论](https://forums.unraid.net/topic/99338-%E5%B8%8C%E6%9C%9Bunraid%E8%83%BD%E6%94%B9%E5%96%84apps%E5%BA%94%E7%94%A8%E5%95%86%E5%9F%8E%E7%9A%84%E8%BF%9E%E6%8E%A5%E7%A8%B3%E5%AE%9A%E6%80%A7/)之后,考虑到替换文件并不能及时的跟上CA插件的版本更新,如果你急需加速,但是本gist没能跟上,不妨在`/usr/local/emhttp/plugins/community.applications/include` 目录下执行 ```shell sed -i 's/raw.githubusercontent.com/cdn.jsdelivr.net\/gh/g;/https:\/\/cdn.*/s/\/master/@master/g' paths.php ``` 这样就可以得到正确替换的使用jsdelivr加速过的App Feed,但是说老实话,这样得到加速过的Feed对插件下载这种仍需要走github的情况并不友好,我也在努力恢复本站`/unraid`路径下的文件。 ## 插件的安装 插件商店的连接是托管在github上的,安装插件只需在插件选项卡下粘贴好如下链接并点击安装 `https://raw.githubusercontent.com/Squidly271/community.applications/master/plugins/community.applications.plg` 我们直接访问这个网址,发现这是一段类似shell脚本的东西,里面指定了安装动作和卸载动作,以及运行前的环境。我忽然意识到Unraid是基于Slackware发行版的,这个发行版非常小众,没有常见的包管理器帮你把依赖装好,甚至就连启动服务也不是通过systemd而是类似BSD的方式。 但是仔细观察发现脚本中 ``` <FILE Name="/boot/config/plugins/&name;/&name;-&version;-x86_64-1.txz" Run="upgradepkg --install-new"> ``` 这一行命令是将在指定路径下的文件安装到系统中。故可通过手动下载好插件,放入对应的文件夹中,运行指令安装。 首先我们要先找到插件安装的脚本,只需要找到对应插件,点击安装,你可以在弹出的提示框中找到项目的地址,直接把这个文件上传到 `/boot/config/plugins/`下,并创建一个同名的文件夹 ![举个例子](https://www.issacc.top/usr/uploads/2020/02/3927085366.jpg) 按照上图的例子,这个文件夹应该命名为 `dynamix.system.info` 同时下载对应的txz文件放入该文件夹,最后在面板的Plugins页面手动选择安装plg文件即可。 ## Docker加速 Unraid自带的商店里大部分的应用是基于Docker的,只不过官方写好了一个模板,由于移动家宽连接Dockerhub的认证服务器总是超时,而通过传统方式添加国内源的办法又总是失效,这里可以使用修改启动脚本实现自启动生效。修改 `/boot/config/go`文件,添加如下代码: ```sh tee -a /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": ["https://*.mirror.aliyuncs.com"] } EOF ``` 也可以指定docker镜像的方式,在pull镜像的时候就指定 ``` docker pull dockerhub.azk8s.cn/linuxserver/qbittorrent ``` 即可避免因为网络问题导致部署失败。 注意,这一步需要替换模板中的 `Repository`为你的镜像地址,例如本例中的 `dockerhub.azk8s.cn/linuxserver/qbittorrent`而不是默认的 `linuxserver/qbittorrent` 最后修改:2021 年 07 月 13 日 © 允许付费转载 赞 如果觉得我的文章对你有用,请随意赞赏
11 条评论
2022年5月此方法已失效
有没有那么一种可能,就是这个方法我还在用,而且没有失效?(狗头)
是不是已经失效了
由失效的可能,因为Unraid的插件系统经常升级,但是需要改的地方没有变
@Issacc Can you contact Squid on the limetech forums. I want to integrate this CDN into CA itself, but have a couple of questions.
您可以在limetech论坛上与Squid联系吗? 我想将此CDN集成到CA本身,但有两个问题。
谢谢大佬的反代~
新手刚刚学习,一直为app商店打不开困扰,试过修改hosts和加DNS,仍就出现打不网页的问题,看了楼主的教程,一头雾水,没有找到php文件,不知道该怎么办,请救帮助,留下我的Email:xiangqini_ni@sina.com。
这个需要你ssh进unraid系统,如果你对这方面不太了解,我建议你先看看司波图的视频୧(๑•̀⌄•́๑)૭
paths.php文件的49行需要添加:
$caPaths['pluginWarning'] = "{$caPaths['flashDrive']}/plugins_accepted";
确实,后续会做更改,出现问题的原因是插件商店更新了୧(๑•̀⌄•́๑)૭