UNRAID组装搭建日记-----又臭又长的记录文章!
创作立场声明:仅仅是自己做个记录,免得装完又忘记,自己搭建的网站博客用不了多久又会关掉,干脆记录在这里好了
【写作说明】:该文章记录自己组装和搭建UNRAID的过程,纯属个人折腾,不喜勿喷,本来是这篇文章一次性记录所有的内容,结果发现好像写不完的节奏,主要是有些东西来回折腾,有些抄作业,抄来发现并不适合自己,继续自己折腾,变动比较多,慢慢记录吧。
购买理由
从群晖,到威联通,折腾过软路由、黑群晖、黑威联通,最终上了UNRAID的车,一直有自己折腾NAS的心,但是时间不充足,也不是专门搞这个的,自己找教程瞎弄,记录下UNRAID的组装和搭建过程,纯属个人爱好。
整机还没组装完,只因机箱还没到,年前预定的TANK电玩家的6盘位 家用 NAS MATX A4 黑群晖 企业 静音 文件 服务器 机箱,等了半年,马上就到货了,这大概是毕业机箱了,不会再折腾。
整机8600K+Z370M D3H+金士顿 16GB DDR4 3200(回头再加一条)+2*4T HDD校验盘+3*2T HDD存储盘+2*250G NVME缓存盘+4网口366FLR服务器网卡+台达400W静音电源
功耗在平时正常文件备份、DOCKER运行时,功率40W左右,满载还没测试。
外观展示:TANK家图用一下,机箱暂时没到
硬件准备
1、CPU:手上有三颗CPU,一颗i3 8300T,一颗i5 8600T,还有一颗i5 8600K,家里的黑苹果M720Q用了一颗i5 8600T,NAS上最终选择了i5 8600K。
2、主板:主板的话家里有一块H370N WIFI,这是一块ITX主板,想想以后需要扩展网卡、显卡之类的,最终又淘了一块自用二手Z370M D3H,咸鱼350包邮顺丰入手,谢谢南京老哥。
3、内存:内存在咸鱼上淘了一根金士顿 (Kingston) 16GB DDR4 3200 台式机内存条 骇客神条 Fury雷电系列 RGB灯条,又淘了一根金士顿 (Kingston) 16GB DDR4 3600,配在一起,总共32G,经过测试还都不错。
4、散热器:准备使用TANK家机箱送的4热管散热器,看起来挺好用。
5、机箱就是TANK家的,这个机箱看着挺不错,我之前其实已经装了一台,用的另外一款小机箱,不过还是喜欢这个,看着就赏心悦目。
6、电源:这个也是之前用的,淘宝215台达400瓦改模组静音电源,用下来效果还不错,继续使用。
7、硬盘:这部分都是自己之前在用的,有2T*3、4T*2,其他缓存用两条250G的M.2 NVME SSD用用,等便宜了再买。
8、其他零碎:有亮机显卡、双口万兆网卡、四口千兆网卡,有空再折腾。
装机效果图等机箱到了装好再发,应该是很不错的,满心期待,下面是很长很长的装软件方面的记录。
装机过程
1、UNRAID系统安装
我是买的UNRAID OS 高级版,算是支持下正版,既然准备长期使用这个系统,就买了。
详细的装机过程就不说了,这个官网和大佬的教程很多,也是很简单的,U盘我用的是闪迪(SanDisk)16GB USB3.1 U盘 CZ430酷豆,小巧好用。
提醒一点:安装好系统之后,如果安装好了一部分DOCKER和虚拟机,尽量备份一次闪存,每次安装一部分应用,就备份一次,避免闪存出现问题,很多东西会丢失,我就遇到过一次。
2、系统初始设置
①设置时区和服务器,这个有些不设置,会遇到无法激活问题。
②安装应用市场:链接
③其他一些设置:安装中文,增加一个管理用户,磁盘设置自动启动阵列,新建一些共享文件,启用DOCKER,启用虚拟机等。
3、安装插件
①安装插件:Unassigned Devices,可以挂载硬盘、U盘等,很实用
②安装插件:Dynamix S3 Sleep,可以休眠硬盘,设置硬盘休眠后在指定的时间休眠
③安装CPU温度显示插件Dynamix System Temperature;
再安装安装NerdPack,打开插件 ,找到刚刚安装的NerdPack,打开它,搜索框里输入perl搜索,然后把后面的开关打开,最后点击apply;然后在回到插件,找到Dynamix System Temperature,点击进去;点击detect,通过“传感器检测”脚本搜索可用的驱动程序;然后点击save,保存驱动程序,在下面选择对应的温度点击save就可以了;
④安装插件:Dynamix System Buttons,可以实现一个快速重启,关机的按钮
⑤安装插件:Dynamix System Stats,可以显示各种性能参数,帮我们监控UNRAID的占用率
⑥安装插件:CA Fix Common Problems,可以检测出我们的配置有没有问题
⑦安装插件:Dynamix SSD Trim,适合有缓存的用户使用,可以定期将SSD的资源移动到阵列里
⑧增加插件:My Servers,这个插件还在开发中,目前是测试版本,不过很好用,可以将Flash自动备份到Unraid的服务器上,方便在系统出现问题并忘记手动备份时还原
⑨增加插件:Appdata Backup,可以备份Appdata数据,在出现问题时还原,我的Appdata数据都是在缓存盘里,Appdata文件夹设置缓存为“仅 : Cache”,在缓存盘出现问题时,Appdata数据会丢失(最近经常拆装,增加一些配置,更换机箱之类的,出现过缓存盘无法读取问题,导致Appdata数据丢失,还好没怎么开始装DOCKER,干脆从头重装的,如果有Appdata数据备份的话,就不需要了)
4、安装DOCKER
模板存储库:
①安装Aliyun-DDNS,将IP解析到域名,实现远程访问(看个人需求,不在Unraid做DDNS的不需要装,我之前是ASUS路由器直接做DDNS)
进入DOCKER选择添加容器,选择模板为Aliyun-DDNS,填入阿里云ID、KEY、域名,点击应用。
需要使用NginxProxyManager做反代的,在域名中可以填入多个子域名,例如我的xxx.com,only.xxx.com等
②安装MariaDB
参数设置:最后一行key3创建数据库密码,Key1 2可在终端输入ID NAME(你的非ROOT用户名)查询
③创建数据库方法1:安装Phpmyadmin(数据库管理)-推荐
phpMyAdmin可以方便的对数据库进行管理:MYSQL_USER:默认root,MYSQL_PASSWORD:上面创建MariaDB的Key3密码,MYSQL_HOST:UNRAID IP地址,MYSQL_PORT:默认端口,Web UI PORT:访问端口
创建数据库方法2:
mysql -uroot -p 输入刚自定义的MariaDB密码
CREATE USER 'nextcloud' IDENTIFIED by 'nextpassword'; 创建用户nextcloud,密码nextpassword
CREATE DATABASE IF NOT EXISTS nextcloud; 创建数据库名称nextcloud
GRANT ALL PRIVILEGES ON nextcloud.* TO 'nextcloud' IDENTIFIED BY 'nextpassword'; 授权权限
quit
重新在MariaDB中创建了nextcloud的用户,密码nextpassword,并且在nextcloud用户中创建了nextcloud数据库,并授权,简单点还是直接在Phpmyadmin中创建数据库即可
访问并登录,创建一个nextcloud数据库
④安装NextCloud
如果出现提醒不被信任的域名,可以去之前映射的配置文件夹config下,修改config.php文件,添加如下代码允许所有IP访问
//完整的代码
//索引数字顺延就可以
'trusted_domains' =>
array(
0 => '127.0.0.1',
1 =>'www.xxx.com'
2 =>'xxx.com'
⑤安装Redis缓存配置
修改config.php文件,添加如下代码,代码中host需要改成自己Redis的地址
'memcache.locking' => 'OCMemcacheRedis', 'redis' => array ( 'host' => '172.17.0.6', 'port' => 6379, 'password' =>'xxxxxx', ), 'memcache.locking' => 'OCMemcacheRedis'
⑥NextCloud部署SSL证书
之前想过用NginxProxyManager做反代部署SSL,但是经过实测,发现NginxProxyManager转发之后远程同步客户端经常断连,初始同步速度很快,然后逐渐变慢,最后就是蜗牛爬,速度令人发指,取消NginxProxyManager反代之后速度再次上来,随之取消反代,直接部署
首先自有顶级域名,随意,有最好,没有白嫖也行,自己查百度,我用的阿里云域名,证书申请用的FreeSSL,证书申请十分方便
①证书申请好之后,可以在KeyManager中直接导出,到处格式为nginx格式的证书,会有一个xxx.crt和xxx.key两个证书文件,将两个证书文件复制到/mnt/user/appdata/nextcloud/keys/文件夹内,并重命名cert.crt和cert.key,覆盖原来的证书文件
②修改/mnt/user/appdata/nextcloud/nginx/site-confs/default文件
server_name xxxx.com;——两处加上自己的域名
fastcgi_param HTTPS on;——修改为on
③修改/mnt/user/appdata/nextcloud/www/nextcloud/config/config.php文件
此处增加几行代码:域名url指向和访问端口
'trusted_proxies' => ['letsencrypt'],
'overwrite.cli.url' => 'https://www.xxxx.com:xxxx',
'overwritehost' => 'xxxxx.com:xxxx',
'overwriteprotocol' => 'https',
保存后重启NextCloud,记得在路由中将端口号转发出去,然后在外网浏览器中输入https://www.xxxx.com:xxxx,网站已经部署SSL
⑦为NxetCloud部署OnlyOffice服务,实现在线阅览和编辑文档
在应用中搜索onlyoffice,发现有很多版本,我初始安装的是官方大众版吧,但是发现总是提示非专业版不能在线编辑之类的,随后换了其他版本,有个没有20用户限制并支持移动编辑的,先试试看,或者其他版本也可以,方法是一样的,难点是必须部署SSL,否则NxetCloud无法连接到OnlyOffice服务
首先安装onlyoffice,版本随意,安装完成后在data文件夹中新建一个cert文件夹,把前面下载的证书文件xxx.crt和xxx.key复制到文件夹中,并重命名为onlyoffice.crt和onlyoffice.key
重启onlyoffice容器,等待5分钟左右,记得在路由器中将onlyoffice的443访问端口转发出去,在浏览器中打开https://www.xxxx.com:xxxx,已经部署SSL上锁
下面就是在NextCloud中,进入应用,安装OnlyOffice,打开设置,将https://www.xxxx.com:xxxx填入文档编辑服务地址中,保存,连接上即可,下面就可以在NextCloud中直接打开Office文件了。
还有一些DOCKER应用慢慢安装和折腾,后面再记录。
五、记录一下如何将缓存盘/池中的文件转移到阵列:
网上大部分都是建议DOCKER、VM和一些常用文件夹选择缓存为“仅”或者“首选”,按照UNRAID的缓存机制
No:新的数据不会缓存,但如果有老的数据在cache中,Move后对老数据不会有任何变化。
Yes:新的数据会缓存,同时执行Move后,所有数据都会移入磁盘阵列。
Only:新的数据只会在缓存中,Move后新老数据没有动作。
Prefer:按字面理解就是倾向于。这种策略会将新的数据缓存,执行Move后,甚至会将原来存放在磁盘阵列中的数往cache中搬,直到cache满为止。
当我们需要将阵列中的数据转移到缓存时,选择“Prefer”或者“Only”,然后选择移动;
当我们需要将缓存中的数据转移到阵列时,选择“Yes”,然后选择移动;
六、安装Transmission
安装Transmission很简单,不再赘述,只讲一点,自己安装过程中遇到的问题
安装完Transmission后停止修改settings.json文件,通过vi /mnt/user/appdata/transmission/settings.json代码,修改完保存后,启动Transmission,修改的settings.json文件恢复到原始状态,无法给Transmission增加账号密码
解决方案:在Transmission容器里增加两个变量:
重新安装UI界面
wget 链接
bash install-tr-control-gitee.sh
选择第一个或根据自己喜好
OK,再打开Transmission,需要输入账号密码登入。
七、网卡分离直通,主板Z370M D3H,网卡是HP 366FLR 4口服务器千兆网卡转接卡,屏蔽5、6针脚
说一下,这个网卡插上去有时候开不了机,有时候又能开机,开机之后主板自带网口不能用,智能插网卡上的第一个网口,做完直通之后才能正常使用,网口继续插主板,366FLR做屏蔽直通
终端输入:lspci -nn | grep Eth 查询Plce网卡
lspci -s 03:00.0 -vvv | grep Capabilities 根据查询到的ID 进行查询是否支持,03:00.0是我得网卡ID,替换为自己查询的
cat /sys/bus/pci/devices/0000:03:00.0/sriov_totalvfs 来查看可以开多少VF网卡,其中03:00.0是你们自己网卡的,4口网卡一般是8,8个去掉一个物理网口,就是7
将pcie_acs_override=downstream intel_iommu=on iommu=pt igb.max_vfs=7,7,7,7添加到主界面→Flash→Unraid OS中
kernel /bzimage append intel_iommu=on iommu=pt igb.max_vfs=7,7,7,7 vfio-pci.ids=8086:1521 pcie_acs_override=downstream initrd=/bzroot
官网中有说:6.9.2版本可以删除上面黑体后保存,然后在工具→系统设备中把需要直通的网卡选择后点击“在引导时对VFIO选择了绑定”也可。——实测可行,已改用此方式
还有很多,慢慢折腾。
ARSENALWING
校验提示文案
sheep469
校验提示文案
telanx
校验提示文案
dsp110cf
校验提示文案
rollws
校验提示文案
煤矿工人爱洗澡
校验提示文案
挥手难回眸
校验提示文案
死小白
校验提示文案
busy
校验提示文案
xmskf
校验提示文案
王阿王
校验提示文案
sheep469
校验提示文案
值友7381038187
校验提示文案
值友9527Pro
校验提示文案
sheep469
校验提示文案
王阿王
校验提示文案
xmskf
校验提示文案
busy
校验提示文案
死小白
校验提示文案
挥手难回眸
校验提示文案
煤矿工人爱洗澡
校验提示文案
值友9527Pro
校验提示文案
值友7381038187
校验提示文案
rollws
校验提示文案
ARSENALWING
校验提示文案
dsp110cf
校验提示文案
telanx
校验提示文案
sheep469
校验提示文案