群晖入门到进阶系列(五):其他套件优化

  群晖的套件体系很完善也十分强大,虽然易用性以及很强,但是还是有一部分需要动手配置一下,本文分享一些收集的资料。

Photo Station 优化

解决DSM菜单中photo station入口端口错误

在使用广域网访问家庭NAS相册Photo Station时,通过DSM桌面点击PhotoStation图标时跳转需要手动更改端口才能正确访问到PhotoStation。

本小节全文摘于: https://post.smzdm.com/p/a83g963n/ ,感谢 @胖头鱼Libra,作者原文更详细,欢迎去作者原文阅读与打赏,这里 Alliot 只作摘录备份

/usr/syno/synoman/webman 创建文件 DsPhoto.source.js 内容如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
function parseURL(url) {
var a = document.createElement("a");
a.href = url;
return {
source: url,
protocol: a.protocol.replace(":", ""),
host: a.hostname,
port: a.port,
query: a.search,
params: (function() {
var ret = {}, seg = a.search.replace(/^\?/, "").split("&"), len = seg.length, i = 0, s;
for (; i < len; i++) {
if (!seg[i]) {
continue
}
s = seg[i].split("=");
ret[s[0]] = s[1]
}
return ret
}
)(),
file: (a.pathname.match(/\/([^\/?#]+)$/i) || [, ""])[1],
hash: a.hash.replace("#", ""),
path: a.pathname.replace(/^([^\/])/, "/$1"),
relative: (a.href.match(/tps?:\/\/[^\/]+(.+)/) || [, ""])[1],
segments: a.pathname.replace(/^\//, "").split("/")
}
}
function getReplacePhotoURL(url) {
var photoURL = parseURL(url);
var photoNewUrl = photoURL.protocol + "://" + photoURL.host + ":" + photoPort + photoURL.path + photoURL.query;
return photoNewUrl
}
var timer = window.setInterval(function() {
if (SYNO.SDS.UrlTag != null) {
var photoNewUrl = getReplacePhotoURL(SYNO.SDS.UrlTag.photo);
SYNO.SDS.UrlTag.photo = photoNewUrl;
var pphotoNewUrl = getReplacePhotoURL(SYNO.SDS.UrlTag.pphoto);
SYNO.SDS.UrlTag.pphoto = pphotoNewUrl;
window.clearInterval(timer)
}
}, 50);

编辑 /usr/syno/synoman/webman/desktop.html 在倒数第二行添加 js 引用:

1
<script type="text/javascript" src="webman/DsPhoto.source.js"></script>

保存后,重新刷新DSM页面,桌面点击 DS Photo 则可以直接跳转到指定端口。
也可以使用脚本直接替换:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#!/bin/sh

echo "port: $1"
rm -fr /usr/syno/synoman/webman/DsPhoto.source.js
wget -P /usr/syno/synoman/webman https://gitee.com/libra-1010/ds-photo/raw/master/DsPhoto.source.js
sed -i "1i\var photoPort = '$1';" /usr/syno/synoman/webman/DsPhoto.source.js
if grep -q "<script id=\"DsPhoto\"" /usr/syno/synoman/webman/desktop.html
then
echo '已可广域网访问'
else
# line=`sed -n "/<\/body>/=" test.html`
# echo $line
sed -i '/<\/body>/i<script id="DsPhoto" type="text/javascript" src="webman/DsPhoto.source.js"></script>' /usr/syno/synoman/webman/desktop.html
echo '已替换'
fi

Audio Station 添加歌词插件

  AudioStation是群辉下的音乐管理套件,可以很方便的创建维护自己的音乐库,有效的不再依赖第三方音乐服务商。自带的歌词插件资源少,之前很多朋友都是用的网易云的歌词插件,但是在我体验之后发现还是,52pojie 的小歆大神写的QQ音乐歌词的插件比较全: 群辉AudioStation歌词插件(QQ音乐版)
  效果如图:
  群晖-audiostation-QQ音乐歌词插件

Active Backup for Business 解锁

  Active Backup for Business 是一个十分强大的备份套件,可以集中保护 PC、物理服务器或虚拟机,甚至是云端中的数据,快速恢复文件、系统、业务数据。无论备份多少设备。(详细介绍见Synology Active Backup for Business-群晖官方
  Alliot 目前是用来备份云服务器以及 PC 电脑(Alliot 用到的群晖上的备份策略会在后面的文章中专门讲到)。
  白群晖用户登录 synology 账号即可使用,黑群晖需要按照如下方法解锁方可使用:
  
  套件中心安装好 Active Backup for Business 套件之后,打开会如下图所示要求激活:
  群晖-activebackupforbusiness未激活.png
  使用浏览器访问

1
ip:5001/webapi/auth.cgi?api=SYNO.API.Auth&method=Login&version=1&account=用户名&passwd=密码

返回结果如下:

1
{"success":true}

则表示成功,再打开

1
https://群晖的ip:5001/webapi/entry.cgi?api=SYNO.ActiveBackup.Activation&method=set&version=1&activated=true&serial_number="序列号"

返回结果如下:

1
{"data":{"activated":true},"success":true}

进入 DSM 重新打开 Active Backup for Business 如下图则表示激活成功:
群晖-activebackupforbusiness已激活.png
(路由器映射 5510 端口 TCP 才能在公网进行备份)

Transmission 安装与汉化

   Transmission 是许多 PT 爱好者中意的下载工具之一(后面 Alliot 将专门讲一讲 PT 下载这个东西,这里不多赘述),但是其官方的 UI 十分简陋,也不包含中文语言,将其汉化与 UI 替换后易用性会大大增加。

安装

  添加社区套件源,搜索 Transmission,点击 “安装套件” 后:
  如图,配置下载路径,以及 Web 控制台管理员用户密码:
  群晖-transmission安装1.png
  群晖-transmission安装2.png
  之后按照指引下一步直到完成即可。
  安装完成后,在浏览器打开:

1
http://群晖的ip:9091  

即可打开控制台,此时的 UI 还是十分简陋的默认 UI,下面我们对其进行 UI 替换与汉化。

UI 优化

  这里用到的是一个开源项目(感谢开源作者们的贡献): transmission-web-control
  ssh 连接并群晖获取 root 权限, 执行:

1
curl -s https://raw.githubusercontent.com/ronggang/transmission-web-control/master/release/install-tr-control-cn.sh | bash -s auto

出现报错则是因为墙又抽风了,可以手动下载 install-tr-control-cn.sh 上传后执行即可。
浏览器中 F5 强制刷新后,效果如下:
群晖-transmission汉化.png

结语

  到这里,套件的修改折腾基本打止了,比较遗憾的是群晖另外一个监控平台套件 Surveillance 到现在为止还是没有新版本较为完善的破解方案(白群晖也需要购买授权,一个摄像头的授权大几百,对于普通人来说还是很贵的)。
  下篇 Alliot 将介绍群晖上的 Docker,通过 Docker 我们才能够更好的发挥群晖的作用。