Reading view

There are new articles available, click to refresh the page.

使用群晖唤醒局域网内其他设备

之前我写了一篇用树莓派唤醒内网设备的文章,现在再写一篇通过群晖唤醒内网设备的。当然还是要你稍微了解 Linux 系统才可以。用的代码和之前文章的一样。

代码目录

首先在群晖套件中心安装 Web Station 和 Node.js v8(v12 的 npm 安装会提示 zlip 有问题的)。通常 Node.js 会在你安装某些应用时候就会装上的,如果没有装你需要先安装一下。

安装好之后打开 File Station 左边的列表应该就会出现一个 Web 文件夹,在文件夹里建一个 node 文件夹作为存放相关代码文件用,并且在 node 文件夹中再新建一个 logs 文件夹存放日志用。

群晖 Web Station 目录

然后修改一下之前树莓派文章的代码,主要是 pm2_config.json 文件改为绝对路径。一般 Web 文件夹绝对路径是 /volume1/web/,其中 volume1 是储存池的目录,如果你装了多个硬盘或者组阵列的话就需要你自己在终端查一下你 Web 文件夹的目录了。

{
    "apps" : [{
        "name"        : "nodewol",
        "script"      : "/volume1/web/node/index.js",
        "cwd"		 :	"/volume1/web/node/",
	"instances"  : "1",
	"log_date_format"  : "YYYY-MM-DD HH:mm Z",
	"log_file"   : "/volume1/web/node/log/wol.log",
	"error_file" : "/volume1/web/node/log/wol-err.log",
	"out_file"   : "/volume1/web/node/log/wol-out.log",
        "watch"      : true
    }]
}

群晖唤醒方式

群晖上不能安装 waleonlan,所以我们需要使用 nodejs 的 wol 包来实现唤醒设备。

/**
 * Post请求执行 shell 命令
 * 只要向这个地址提交 {"mac":"设备 MAC 地址"}
 * kaiyuan Hsie
 * https://boxks.com
 * */

//1. 导入express
var express = require('express');
// 解析器 需要安装 npm install -g body-parser
var bodyParser = require('body-parser');

// WOL 包 npm install wol
var wolfun = require('wol');

// 时间模块
var sd = require('silly-datetime');
var nowTime=sd.format(new Date(), 'YYYY-MM-DD HH:mm:ss');

// 创建 application/x-www-form-urlencoded 编码解析
var urlencodedParser = bodyParser.urlencoded({ extended: false });

// 创建服务器
var router = express.Router();

router.post("*", urlencodedParser, function (request, response) {
	//
	if (!request.body) {
		response.send("请提交设备 MAC 地址");
	} else {
		var thisMAC = request.body.mac;
		wolfun.wake(thisMAC, function(error, postText){
			if (error !== null) {
				console.log('-wol- exec error: ' + error+' '+nowTime);
				response.send('exec error: ' +error);
			} else {
				console.log("-wol- "+thisMAC+' '+postText+' '+nowTime);
				response.send('已经叫咗电脑开机!');
			}
		});
		  
	}
});

module.exports = router;

安装 PM2

开启群晖 SSH

在群晖控制面板的「终端机和 SNMP」中勾选「打开 SSH」然后应用。

接着打开你电脑上的终端,Windows 上按 Win+R 然后输入 CMD,或者在开始菜单按钮上右键,选择打开 CMD。

终端 SSH 连接

打开只会输入 ssh user@192.168.2.117 这样的命令,其中 192.168.2.117 替换为你群晖的 IP。通常在群晖页面右下角的系统状况可以看到。而 user 替换为你群晖的账号名。然后会提示你输入密码,这个时候你输入任何内容都不会显示出来的,你不用管,直接输入密码只会按 Enter 就好了。

如果你 nodejs 默认是 v12,则先输入 nvm set 8.9.4 切换回 v8 才能正常使用 npm!

然后安装 PM2

npm install pm2 -g

等待安装好只会会直接显示 pm2 的路径的,注意记下来,因为后面我们要用绝对路径来运行 pm2 的。这个路径一般都是在 Node.js 目录下面。

/volume1/@appstore/Node.js_v8/usr/local/bin/pm2
or
/volume1/@appstore/Node.js_v8/usr/local/lib/node_modules/pm2/bin/pm2

