VPS/云主机等
优惠信息分享

宝塔面板安装OneList(go版本)-可以绑定多个OneDrive网盘的极简目录列表

OneList有python版本,但是在整体性能上有点瑕疵,所以大佬萌咖大佬就开发了go版本OneList,基于Golang的性能更好,效率更高,多盘并发缓存等众多好处……

这篇文章,我们就来说说如何利用宝塔面板来安装部署OneList,go版本OneList同时支持国际版、个人免费版(家庭版)、中国版(世纪互联)及多网盘绑定,还是值得试试的。

具体的安装和部署


1、前言

gtihub:https://github.com/MoeClub/OneList/tree/master/Rewrite

demo:http://aa.fdao.xyz

2、go环境

宝塔面板搭建go环境,可以看之前的文章,如下:

[mark_e]

宝塔面板Linux环境-安装Golang:Go语言环境安装以及程序如何运行

[/mark_e]

3、准备

  • 宝塔面板最新版本
  • go语言环境安装好,不会看上面。
  • 准备好一个解析好的域名
  • 新建网站
  • Nginx安装好

4、授权认证

国际版、个人版(家庭版)】,复制链接打开!

https://login.microsoftonline.com/common/oauth2/v2.0/authorize?client_id=78d4dc35-7e46-42c6-9023-2d39314433a5&response_type=code&redirect_uri=http://localhost/onedrive-login&response_mode=query&scope=offline_access%20User.Read%20Files.ReadWrite.All

中国版(世纪互联)】。

https://login.chinacloudapi.cn/common/oauth2/v2.0/authorize?client_id=dfe36e60-6133-48cf-869f-4d15b8354769&response_type=code&redirect_uri=http://localhost/onedrive-login&response_mode=query&scope=offline_access%20User.Read%20Files.ReadWrite.All

注意:授权后会获取一个localhost开头打不开的链接,这里复制好整个链接地址,包括localhost保存到一个记事本中备用。具体看图:

宝塔面板安装OneList(go版本)-可以绑定多个OneDrive网盘的极简目录列表插图

5、部署项目

安装OneList,这里是把项目方在/opt目录下面,你也可以放置在别的目录下!

#新建并进入OneList目录mkdir /opt/OneList && cd $_#64位系统下载wget https://raw.githubusercontent.com/MoeClub/OneList/master/Rewrite/amd64/linux/OneList#32位系统下载wget https://raw.githubusercontent.com/MoeClub/OneList//master/Rewrite/i386/linux/OneList#arm架构下载wget https://raw.githubusercontent.com/MoeClub/OneList/master/Rewrite/arm/linux/OneList#给予权限chmod +x OneList

5.1 生成配置文件

下载好项目之后,我们开始用命令生成配置文件,命令如下:

#国际版,将url换成你上面复制的授权地址,包括http://loaclhost。./OneList -a "url" -s "/onedrive01"#个人版(家庭版),将url换成你上面复制的授权地址,包括http://loaclhost。./OneList -ms -a "url" -s "/onedrive02"#中国版(世纪互联),将url换成你上面复制的授权地址,包括http://loaclhost。./OneList -cn -a "url" -s "/onedrive03"

提示Success! Add config. '/path/to/config.json'信息,则添加成功。具体如图:

宝塔面板安装OneList(go版本)-可以绑定多个OneDrive网盘的极简目录列表插图1

5.2 注意:

  1. 授权url地址只能用一次,超过需要重新授权。
  2. 命令中的/onedrive01参数为指定网盘地址后缀,比如http://domain.com/onedrive01。
  3. 授权多个网盘的话,重复授权多次即可,参数均会添加到一个配置文件,且后缀不能重复。
  4. 地址后缀填错了的,可以稍后在配置文件中修改。

5.3 配置文件实例

具体的配置实例如下:

