QNAP之如何使用第三方百度网盘挂到nas上下载

型号:TS-231P
配置:ARM Cortex-A15 CPU @ 1.70GHz | 1G内存
目的:为nas配置百度云盘,并下载文件
要求:对基本Linux操作有所了解


简介

本人不想浪费电,开个电脑去下百度网盘
于是想挂在nas下,10kb/s也无所谓
之前使用过python写的 houtianze / bypy,可惜最近没速度了
(真的就是10kb/s,而且下完了整部futurama+movie...)
一番探索后又在GitHub上找到一些第三方Linux的百度网盘
本文推荐①款个人觉得还不错的项目

BaiduPCS-Go

golang编写的,个人用下来觉得

fmt.Println("棒棒哒!")

如果你不喜欢Linux操作、不熟悉,也可以使用web版baidupcs-web
个人觉得web版有点小问题,用的不是很顺手,而且原作者并没有合并web分支的意愿

两者的前期准备工作都是一样的


流程概述

  1. 下载BaiduPCS-Go
  2. 创建Ubuntu的docker容器
  3. 启动,登陆,下载

1.下载BaiduPCS-Go

本人的QNAP TS-231P的内核是arm32-v7(如果再给我一次机会我一定选amd-64的...)
releases页面选择符合你机型的版本并下载,丢到nas上(后文会说明具体丢哪里)

2. 创建Ubuntu的docker容器

个人推荐安装在Docker内,方便管理且安全
QNAP某版本后内置了Container Station,也即Docker


这里有②个方案
① 如果你对Linux操作不熟悉可以选择使用安装Container Station
② 如果有Linux基础,那个人推荐通过SSH创建,因为QNAP自带的shell真的很烂。。。


方法1,通过SSH创建Docker

如果你的QNAP已经开通了SSH,那么个人比较倾向使用docker-compose安装
下面是一份简单的配置,有需要的地方已添加注释

#文件名(不推荐自定义):docker-compose.yml
version: '3.1'
services:
  docker-ubuntu:
#如果你希望每次QNAP开机都开启这个容器,则请关闭下行注释
#    restart: always
    #请根据自己的内核选择docker镜像,本人的是arm32位的
    #docker-hub地址:https://hub.docker.com
    image: arm32v7/ubuntu
    #容器名可自定义
    container_name: arm32v7/ubuntu
    #如果你使用web版请务必打开5299端口
    ports:
      - 5299:5299
    # tty:容器启动后保持开启
    tty: true
    volumes:
      #volumes比较重要,参数意义:- 你本机的路径:docker内的路径
      #假如,希望BaiduPCS-Go下载路径是admin账号下的/docker/ubuntu,则可以按照下面的语句进行设置
      #冒号左边:本机地址,QNAP的admin账号下的文件默认路径是/share/homes/admin/
      #          后面的/docker/ubuntu 是个人习惯,开启容器前请确保该路径存在!
      #冒号右边:docker内的路径,此为BaiduPCS-Go定死,一般情况不建议修改
      - /share/homes/admin/docker/ubuntu:/root/Downloads


最后补充,如果你不熟悉docker或者docker-compose,那么本人建议Bing一下,w3cschool等都有大概的说明

创建容器:(-d 表示后台运行)

docker-compose up -d

若要停止:
(不建议使用docker-compose down,这样你的容器会被直接被移除,ubuntu环境丢失)

docker-compose stop

再次打开:

docker-compose start

方法2,通过Container Station创建docker

选择上图2个Ubuntu版本都可以,在此推荐xenial版本
下载完后创建镜像,选择高级设置

QQ截图20200103110209.png

如果你可能使用此网盘的web页面,那么请配置网络中的5299端口转发
QQ截图20200103110934.png

配置共享文件夹,左为nas侧地址,右为Docker内的挂在地址
如果不熟悉ContainerStation请务必将nas侧地址设为/Download/docker/ubuntu
(需要预先于nas中创建该文件夹,图中我懒,略过)
右侧的Docker地址为/root/Downloads/,注意大小写,不建议改动

QQ截图20200103111328.png

最后点击创建


3. 启动,登陆,下载

容器创建完后,

  • 如果是通过docker-compose创建的
    则请务必将刚才下的BaiduPCS-Go-vX.X.X-linux-xxxxx.zip中的BaiduPCS-Go
    丢到/share/homes/admin/docker/ubuntu/路径下
  • 如果是通过QNAP的web页面创建容器的话,则是/Download/docker/ubuntu/

(熟练者请自行修改路径)

然后通过ssh命令进入容器

docker exec -it arm32v7/ubuntu bash

(其中arm32v7/ubuntu为你容器的名字,如果你不是按照上面的yml配置创建的请自行修改)

如果你是QNAP web页面
可以点进相应容器
终端机→执行命令中输入/bin/sh来进入容器

QQ截图20200103112358.png

尝试打开并更新BaiduPCS-Go

/root/Downloads/BaiduPCS-Go update

正常情况已经可以打开
如果打开失败那么你刚才的配置就是有问题,自行排查或者下面留言
最后,按照【BaiduPCS-Go#命令列表及说明】的提示,该登陆登陆,该下载下载就行了
有时间了补完这部分【待完善】


另外提醒一句,下载过程是需要保持终端开启的,你可以用&或者nohup后台运行
但个人建议安装下screen

apt update
apt install screen

(如果你通过QNAP web创建容器的可能screen的时候会出现各种奇葩问题,所以个人还是推荐ssh)
如果不知道screen怎么用也请自行Bing...
小问题是会出现乱码,修改screen配置为utf-8依然存在


至此环境搭建完成
本人测试后

  • 批量下载文件会出现个别文件丢失的现象,解决方案:自行校验
  • 如果一定时间内下多了的话,会发生code:31626 user is not authorized的问题
    这个真的没办法,换账号,等待百度自行解除

有问题不可避免,毕竟是第三方,也免费,好处就是能批量任务24小时挂在nas上
最后,如果喜欢请支持一下该项目的作者BaiduPCS-Go
有其他问题可以在留言,本人看到尽量回复

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容