你可以测试一下运行上传的代码。

/volume1/@appstore/Node.js_v8/usr/local/bin/pm2 start /volume1/web/node/pm2_config.json

如果没有提示红色错误,直接显示表格运行状态的话就 OK 了。然后现在关掉这个测试。因为我们要用群晖的任务计划让他开机自动启动。

/volume1/@appstore/Node.js_v8/usr/local/bin/pm2 stop /volume1/web/node/pm2_config.json

设置开机启动

打开群晖的控制面板,选择任务计划,新增>触发的任务>用户定义的脚本。

设置群晖开启启动命令

任务名称随便你填写一个,用户账号选择 root。然后在任务设置页面「用户定义的脚本」上面测试的那段代码,然后按确定。

设置群晖开机启动命令

保存好只会记得勾选刚新建的项目前面的勾,然后右键>运行。这样就完成了。

设置反向代理

在控制面板中的「应用程序门户」里面的「反响代理服务」新增一项。

设置群晖反向代理

描述随便填,协议选择 Https,端口就是你想用来访问的端口,例如 10505(填5位数可以防止和常用端口冲突),勾选「启动 HTTP/2」,下面的「目的地」就是填 node.js 应用的信息,地址就是 127.0.0.1,端口就是应用的端口 5050。然后确定。

这样就可以把 mac 地址通过 post 发给 https://192.168.2.117:10505/wol 这个地址来唤醒局域网内的设备了。

至于 https 证书问题,如果你用群晖的 DDNS 就不需要额外操作,如果你是用自己的域名就需要用 acme 申请Let’s Encrypt证书了。

当然你要在外网访问还要在路由器上设置端口映射。我之前的文章有写,这这里就不重复了。


全自动化观影之 MoviePilot 安装与使用

根据作者意愿,请勿将本文转载至任何中国社交媒体与平台,包括但不限于小红书、Bilibili、微博、简书、什么值得买等。
全自动化观影之 MoviePilot 安装与使用

相信绝大多数搭建了 NAS 的人都有着一个比较重要的使用途径,即使用 Emby、Plex、Jellyfin 或 Infuse 来搭建专属于自己的家庭影院。在此之前,我一直使用 NasTools 与 Plex 来完成我的家庭影院搭建,可以很好的完成自动化的观影需求,在 NasTools 内订阅某个剧集或者某部电影,便不再关心资源下载等内容,等待 NasTools 自动完成即可,如下图所示。

全自动化观影之 MoviePilot 安装与使用

后续因为一些众所周知的因素,NasTools 的作者不得不停止更新并将 Github Repo 进行了 Archive 处理,尽管最后的版本对我而言仍旧可以保持日常需求,但是有的时候也不得不面对一些问题,比如在搜索资源时耗时越来越长等。但是有一个好消息,NasTools 的原作者最近开了新坑,基于 NasTools 的代码精简化需求,开发了新的影视管理工具 MoviePilot ,看到其他人的描述说新版本的软件运行速度有了相当多的提升。
话不多说,那便开始部署,我也在这里记录下我的安装过程,我在这里使用 Synology 的 Container Manager(原 Docker Manager),以下内容也可稍作修改应用到其他支持 Docker 的平台,就凭各位自行发挥了。

Synology Nas 准备工作

安装 Container Manager

打开 Synology 套件中心搜寻 Container Manager 并进行安装,安装过程根据相应提示即可。

全自动化观影之 MoviePilot 安装与使用

设置 Docker 工作目录

打开 Synology 控制面板,选择共享文件夹,创建新的共享文件夹,文件夹名称根据需求自行选择,我这里就叫做 docker。

全自动化观影之 MoviePilot 安装与使用

接下来,进入 Synology File Station,鼠标右键选择刚刚穿件的目录,进入 属性 菜单,选择 权限 菜单中的 新增,用户与组选项选择 EveryOne ,应用于全部文件夹,给予 读取与写入 权限,如下图:

全自动化观影之 MoviePilot 安装与使用

点击应用后再选择 应用到这个文件夹,子文件夹及文件,如下图,点击保存后即可。

全自动化观影之 MoviePilot 安装与使用

设置项目运行目录开始创建项目

