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. 莎莎

    Feb 07 04:41:41 ip-172-26-1-183 systemd[1]: pyone.service: Unit entered failed state.
    Feb 07 04:41:41 ip-172-26-1-183 systemd[1]: pyone.service: Failed with result 'exit-code'.
    lines 1-14/14 (END)
    ● pyone.service - pyone
    Loaded: loaded (/etc/systemd/system/pyone.service; enabled; vendor preset: enabled)
    Active: failed (Result: exit-code) since Thu 2019-02-07 04:41:41 UTC; 1min 22s ago
    Process: 919 ExecStart=/bin/bash -c cd /root/PyOne && /usr/local/bin/gunicorn -w4 -b 0.0.0.0:34567 run:app (code=exi
    Main PID: 919 (code=exited, status=1/FAILURE)

    Feb 07 04:41:41 ip-172-26-1-183 systemd[1]: pyone.service: Unit entered failed state.
    Feb 07 04:41:41 ip-172-26-1-183 systemd[1]: pyone.service: Failed with result 'exit-code'.
    Feb 07 04:41:41 ip-172-26-1-183 systemd[1]: pyone.service: Service hold-off time over, scheduling restart.
    Feb 07 04:41:41 ip-172-26-1-183 systemd[1]: Stopped pyone.
    Feb 07 04:41:41 ip-172-26-1-183 systemd[1]: pyone.service: Start request repeated too quickly.
    Feb 07 04:41:41 ip-172-26-1-183 systemd[1]: Failed to start pyone.

    1. Rat's
      @莎莎

      你手动运行命令cd /root/PyOne && gunicorn -w4 -b 0.0.0.0:34567 run:app,然后看什么提升

      1. jia
        @Rat's

        :37:57 +0000] [7416] [ERROR] Exception in worker process:
        Traceback (most recent call last):
        File "/usr/local/lib/python2.7/dist-packages/gunicorn/arbiter.py", line 507, in spawn_worker

        worker.init_process()

        File "/usr/local/lib/python2.7/dist-packages/gunicorn/workers/base.py", line 118, in init_process

        self.wsgi = self.app.wsgi()

        File "/usr/local/lib/python2.7/dist-packages/gunicorn/app/base.py", line 67, in wsgi

        self.callable = self.load()

        File "/usr/local/lib/python2.7/dist-packages/gunicorn/app/wsgiapp.py", line 65, in load

        return self.load_wsgiapp()

        File "/usr/local/lib/python2.7/dist-packages/gunicorn/app/wsgiapp.py", line 52, in load_wsgiapp

        return util.import_app(self.app_uri)

        File "/usr/local/lib/python2.7/dist-packages/gunicorn/util.py", line 355, in import_app

        __import__(module)

        File "/root/PyOne/run.py", line 7, in <modul

  2. 莎莎

    安装成功改了后台管理密码以后就再也进不去后台啦

    1. 莎莎
      @莎莎

      好了的,多次重启服务器后密码重置成原来的了

  3. Kevin

    Mongodb等依赖安装失败,请重新检查!
    脚本返回这个。。

    1. Rat's
      @Kevin

      最快的解决办法就是换系统吧,或者加我下面联系方式我帮你看看。

      1. Kevin
        @Rat's

        emmmm没看到联系方式 想向大佬你咨询一些主机的事情
        ovz真的心太累了

        1. Rat's
          @Kevin

          直接入手我置顶的香港,史上最便宜的大带宽香港KVM

          1. Kevin
            @Rat's

            这香港好使吗 养个鸡 挂个博客 再挂个oneindex

            1. Rat's
              @Kevin

              还行,我博客现在就挂在上面

              1. Kevin
                @Rat's

                轻量香港 安装pyone 报错 跟楼下的差不多 centos7.5好像
                先用了净化的脚本

                1. Rat's
                  @Kevin

                  问题好像知道了,刚把脚本改了下,你再试试?

  4. 萌小蛋

    用的阿里云的CentOS 7.4 轻量服务器
    ● pyone.service - pyone
    Loaded: loaded (/etc/systemd/system/pyone.service; enabled; vendor preset: disabled)
    Active: failed (Result: start-limit) since Fri 2019-01-18 09:54:10 CST; 48s ago
    Main PID: 6638 (code=exited, status=1/FAILURE)

    Jan 18 09:54:10 iZj6c1uuqdwe3m23mugyttZ systemd[1]: pyone.service: main process exited, code=exited,...URE
    Jan 18 09:54:10 iZj6c1uuqdwe3m23mugyttZ systemd[1]: Unit pyone.service entered failed state.
    Jan 18 09:54:10 iZj6c1uuqdwe3m23mugyttZ systemd[1]: pyone.service failed.
    Jan 18 09:54:10 iZj6c1uuqdwe3m23mugyttZ systemd[1]: pyone.service holdoff time over, scheduling restart.
    Jan 18 09:54:10 iZj6c1uuqdwe3m23mugyttZ systemd[1]: start request repeated too quickly for pyone.service
    Jan 18 09:54:10 iZj6c1uuqdwe3m23mugyttZ systemd[1]: Failed to start pyone.
    Jan 18 09:54:10 iZj6c1uuqdwe3m23mugyttZ systemd[1]: Unit pyone.service entered failed state.
    Jan 18 09:54:10 iZj6c1uuqdwe3m23mugyttZ systemd[1]: pyone.service failed.
    Jan 18 09:54:10 iZj6c1uuqdwe3m23mugyttZ systemd[1]: [/etc/systemd/system/pyone.service:9] Executable...One
    Hint: Some lines were ellipsized, use -l to show in full.

    1. Rat's
      @萌小蛋

      之前在阿里云轻量CentOS 7.3上测试没问题的,你重启下pyone试试,systemctl restart pyone

      1. 萌小蛋
        @Rat's

        还是这个问题,防火墙端口也开了,显示网页无法正常运行,就是开启不了pyone

        1. Rat's
          @萌小蛋

          具体情况不是很清楚,或者你安装个Debian 9试试,脚本地址:https://www.moerats.com/archives/163/

  5. 芒果粑粑

    请教下,oneindex或者pyone有没有批量下载的方法?有的网盘文件下面文件夹很多,文件也很多,一个个下载很麻烦,我也试过wget mirror,但是速度好像不给力。而且命令行不能关闭,请教下还有其他办法么?
    谢谢。

    1. Rat's
      @芒果粑粑

      试试rclone挂载?然后直接mv移动

  6. Freaky_Arse

    pyone.service - pyone
    Loaded: loaded (/etc/systemd/system/pyone.service; enabled)
    Active: failed (Result: start-limit) since Mon 2019-01-07 20:19:44 CST; 44sago
    Process: 20744 ExecStart=/bin/bash -c cd /root/PyOne && -w4 -b 0.0.0.0:34567 run:app (code=exited, status=127)
    Main PID: 20744 (code=exited, status=127)

    Jan 07 20:19:44 iZj6cgjhuv3ipquj1zu38xZ systemd[1]: pyone.service: main proc...
    Jan 07 20:19:44 iZj6cgjhuv3ipquj1zu38xZ systemd[1]: Unit pyone.service enter...
    Jan 07 20:19:44 iZj6cgjhuv3ipquj1zu38xZ systemd[1]: pyone.service holdoff ti...
    Jan 07 20:19:44 iZj6cgjhuv3ipquj1zu38xZ systemd[1]: Stopping pyone...
    Jan 07 20:19:44 iZj6cgjhuv3ipquj1zu38xZ systemd[1]: Starting pyone...
    Jan 07 20:19:44 iZj6cgjhuv3ipquj1zu38xZ systemd[1]: pyone.service start requ...
    Jan 07 20:19:44 iZj6cgjhuv3ipquj1zu38xZ systemd[1]: Failed to start pyone.
    Jan 07 20:19:44 iZj6cgjhuv3ipquj1zu38xZ systemd[1]: Unit pyone.service enter...
    Hint: Some lines were ellipsized, use -l to show in full.

    1. Freaky_Arse
      @Freaky_Arse

      登陆网站显示 "502 Bad Gayteway"
      看不懂

      1. Rat's
        @Freaky_Arse

        什么系统?看了你的日志,大概解决方法你试试,使用which gunicorn命令获取执行路径,比如/usr/bin/gunicorn。

        然后编辑/etc/systemd/system/pyone.service文件,修改ExecStart后面的参数,在最后面某个地方加个/usr/bin/gunicorn(具体路径看上面获取的),比如:
        && /usr/bin/gunicorn -w4 -b 0.0.0.0:34567 run:app
        然后重启服务器吧。

        1. Freaky_Arse
          @Rat's

          Debian 8.9 安装各种报错,等了半小时才装好,还打不开。
          换了CentOS 7.3,一键秒装,爽飞了~

          1. Freaky_Arse
            @Freaky_Arse

            PyOne的README.md图片显示默认适应宽度,还不会调,引用小图标被放大之后很丑。OneIndex没这毛病。

            1. Rat's
              @Freaky_Arse

              这个我还没注意到,可以给作者说下,要他弄下。

              1. Freaky_Arse
                @Rat's

                作者建的群里面全是打广告卖5T的,问问题也没人回,心累…… 还是用回OneIndex靠谱。要是OneIndex能绑定多个网盘就好了~

                1. Rat's
                  @Freaky_Arse

                  5T还不够用么。

                  1. Freak_Arse
                    @Rat's

                    容量是挺够用的,就是低价号容易翻车,要是有两个不同管理员账号下的5T空间互相备份那不就完美了。就算买上三个也不超过¥10,而且这样三个不相关的号一般也不会同时崩掉。不知道大佬对这个想法有没有兴趣,说不定哪天写出个OneRaid来了呢

                    1. Rat's
                      @Freak_Arse

                      我的5T很难翻车,所以

  7. sdshdv

    一键脚本无法通过git pull来更新,必须要删掉一键脚本然后重装手动脚本才能更新,这样很麻烦,不知道是否可以改进

    1. Rat's
      @sdshdv

      更新功能最开始是有的,然后作者更新命令经常会有变化,怕出问题就删掉了,所以建议参考我最下面留的另一篇文章手动更新。

  8. chancat

    请问博主,不想安装Aria2 这个咋办呢?

    1. Rat's
      @chancat

      手动安装,教程:https://www.moerats.com/archives/734/

  9. Xen

    请问这个和oneindex哪体验好?主要用来离线下载

    1. Rat's
      @Xen

      如果你不需要绑定多网盘的话,建议用oneindex和我博客上传脚本,https://www.moerats.com/archives/697/。

      1. Xen
        @Rat's

        已经配置好了pyone请问Aria 2没速度会是什么原因?用迅雷直接下有速度,但是挂在Aria 2上几个小时了还是0%vps是vultr

        1. Rat's
          @Xen

          我忘了说明了,你可以先不用程序自带的离线,默认不调用配置文件,可以用我上面给你的地址,单独使用Aria2面板下载,看速度会不会好些。

          1. Xen
            @Rat's

            安装了oneindex但是Aria 2和oneindex页面访问不了,是因为没有开放端口的原因吗?我查了一下好像只开了22和6800端口,可是vultr上面显示没开防火墙啊

            1. Rat's
              @Xen

              什么系统?可以直接用debian系统,这个默认是开放所有端口的。

  10. Relaxe

    能部署在now.sh上吗?

    1. Rat's
      @Relaxe

      一般是不能的。