前言
clash
需要用到订阅转换,直接用网上的服务肯定不太安全,并且我们还需要自动在配置文件中插入本地自建的 UnblockNeteaseMusic
代理服务,所以我们采取自建格式转换服务。
下载与安装
我默认你已经按照 前文(二) 安装好了必要的软件了。以下为root用户运行的命令。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
## 检查最新稳定版的版本号,如果获取不到请检查网络
remote_ver=$(curl -sS https://api.github.com/repos/tindy2013/subconverter/releases/latest | jq -r .tag_name | sed 's|v||' | grep -v "null"); echo $remote_ver
## 下载最新稳定版(前一句有输出这一句才能正常执行)
mkdir /tmp/subconverter
cd /tmp/subconverter
wget -q --progress=bar:dot --show-progress -O "subconverter_linux64.tar.gz" "https://github.com/tindy2013/subconverter/releases/download/v${remote_ver}/subconverter_linux64.tar.gz"
## 解压
tar --no-same-owner -xf "subconverter_linux64.tar.gz" --strip-components 1 --directory=.
## 安装
mkdir -p /var/lib/subconverter
install -ps subconverter /usr/local/bin/subconverter
rm -rf subconverter subconverter_linux64.tar.gz
cp -afr * /var/lib/subconverter/
|
创建服务
subconverter.service
创建文件 /etc/systemd/system/subconverter.service
,内容如下。
1
2
3
4
5
6
7
8
9
10
11
12
13
|
[Unit]
Description = Utility to convert between various subscription format.
After = network.target
[Service]
Environment = PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
Type = simple
Restart = always
WorkingDirectory = /var/lib/subconverter
ExecStart = subconverter
[Install]
WantedBy = multi-user.target
|
如果不想以root用户运行 subconverter
,可以自行创建用户 subconverter
和用户组 subconverter
,然后在 /etc/systemd/system/subconverter.service
的 [Service]
单元下增加下面两行,同时修改 /var/lib/subconverter
及其子文件为该普通用户所有。(后续的脚本都是以root用户为运行用户进行的,如果要把 subconverter
服务调整为普通用户运行,请自行修改脚本)。
1
2
|
User = subconverter
Group = subconverter
|
subconverter的配置文件
如果想要自定义,可以将 /var/lib/subconverter/pref.example.toml
复制一份为 /var/lib/subconverter/pref.toml
,然后编辑复制后的文件即可,具体可参考 官方README。
启用服务
完全配置好以后,我们可以设置 /etc/systemd/system/subconverter.service
为开启自动启动,并立即启动起来。
1
|
systemctl enable --now subconverter.service
|
后续如想查看日志,我们直接使用Debian自带的工具来查看:
1
|
journalctl -efu subconverter.service
|
如果想要重启:
1
|
systemctl restart subconverter.service
|
系列