在 File Station 内进入上一步设置的目录,新建文件夹,根据个人喜好选择命名即可,我这里将命名为 theater
设置完成后打开 Container Manager,点击左侧 项目,再选择 新增,根据自己喜好命名,路径选择为上一步设置的目录,来源选择 创建 docker compose,内容留空进入下一步即可,设置完成后如下图所示:

全自动化观影之 MoviePilot 安装与使用

完成后点进 theater 进入项目,选择 YAML 配置,我们的准备工作便已完成。

全自动化观影之 MoviePilot 安装与使用

我这里就继续沿用之前 NasTools 的配置文件了。

MoviePilot 依赖项目准备

CookieCloud 安装

根据 MoviePilot 项目描述,CookieCloud 为本项目的必须依赖,原文如下:

站点信息需要通过 CookieCloud 同步获取,因此需要安装 CookieCloud 插件,将浏览器中的站点 Cookie 数据同步到云端后再同步到 MoviePilot 使用。

服务端 Docker 安装

尽管 MoviePilot 项目中已经包含了公共 CookieCloud 服务器,但是本着能自建即自建的原则,我们也会在这里自行搭建 CookieCloud 服务器,docker compose 代码如下:

version: "3"
services:
  cookie-cloud:
    image: easychen/cookiecloud:latest
    restart: always
    network_mode: bridge
    hostname: cookie-cloud
    ports:
      - 8088:8088

将上面的代码复制粘贴进入 Container Manager,点击保存后选择启动,会看到 Container Manager 正在拉取镜像,如下图:

全自动化观影之 MoviePilot 安装与使用

等这里的代码结束运行后,在浏览器输入 http://${Synology IP}:8088,如果看到如下界面,则表示部署成功:

全自动化观影之 MoviePilot 安装与使用

浏览器插件安装

进入 CookieCloud Release 下载最新的浏览器插件,并进行解压保存。进入 Chrome 插件设置:chrome://extensions/,打开开发者模式,选择 加载已解压的扩展程序,选择刚刚的解压目录,点击选择进行安装,如下图所示:

全自动化观影之 MoviePilot 安装与使用

安装完成后,我们可以打开 CookieCloud 插件进行配置,具体的教程可以移步 官方教程 ,下面以我的配置进行示例:

全自动化观影之 MoviePilot 安装与使用

设置完成后点击下方 保存测试 确保这里配置正确。到此为止,CookieCloud 配置完成。

下载服务器安装(以 QBitTorrent 为例)

根据 MoviePilot 项目文档,其支持 QBitTorrentTranssisson,大家可以根据个人喜好自行选择,我这里便以 QBitTorrent 为例,Transsisson 大家可以自行搜寻相关内容进行安装。

服务端 Docker 安装

第一步我们需要在之前设置的 MovePilot 项目的运行目录内新建一个名为 qbittorrent 的目录,这里的目的是将 QBitTorrent 的部分文件映射出来,以便我们进行后续操作,如忘记密码的修改或者 docker 迁移。如下图所示:

全自动化观影之 MoviePilot 安装与使用

同时,我们需要新建 QBitTorrent 的下载目录,以我个人的设置为例,如下:

全自动化观影之 MoviePilot 安装与使用

我这里设置为 media/movies(seriese)/raw 存储下载的原始媒体文件,media/movies(seriese)/clean 存储经过刮削的媒体文件,downloads 目录存储其他的下载内容。
以上内容准备后,我们便可以开始部署,docker compose 文件如下,你可以根据你的需求进行修改,以下仅为示例:

version: "3"
services:
  qbittorrent:
    image: linuxserver/qbittorrent:latest
    container_name: qbittorrent
    network_mode: host # 可以更改为 bridge,我这里选择 host 仅为方便设置 ipv6
    restart: always
    volumes:
      - ./qbittorrent:/config   # 冒号左边请修改为你想保存配置的路径
      - /volume1/media:/media   # 媒体目录,多个目录需要分别映射进来,需要满足配置文件说明中的要求
      - /volume1/downloads:/downloads
    environment:
      - PUID=1026
      - PGID=100
      - WEBUI_PORT=8999
      - TZ=Asia/Shanghai  # 时区

