Rat's

PyOne一键安装脚本 for CentOS 7/Debian 8+/Ubuntu 16+
说明:PyOne最近凭着离线下载(完成并自动上传至Onedrive)和绑定多网盘的功能被越来越多的人使用,如果你还...
扫描右侧二维码阅读全文
30
2018/11

PyOne一键安装脚本 for CentOS 7/Debian 8+/Ubuntu 16+

说明:PyOne最近凭着离线下载(完成并自动上传至Onedrive)和绑定多网盘的功能被越来越多的人使用,如果你还不知道PyOne是何物的可以查看该教程→点击查看。作者更新也勤奋,所以得支持一下,之前博主发过基于宝塔的手动安装教程和Docker安装教程,查看:手动安装Docker安装。不过由于宝塔的Mongodb很容易出错,有些小白也不会解决,而Docker也不支持OpenVZ,所以博主写了个一键脚本,这里分享下。

脚本说明

#脚本会一键安装PyOne所需要的Mongodb、Redis、Aria2等环境,域名使用Caddy反代,自动配置SSL证书。

#本脚本使用的Aria2为某大佬编译的多线程版本,其特点可以将下载速度最大化优化,博主已配置完毕,如服务器性能不足,可将线程自行调整。
方法:修改配置文件/root/.aria2/aria2.conf,线程参数split=64,请自行调整。

#Aria2已添加了BT-Trackers服务器,并定时自动更新服务器地址。

#脚本使用systemctl替换了程序所使用的supervisord进程守护,所以程序的重启等命令会和官方文档上的不一样,详细的使用命令可以看文章后面。

#选择域名访问的,需要提前让解析生效,不然脚本会自动断开,因为后面需要签发SSL证书,ip必须为服务器ip。

更新

【2020.05.21】
修复安装问题,重新支持CentOS 7系统,安装有问题可以留言。
【2020.02.14】
由于程序模块改动,手动改了下,不过只限于Debian 9、10,Ubuntu 18.04、18.10、19.04系统安装使用
【2019.9.28】
新增Debian 10,升级MongoDB版本到4.0,有问题可以留言。
【2019.6.27】
修复部分CentOS 7安装出错的问题,并新增Ubuntu系统,已在Vultr的Ubuntu 16.04、18.04、18.10、19.04上测试通过
【2019.2.23】
鉴于有人需要3.0版本,现已增加安装3.0版本选项,多个选择,并使用的3.0最后一个版本。
【2019.2.16】
修改脚本部分安装步骤,使其支持PyOne4.0
【2019.1.31】
修复部分系统安装启动pyone失败的问题
【2018.11.30】
修复PyOne刷新不出文件夹/文件的问题。

安装

系统要求:CentOS 7Debian 8+Ubuntu 16+,建议Debian 9,且为刚安装好的系统,尽量不要用精简版系统。

使用命令:

wget -N --no-check-certificate https://www.moerats.com/usr/shell/PyOne/PyOne.sh
bash PyOne.sh

根据需求选择是否使用域名访问,然后输入域名和Aria2密匙即可。
请输入图片描述

安装完成后,如果打不开网站的,可以使用命令一起查看下各程序状态。

#使用域名访问的
systemctl status aria2 mongod redis-server pyone caddy
#使用IP访问的
systemctl status aria2 mongod redis-server pyone

如果有显示Active:inactive的,可以留言说下具体程序和系统。反之如果都为running,可以检查下防火墙端口,比如阿里云,谷歌云等,还需要在服务器管理面板上开放34567端口才行。

相关命令

#以下程序均已配置开机自启,所以就不说开机自启命令了。

#Redis使用命令
启动:systemctl start redis-server
重启:systemctl restart redis-server
停止:systemctl stop redis-server
状态:systemctl status redis-server

#Mongodb使用命令
启动:systemctl start mongod
重启:systemctl restart mongod
停止:systemctl stop mongod
状态:systemctl status mongod

#Aria2使用命令
启动:systemctl start aria2
重启:systemctl restart aria2
停止:systemctl stop aria2
状态:systemctl status aria2

#Caddy使用命令(使用域名的才会安装Caddy)
启动:systemctl start caddy
重启:systemctl restart caddy
停止:systemctl stop caddy
状态:systemctl status caddy

#PyOne使用命令
启动:systemctl start pyone
重启:systemctl restart pyone
停止:systemctl stop pyone
状态:systemctl status pyone

相关目录