[  {    // 如果是家庭版或者个人免费版, 此项应为 true.    "MSAccount": false,    // 如果是中国版(世纪互联), 此项应为 true.    "MainLand": false,    // 授权令牌    "RefreshToken": "1234564567890ABCDEF",    // 单配置文件中,此项要唯一.将此OneDrive中设置为`RootPath`目录映射在`https://yiqini.com:5288/onedrive` 下.    // (只推荐一个盘位的时候使用根目录"/".)    "SubPath": "/onedrive",    // 读取OneDrive的某个目录作为根目录. (支持根目录"/")    "RootPath": "/Test",    // 隐藏OneDrive目录中的文件夹和文件, 条目间使用 "|" 分割. (跳过缓存设置的条目.)    "HidePath": "/Test/Obj01|/Test/Obj02",    // 使用用户名和密码加密OneDrive目录. 目录和用户名密码间使用 "?" 分割, 用户名密码使用 ":" 分割, 条目间使用 "|" 分割. 无效条目将跳过.     "AuthPath": "/Test/Auth01?user01:pwd01|/Test/Auth02?user02:pwd02",    // 缓存刷新间隔.(所有项目中的刷新时间取最小值为有效刷新间隔)    "RefreshInterval": 900  }]

这里注意,挂载多个盘符的时候,SubPath参数请不要为/,单个网盘建议为/

5.4 运行OneList

运行以下命令,来启动项目运行。

#下载默认的index.html主题,与config.json同目录,即本文默认的/opt/OneListwget https://raw.githubusercontent.com/MoeClub/OneList/master/Rewrite/index.html -P /opt/OneList#监听8000地址,自行修改/opt/OneList/OneList -bind 0.0.0.0 -port 8000

浏览器打开<ip:端口>访问即可,如果你挂载网盘的时候SubPath/,那么直接通过根目录查看,如果为/onedrive1,那么通过ip:端口/onedrive1查看,如果该路径不存在,则会提示No Found.。如果目录里面没有文件也会显示No Found.。打开效果如图:

宝塔面板安装OneList(go版本)-可以绑定多个OneDrive网盘的极简目录列表插图2

6、后台运行及开机自启

以上的全部完成之后,你就可以打开onelist了,但是不能后台运行,所以我们这设置下如何后台运行。

6.1 方法1

# /path/to/OneList 为OneList的完整路径# 后台运行nohup /path/to/OneList -bind 0.0.0.0 -port 80 >/dev/null 2>&1 &# 开机自启并后台运行编辑 /etc/crontab 文件, 并添加下面一行并多按几个回车. (有些系统不留空行会出现意外)@reboot root nohup /path/to/OneList -bind 0.0.0.0 -port 80 >/dev/null 2>&1 &

6.2 方法2

新建一个简单的systemd配置文件,适用CentOS 7Debian 8+Ubuntu 16+。使用命令:(将以下代码一起复制到SSH运行,注意默认端口为8000,可修改!)[reply]

cat > /etc/systemd/system/onelist.service <<EOF[Unit]Description=onelistAfter=network.target[Service]Type=simpleExecStart=/opt/OneList/OneList -bind 0.0.0.0 -port 8000Restart=on-failure[Install]WantedBy=multi-user.targetEOF

启动并设置开机自启命令如下:

systemctl start onelistsystemctl enable onelist

[/reply]

6.3 卸载

如果未设置开机自启,直接删除onelist就可以了。命令如下

rm -rf /opt/OneList

设置过开机自启,使用如下命令卸载

systemctl stop onelistsystemctl disable onelistrm -rf /opt/OneList /etc/systemd/system/onelist.service

7、设置域名访问

宝塔面板新建网站,网站设置,“芳香袋里”,具体看图:

宝塔面板安装OneList(go版本)-可以绑定多个OneDrive网盘的极简目录列表插图3

这样设置后,就可以用域名打开了,如果要设置SSL,请先关闭daili,申请好证书在开启,即可。

8、最后

go版本的目录列表程序打开速度确实很快,但安装起来还是很麻烦的,OneList的使用命令如下:

Usage of OneList:  -a string        // 初始化配置文件,添加新配置        Setup and Init auth.json.  -bind string        // 绑定IP地址(公网: 0.0.0.0)        Bind Address (default "127.0.0.1")  -port string        // 绑定端口(HTTP:80)        Port (default "5288")  -s string        // 设置 SubPath 项, 需要与 -a 一起使用.        Set SubPath. [unique per account] (default "/")  -c string        // 配置文件        Config file. (default "config.json")  -t string        // Index.html 目录样式文件        Index file. (default "index.html")  -cn        // 开关        // 授权中国版(世纪互联), 需要此参数.        OneDrive by 21Vianet.  -ms        // 开关        // 授权个人版(家庭版), 需要此参数.        OneDrive by Microsoft.

参考资料:

  • https://github.com/MoeClub/OneList/tree/master/Rewrite
  • https://www.moerats.com/archives/1016/
赞(0)
未经允许不得转载:遗弃你|YIQINI.COM » 宝塔面板安装OneList(go版本)-可以绑定多个OneDrive网盘的极简目录列表

评论 抢沙发

评论前必须登录!

 

登录

找回密码

注册