我们再次进入 Container Manager,选择 停止 项目,并将上文的代码复制粘贴,随后再次点击启动,如下图:

全自动化观影之 MoviePilot 安装与使用

等待弹出窗口内代码运行完成后,浏览器内输入 http:${Synology IP}:8999 便可进入 QBitTorrent WEBUI,如下图:

全自动化观影之 MoviePilot 安装与使用

QBitTorrent WEBUI 配置

上一步后我们需要输入用户名(默认 admin)与密码(默认 adminadmin),便可以进入界面,点击设置图标便可以进入设置,各位根据自己的需求自行调参,可以参考 qBittorrent 参数详细设置教程

全自动化观影之 MoviePilot 安装与使用

媒体服务器安装(以 Plex 为例)

MovilePilot 支持 Emby、Plex 与 JsllyFin,大家可以根据个人需求选择相应的媒体服务器,我个人的体验结论是:

  • Emby 提供了较好的多人分享体验,也提供了多种客户端,如 Android、iOS、macOS、Apple TV等多平台,但其在 Apple TV 端的 APP 体验截止本文书写日期仍旧比较糟糕,如需 Apple TV 使用,一般需要搭配 Infuse 使用。
  • Plex 更加注重个人观影,也提供多平台客户端,Apple TV 客户端较为完善,达到了一般流媒体平台的流畅度与观影体验。
  • JellyFin 没有过多体验,但是可以把它理解为免费开源版的 Emby,手头紧张的朋友可以选择。

服务端 Docker 安装

在上一步中我们新建了媒体目录,在这一步便可以开始应用。同时,我们也需要新建一个目录用于存储 Plex 的配置,与上文中 QBitTorrent 相同,便不再赘述。这里的 docker-compose 文件如下,各位可以根据自己的需求进行修改:

version: "3"
services:
  plex:
    image: linuxserver/plex:latest
    container_name: plex
    network_mode: host
    restart: always
    environment:
      - PUID=1026
      - PGID=100
      - VERSION=docker
      - TZ=Asia/Shanghai  # 时区
    volumes:
      - ./plex:/config
      - /volume1/media:/media

这里步骤如上文相同,复制粘贴重新构建项目即可,这里不再赘述。

Plex WEBUI 配置

经过上文配置,这时便可以打开浏览器输入 http:${Synology IP}:32400,按照文字说明进行配置,可以参考 如何在 FreeNAS 上安装 Plex 媒体服务器,跳过前文的安装,直接从网页配置看起即可。

正文开始之 MoviePilot 安装

建议开始之前首先熟读 MoviePilot 配置文档,熟悉每一项环境变量的命名与含义。

服务端 Docker 安装

基础配置

与上一步相同的,我们需要新建一个目录用于存储 MoviePilot 配置,如图所示:

全自动化观影之 MoviePilot 安装与使用

然后我们便要开始稍显繁琐的 Docker 配置,我们跟随官方文档,开始一步步的编写 docker compose 文件,首先开头还是老几样:

version: "3"
services:
  moviepilot:
    image: jxxghp/moviepilot:latest
    volumes:
      - ./movie-pilot:/moviepilot # 冒号左边请修改为你想保存配置的路径
      - ./movie-pilot/config:/config#  冒号左边请修改为你想保存配置的路径
      - /volume1/media:/media # 媒体目录,多个目录需要分别映射进来,需要满足配置文件说明中的要求
      - ./qbittorrent/qBittorrent/BT_backup:/BT_backup #qb 种子目录,转移和辅钟需要
      - ./nastools/config:/nas-tools/config # nt数据库,用于转移历史记录,如果之前没有安装过 NasTools 的可以忽略删除这一行
    restart: always
    network_mode: bridge
    ports:
      - 3003:3000
    hostname: movie-pilot

以上这一部分为基础配置,接下来才是重头戏。

环境变量设置

要在 compose 文件中设置环境变量,其关键词为 environment,只需要在上文中的代码中继续加入即可,接下来我们来一个个的填入 需要配置的环境变量。

Docker 运行权限管理

首先我们要获取 Synology 用户的 uidgid,这里可以通过 ssh 到 Synology 输入命令来获取,第一步需要打开 Synology 的 ssh 权限,如图所示:

全自动化观影之 MoviePilot 安装与使用