PyOne程序目录:/root/PyOne
Caddy配置文件目录:/root/.caddy
Aria2配置文件目录:/root/.aria2

相关说明

#关于操作说明
由于更换了原程序进程守护,所以网站右上角的重启网站按钮已失效,请在SSH客户端使用systemctl restart pyone命令重启程序。

#关于离线下载
Aria2配置文件的下载路径为/root/Download,但该程序自带的离线下载不调用配置文件,所以使用本程序离线下载的目录为/root/PyOne/upload。

由于本程序离线下载不调用配置文件,所以Aria2多线程可能会发挥不出来,BT服务器也无效,不过会玩的,可以通过修改根目录的aria2.py文件某些参数达到目的,或者直接研究该教程:https://www.moerats.com/archives/697/,使用Aria2面板来离线下载更好,毕竟后者用的脚本比自带离线下载更稳定。

#刷新缓存问题
如果你在后台执行缓存刷新操作,可能短时间不会生效,建议直接在SSH客户端使用python /root/PyOne/function.py UpdateFile命令刷新

最后更多的使用方法(包括程序更新)可以查看该教程→点击查看,除了PyOne启动命令不一样以外,其它都一样,包括上传等命令。

Vultr新用户注册送100美元/16个机房按小时计费,支持支付宝,【点击查看】。
最后修改:2020 年 05 月 21 日 10 : 36 PM

发表评论