接下来我们可以使用如下命令获取相关内容:

ssh ${username}@${Synology IP}
# 根据提示信任 Host 以及输入密码进行验证
username@SynologyNas:~$ id
uid=1026(username) gid=100(users) groups=100(users),101(administrators)

获取到上述内容之后,我们便可以设置以下内容,关于这里为什么不设置默认值,因为默认值为 0 的话即表明该程序可以获得我们 Synology 的 root 权限,这是不大安全的,具体的大家可以自行搜寻相关资料进行了解,这里不再赘述,这一步我们需要添加的环境变量如下:

    environment: 
      - PUID=1026 # 运行程序用户的 uid,默认 0
      - PGID=100  # 运行程序用户的 gid,默认 0
      - UMASK=022 # 掩码权限,默认 000,可以考虑设置为 022
      - MOVIEPILOT_AUTO_UPDATE=true #重启更新,true/false,默认 true
Docker 网络以及用户管理
    environment: 
      - MOVIEPILOT_CN_UPDATE=false #重启更新是否使用国内加速,true/false,默认false 
      - NGINX_PORT=3000 #WEB服务端口,默认3000,可自行修改,但不能为3001
      - SUPERUSER=admin #超级管理员用户名,默认admin,安装后使用该用户登录后台管理界面
      - SUPERUSER_PASSWORD=password  # 超级管理员初始密码,默认password,建议修改为复杂密码
      - API_TOKEN=moviepilot #API密钥,默认 moviepilot,在媒体服务器 Webhook、微信回调等地址配置中需要加上 ?token= 该值,建议修改为复杂字符串
      - PROXY_HOST=http(s)://ip:port #网络代理(可选),访问 themovied b需要使用代理访问,格式为 http(s)://ip:port
      - TMDB_API_DOMAIN=api.themoviedb.org # TMDB API地址,默认 api.themoviedb.org,也可配置为 api.tmdb.org 或其它中转代理服务地址,能连通即可
MoviePilot 文件下载路径管理
DOWNLOAD_PATH: 下载保存目录,注意:需要将 moviepilot 及下载器的映射路径保持一致,否则会导致下载文件无法转移

这里的这一句话看起来有些绕,但是我们解决的方式其实很简单,我们只需要保持 MoviePilot 与 QBitTorrent 的 Docker 下载目录映射名称一致即可,我们在之前已经将其均设置为 media,所以这里无需过多考虑。

    environment: 
      - DOWNLOAD_PATH=/media #下载保存目录,注意:需要将moviepilot及下载器的映射路径保持一致,否则会导致下载文件无法转移 - 仅供参考
      - DOWNLOAD_MOVIE_PATH=/media/movies/raw #电影下载保存目录,必须是DOWNLOAD_PATH的下级路径,不设置则下载到 DOWNLOAD_PATH
      - DOWNLOAD_TV_PATH=/media/series/raw #电视剧下载保存目录,必须是DOWNLOAD_PATH的下级路径,不设置则下载到 DOWNLOAD_PATH
      - DOWNLOAD_CATEGORY=false #下载二级分类开关,true/false,默认 false,开启后会根据配置 category.yaml 自动在下载目录下建立二级目录分类,因为我不需要这里进行更加详细的分类,电影与剧集两个分类即可,所以可以保持 false,各位可以根据自身需求进行更改
      - DOWNLOAD_SUBTITLE=true #下载站点字幕,true/false,默认true
      - REFRESH_MEDIASERVER=true #入库刷新媒体库,true/false,默认true
      - SCRAP_METADATA=true #刮削入库的媒体文件,true/false,默认true
      - TORRENT_TAG=MOVIEPILOT #种子标签,默认为 MOVIEPILOT,设置后只有 MoviePilot 添加的下载才会处理,留空所有下载器中的任务均会处理
MoviePilot 媒体库文件设置

这里的路径与上文相同,我们只需要保持 MoviePilot 与 Plex 的 Docker 媒体库目录映射名称一致即可。

    environment:
      - LIBRARY_PATH=/media #媒体库目录,多个目录使用,分隔 - 仅供参考
      - LIBRARY_MOVIE_NAME=movies/clean #电影媒体库目录名,默认电影
      - LIBRARY_TV_NAME=series/clean #电视剧媒体库目录名,默认电视剧
      - LIBRARY_CATEGORY=false # 媒体库二级分类开关,true/false,默认 false,开启后会根据配置 category.yaml 自动在媒体库目录下建立二级目录分类,可以根据自身需求进行更改
# 转移方式,支持link/copy/move/softlink
      - TRANSFER_TYPE=link
CookieCloud 配置
    environment:
      - COOKIECLOUD_HOST=http://10.0.0.6:8088  # CookieCloud服务器地址,格式:http://${Synology IP}:port,必须配置,否则无法添加站点
      - COOKIECLOUD_KEY=从 CookieCloud 插件复制
      - COOKIECLOUD_PASSWORD=从 CookieCloud 插件复制
      - COOKIECLOUD_INTERVAL=180  # CookieCloud同步间隔(分钟)
# CookieCloud对应的浏览器UA
      - USER_AGENT=Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36 #CookieCloud 对应的浏览器 UA,可选,设置后可增加连接站点的成功率,同步站点后可以在管理界面中修改
通知器设置

暂时跳过。

下载器配置

以 QBitTorrent 为例,其他的请自行探索。

    environment:
      - DOWNLOADER=qbittorrent #下载器,支持qbittorrent/transmission,QB 版本号要求>= 4.3.9,TR 版本号要求 >= 3.0,同时还需要配置对应渠道的环境变量,非对应渠道的变量可删除,推荐使用 qbittorrent
#qbittorrent设置项
      - QB_HOST=http://10.0.0.6:8999 #qbittorrent地址,格式:http://${Synology IP}:port,https需要添加 https:// 前缀
      - QB_USER=username #qbittorrent用户名
      - QB_PASSWORD=passport #qbittorrent密码
      - DOWNLOADER_MONITOR=true #下载器监控,true/false,默认为true,开启后下载完成时才会自动整理入库
媒体服务器设置

以 Plex 为例,首先我们需要获取 X-Plex-Token,在浏览器中登陆 Plex,F12 进入开发者模式,选择 Network,搜索栏输入关键词进行搜寻,如下图所示:

全自动化观影之 MoviePilot 安装与使用

获取后进行复制粘贴即可。

    environment:
      - MEDIASERVER=plex #媒体服务器,支持emby/jellyfin/plex,同时还需要配置对应媒体服务器的环境变量,非对应媒体服务器的变量可删除,推荐使用emby
      - PLEX_HOST=http://10.0.0.6:32400 # Plex 服务器地址,格式:http://${Synology IP}:port,https 需要添加 https:// 前缀
      - PLEX_TOKEN= # Plex 网页 Url 中的 X-Plex-Token ,通过浏览器F12->网络从请求URL中获取
      - MEDIASERVER_SYNC_INTERVAL=1 #媒体服务器同步间隔(小时),默认 6,留空则不同步
认证站点设置

因为某些原因,MoviePilot 首先需要你时某一些 PT 站点的会员,才可进行使用,尽管这样提高了本项目的使用门槛,但这样可以使得本项目更加长久。详细内容可以参考 Movie Pilot 用户认证
这里以 Audiences 进行举例,我们首先需要获取 uidpasskey,登陆网站后,点击控制面板,即可获得,如下图所示:

全自动化观影之 MoviePilot 安装与使用

获取后进行复制粘贴即可。

    environment:
      - AUTH_SITE=audiences  # 认证站点,支持hhclub/audiences/hddolby/zmpt/freefarm/hdfans/wintersakura/leaves/1ptba/icc2022/iyuu
      - AUDIENCES_UID=uid
      - AUDIENCES_PASSKEY=passkey

部署 MoviePilot

与上文相同的,将最后的完成版复制粘贴加入 Container Manager,重新构建项目即可。

WEBUI 配置

打开 http://${Synology IP}:3003,如果出现登录界面,即表明安装成功,如下图所示:

全自动化观影之 MoviePilot 安装与使用

输入上文中设置的账号密码登录后,即可进入主界面,如下图所示:

全自动化观影之 MoviePilot 安装与使用

接下来便可以由你来进行探索这里的设定了,更加详细的关于 WEBUI 内的配置也会在日后在本文内进行更新。