416 条评论

  1. Xiaoj

    阿里云执行 wget -N --no-check-certificate https://www.moerats.com/usr/shell/PyOne/PyOne.sh
    报错

  2. 向程序员致敬

    博主真牛。
    小白一次安装成功。下了两个片子,也自动上传onedrive,就是从onedrive拉到本地有点慢。

    1. Rat's
      @向程序员致敬

      慢是正常的。

      1. 向程序员致敬
        @Rat's

        想用博主的ARIA作为管理页面,怎么配置呢。

        1. 向程序员致敬
          @向程序员致敬

          pyone的下载时常好几天动也不动,不知道为什么。是博主说的上传功能有缺陷吗。博主可不可以说说怎么在PYONE基础上手动安装ARIA

          1. Rat's
            @向程序员致敬

            脚本已经给你安装了,随便找个面板用就行了。

            1. 向程序员致敬
              @Rat's

              博主的blog里的面板可以使用吗。
              如何配置才好。

  3. gao

    用pyone上传大文件时有时候显示创建实例失败,有时候上传中间会失败,日志里显示Service unavailable
    请教一下博主是因为什么啊,谢谢

    1. Rat's
      @gao

      好像这个问题之前见过,重新绑定下网盘看看

      1. gao
        @Rat's

        还是不行,不知道什么原因

  4. CC4

    请问是不是只要aria2下载到/root/PyOne/upload就会自动上传?

    1. Rat's
      @CC4

      不是,得配置下aria2上传参数,或者用后台的离线下载功能

  5. LY

    博主和PyOne的大佬合作了呀,66666。我用家中服务器安装然后用阿里云学生及反代域名,扫描快多了。

    1. Rat's
      @LY

      没,去年就认识,就瞎水了个脚本

  6. chwl

    caddy 一直不能启动 没办法了

    1. Rat's
      @chwl

      感觉是被签发证书限制了。

  7. aes

    大佬,有没有4.0.3左右版本的啊

    1. Rat's
      @aes

      很久没用了,4.0.3是什么时候的版本?

  8. sdshdv

    这个脚本不支持debian10了,用的谷歌云自带的debian10,安装的时候会显示Mongodb安装失败,换成centos7一下就装好了

    1. Rat's
      @sdshdv

      随便改了下,应该支持Debian 10了,在vultr上跑了一次

  9. wsf

    博主帮忙看看这是什么情况
    ● mongod.service - MongoDB Database Server
    Loaded: loaded (/usr/lib/systemd/system/mongod.service; enabled; vendor preset: disabled)
    Active: failed (Result: exit-code) since Thu 2019-09-19 02:17:39 CST; 51s ago

    Docs: https://docs.mongodb.org/manual

    Sep 19 02:17:39 iZt4nfck6rch7vykauvmm8Z systemd[1]: Starting MongoDB Database Server...
    Sep 19 02:17:39 iZt4nfck6rch7vykauvmm8Z mongod[20039]: about to fork child process, waiting until se...ns.
    Sep 19 02:17:39 iZt4nfck6rch7vykauvmm8Z mongod[20039]: forked process: 20042
    Sep 19 02:17:39 iZt4nfck6rch7vykauvmm8Z systemd[1]: mongod.service: control process exited, code=exi...=48
    Sep 19 02:17:39 iZt4nfck6rch7vykauvmm8Z systemd[1]: Failed to start MongoDB Database Server.
    Sep 19 02:17:39 iZt4nfck6rch7vykauvmm8Z systemd[1]: Unit mongod.service entered failed state.
    Sep 19 02:17:39 iZt4nfck6rch7vykauvmm8Z systemd[1]: mongod.service failed.

    ● redis-server.service - Redis
    Loaded: loaded (/etc/systemd/system/redis-server.service; enabled; vendor preset: disabled)
    Active: failed (Result: start-limit) since Thu 2019-09-19 02:17:40 CST; 50s ago
    Process: 20074 ExecStart=/usr/local/bin/redis-server (code=exited, status=1/FAILURE)
    Main PID: 20074 (code=exited, status=1/FAILURE)

    Sep 19 02:17:40 iZt4nfck6rch7vykauvmm8Z systemd[1]: redis-server.service: main process exited, code=...URE
    Sep 19 02:17:40 iZt4nfck6rch7vykauvmm8Z systemd[1]: Unit redis-server.service entered failed state.
    Sep 19 02:17:40 iZt4nfck6rch7vykauvmm8Z systemd[1]: redis-server.service failed.
    Sep 19 02:17:40 iZt4nfck6rch7vykauvmm8Z systemd[1]: redis-server.service holdoff time over, scheduli...rt.
    Sep 19 02:17:40 iZt4nfck6rch7vykauvmm8Z systemd[1]: start request repeated too quickly for redis-ser...ice
    Sep 19 02:17:40 iZt4nfck6rch7vykauvmm8Z systemd[1]: Failed to start Redis.
    Sep 19 02:17:40 iZt4nfck6rch7vykauvmm8Z systemd[1]: Unit redis-server.service entered failed state.
    Sep 19 02:17:40 iZt4nfck6rch7vykauvmm8Z systemd[1]: redis-server.service failed.

    ● pyone.service - pyone
    Loaded: error (Reason: Invalid argument)
    Active: inactive (dead)

    Sep 19 02:02:36 iZt4nfck6rch7vykauvmm8Z systemd[1]: [/etc/systemd/system/pyone.service:10] Executabl...app
    Sep 19 02:02:36 iZt4nfck6rch7vykauvmm8Z systemd[1]: pyone.service lacks both ExecStart= and ExecStop...ng.
    Sep 19 02:03:40 iZt4nfck6rch7vykauvmm8Z systemd[1]: [/etc/systemd/system/pyone.service:10] Executabl...app
    Sep 19 02:03:40 iZt4nfck6rch7vykauvmm8Z systemd[1]: pyone.service lacks both ExecStart= and ExecStop...ng.
    Sep 19 02:04:00 iZt4nfck6rch7vykauvmm8Z systemd[1]: [/etc/systemd/system/pyone.service:10] Executabl...app
    Sep 19 02:04:00 iZt4nfck6rch7vykauvmm8Z systemd[1]: pyone.service lacks both ExecStart= and ExecStop...ng.
    Sep 19 02:15:08 iZt4nfck6rch7vykauvmm8Z systemd[1]: [/etc/systemd/system/pyone.service:10] Executabl...app
    Sep 19 02:15:08 iZt4nfck6rch7vykauvmm8Z systemd[1]: pyone.service lacks both ExecStart= and ExecStop...ng.
    Sep 19 02:17:39 iZt4nfck6rch7vykauvmm8Z systemd[1]: [/etc/systemd/system/pyone.service:10] Executabl...app
    Sep 19 02:17:39 iZt4nfck6rch7vykauvmm8Z systemd[1]: pyone.service lacks both ExecStart= and ExecStop...ng.
    Hint: Some lines were ellipsized, use -l to show in full.

    1. Rat's
      @wsf

      怎么全部挂了,看是不是硬盘满了,或者其他原因

      1. 苏苏
        @Rat's

        Loaded: error (Reason: Invalid argument)
        Active: inactive (dead)
        我的是这个情况,其他 Active

        1. Rat's
          @苏苏

          你是哪个显示这个

  10. 奕奕

    卡在下载Caddy这一步了,下不动。。。。几十K

    1. Rat's
      @奕奕

      国内服务器么?只能等了