给群晖加一个UPS

UPS——不间断电源,就是一个大型的充电宝,能在停电后给你的机器提供几分钟的供电时间,让你有时间思考一下是不是得换个小区住了。
——五花肉肉。

在一个月时间内家里连续停电两次,都是发生在夜间,停电后又恢复。第一次由于没有给群晖NAS设置停电后来电重启,导致我到了公司却连不上家里的NAS,耽误了些事。那次就决定买一个UPS不间断电源了,结果双十二忘记了,第二次发生在前天,起床后蹲马桶上就下了一单。

我知道现在的UPS都无法在停电后提供很长时间的供电,我想要的是停电后能自动关机,确保数据不会因为自动断电而损坏就行了,在这个基础上UPS的体积越小越好。

首先在群晖官网的兼容性列表里查我的918+兼容的UPS型号,大概考虑购买渠道、价钱、体积、外观几个因素后选定了Santak的TG-BOX 600,到底是不是最适合我的那些条件的,我也不知道,毕竟马桶不能蹲太久。

别废话,先看东西。

包装很简单,附送一条USB数据线和一张说明书就完了。说实话虽然选的最小号的UPS,但实物之大还是超乎我的想象,比我的脚大多了。需要注意的是左侧这一排是不间断电源,而右侧这一排则是普通防雷电源。

电源的顶部开关,保险,两个USB充电口(都说是个充电宝了嘛),还有一个USB通讯口,可以和NAS连接。背部还可以拆卸电池,如果内置电池寿命到了可以自行更换。

连接NAS

电源接入家里的电源插座,NAS电源插入UPS”不间断电源“这一排插座,附赠的USB数据线连接UPS的通讯口和NAS的USB接口就行了。

NAS设置

在群晖系统设置-电源-不断电系统里勾选“启用UPS支持”,应用即可。因为我购买的是群晖兼容性列表里提供的UPS型号,所以没什么其它设置了,如果不是的话可能还要选择UPS的型号。

”Diskstation进入安全模式之前的等待时间”选项是说当停电时不会马上关机,而是达到你设置的时间或者电池用完后才关机。

“设备信息”则可以查看UPS的状况。如下图

另外还要在电源-常规里勾选“电力故障排除后自动重启启动”,这样来电后就会自动开机了。

祝大家玩得开心。

威联通还是群晖

一年前入坑玩NAS买了台威联通(QNAP)的TS-453B mini,一年后我换了台群晖918+,如果上网搜的话会感觉到群晖的用户远多于威联通用户,是不是群晖就一定比威联通的好呢?

我的答案

不是

为何要换群晖

没用过,想试试,仅此而已。

凭记忆来聊聊两个机器的印象

因为我的威联通已经咸鱼出掉了,所以只能凭记忆尬聊。

以下比较仅限于威联通TS-453B mini和群晖918+,两台设备实际入手价相差一千多元,所以有些东西看看就好。

硬件

  1. 群晖做工略好,虽然都是塑料壳子,但群晖摸起来明显高档,不过两台机器相差一千多元所以也不具备可比性。
  2. 群晖散热略好,从系统读取的数据来看硬盘温度35°左右,而威联通基本都在38°~40°。
  3. 群晖风扇声音较小,但硬盘声音比较大,两台设备都只能放在客厅,绝对不能放在写字桌旁,都是无法忽略的吵。
  4. 两台机器都有双千兆网口,都可以链路聚合,但我家其他硬件不支持所以没试过效果。
  5. 两台机器都有两个内存插槽,威联通可以在机器外部更换,较为方便,而群晖必须拆掉硬盘才能更换。威联通随机配的是两条2G频率1677的内存,群晖随机配的是单条4G频率1866的内存,最后都换成了我自己买的两条8G频率1677的,目前使用没问题。(不玩虚拟机的话4G足够用了)
  6. 威联通的很多机型都有HDMI接口,可以方便地直接接电视使用,但至少我用的这款TS-453Bmini不推荐这样使用,它并不是在电脑上管理NAS后台,而是用虚拟机另外虚拟了一个系统,有专用的app,太卡了,别说播放4k电影了,操作个界面我都想把机器砸了,随便买个几百块的电视盒子都比它流畅。另外,如果用了这套虚拟系统后,就无法再安装其他虚拟机了。
  7. 群晖918+没有HDMI接口,但是有两个ssd缓存插槽(仅能做缓存使用),目前我还未使用,网上看了一下,一般情况下对文件传输没有太大影响,但如果经常需要传输大量小文件的话速度提升非常明显。我一个人使用的话没有必要,啥时候捡到便宜的ssd了再插。
  8. 同样的网络环境里,两台机器都能跑满我家的千兆网,传输速度都在100M/s以上,但威联通的传输速度略好一些,可以达到113M/s,而群晖只能达到110M/s,传输大文件的时候威联通的稳定性也要好一些几乎不掉速,群晖就不那么稳定了。两台机器的硬盘我都是采用的基本模式,没有组raid。
  9. 两台机器对于3.5寸硬盘都可以做到免工具拆装,对于硬盘槽群晖略好,有弹簧助力还可以上锁,进一步防止意外,两台机器都支持硬盘的热插拔。
  10. 群晖的开关机速度明显快于威联通,尤其是开机速度,提升明显。

系统

网上说的比较多的应该是这部分,基本都说群晖系统好,但我不太同意。

  1. 外观界面群晖显得更精致,字体啊,图标啊,都更漂亮,整体布局比较土。
  2. 大家都称赞群晖系统易用,这个我觉得是最大的误解,对于没接触过NAS且网络相关知识不太熟悉的人来说也许是对的,但我是先接触的威联通再换的群晖,我的感觉是群晖不是“简易”,是“简陋”,比如web服务器,你得单独安装一个套件,webdav你得单独安装一个套件等等,而每个功能显示的内容,可设定的选项都要远少于威联通,所以你可以说这是易用,但对于喜欢掌控自己机器的人来说威联通会更好。
    再举一个例子,创建虚拟机时威联通会直接显示出各虚拟网关,物理网关的拓扑图,而群晖只有纯文字显示。
  3. 两台机器的cpu是一样的,系统响应速度感觉上也差不多,后台管理都很流畅,稳定性上感觉威联通好一点,例如第一方的网盘功能群晖偶尔会重启,威联通从未遇过,当然也可能有只是我不知道;而第三方的功能已经碰到好几次emby停止服务要手动重启了,威联通一次都没碰到,当然也可能是软件本身的问题。
  4. 手机软件,界面仍然是群晖的美观,但登录方面还是威联通的方便,威联通设置好账号,局域网地址,外网地址后会自动根据你上网的环境切换登录方式,只要网络没问题肯定有一种方式能连接后台,但群晖不行,如果你登录的是局域网,到了外网后还得手动退出再切换一下外网登录方式才行。而使用功能上我觉得对于后台系统管理威联通比较详细,群晖太简陋,其他功能差不多,下载,网盘,这些两者差不多。(影音,相片这些功能我并未使用,所以不太清楚)

软件

  1. 第一方软件,威联通数量较多,但常用的两者都差不多,这方面不用纠结,而下载速度上群晖优势明显。
  2. 第一方软件我常用的网盘,网站服务器,这些都是群晖较好,但网络连接各种协议的设定威联通比较集中也更清晰。虚拟机,docker这方面也是威联通的更清楚。
  3. 最近群晖系统升级后与迅雷合作推出“玩物下载”,其实就是官方的迅雷远程下载,速度还行,但也跑不满我家300Mb带宽,使用这项服务需要迅雷会员,没有白金以上会员的话会限速。目前这个可能是群晖独享,不知威联通上以后会不会有。
  4. 第三方软件,群晖的使用群体大,所以软件质量也好一点,各种社区也比威联通的要活跃,大多数时候下载速度也会快一点。有些第三方开发商也会直接提供下载源,这样就不用去网站下载app了,在群晖套件中心就能更新,例如emby。但这其实未必是好事,国内的互联网说不能访问就不能访问了。

综上

  1. 硬件配置,系统稳定性上威联通略好。
  2. 系统美观性,易用性(针对普通用户)群晖略好。
  3. 第一方软件,群晖略好。
  4. 喜欢折腾,玩虚拟机,熟悉各种网络协议的,威联通更好。
  5. 外观、做工,一分钱一分货。

❌