谷歌应用

gd-utils + tgbot 实现Google drive便捷转存

黑色 · 7月6日 · 2020年 1596次已读

gd-utils

前期准备

  • 域名托管至clouflare,解析到vps,打开代理,ssl选择灵活
  • @BotFather 申请tgbot, @userinfobot 记录自己的id
  • 申请好团队盘,记录好团队盘id

安装autoclone

  • 升级系统
apt update -y && apt upgrade -y
  • 安装依赖
apt install wget curl screen git sudo python3-distutils -y
  • 安装python
apt install python3 python3-pip -y

如果在仓库内找不到 pip/pip3 通过以下安装方式

curl “https://bootstrap.pypa.io/get-pip.py” -o “get-pip.py”python3 get-pip.py

配置AutoRclone

  • 下载并安装 AutoRclone
git clone https://github.com/xyou365/AutoRclone && cd AutoRclone && sudo pip3 install -r requirements.txt

将刚才下载的 credentials.json 文件上传至 ~/AutoRclone 目录下

  • 创建项目

1.之前没有创建过项目直接运行:

python3 gen_sa_accounts.py --quick-setup 1

以上命令含义:

创建1个项目
开启相关的服务
创建100个 service accounts
将100个 service accounts 的授权文件下载到 accounts 文件夹下面

2.已有项目,需要创建新的

python3 gen_sa_accounts.py --quick-setup 2 --new-only

以上命令含义:

额外创建2个项目(项目N+1到项目N+2)
开启相关的服务
创建200个 service accounts(2个项目,每个项目100个)
将200个 service accounts 的授权文件下载到 accounts 文件夹下面

将添加到google无限盘

1.直接加入到用户里面(xxxx为团队盘id)

python3 add_to_team_drive.py -d xxxxx

2.加入到google群组里面

建立群组,添加用户,将email复制粘贴,

Gclone搬运

  • 安装
bash <(wget -qO- https://git.io/gclone.sh)

记录/root/AutoRclone/accounts/下任意一个json地址,输入以下命令开始gclone配置

gclone config

以下2个选项输入:
service_account_file 填入 /root/AutoRclone/accounts/xxx.json
service_account_file_path 填入 /root/AutoRclone/accounts/
其他照旧

  • copy命令
gclone copy A:{B} A:C --drive-server-side-across-configs -v

A为上面gclone配置输入的name名

B为需要拷贝的Google文件或文件夹id,C为自己团队盘的目录(留空为跟目录)

示例:gclone copy gdrive:{1NxfBE9CzJGgeGefoiwrTBPcwGbjfVcnx} gdrive:films –drive-server-side-across-configs -v

  • 后台模式(直接命令关闭ssh后会断开拷贝,以下方式为后台执行模式,可关闭ssh窗口而不影响copy进度)
screen

输入screen后两次回车再输入copy命令

ctrl+a+d关闭窗口

输入screen -r回到窗口

TG机器人搭建

  • gdutils项目一键部署脚本(包括“查询转存”和“TG机器人”两部分)
bash -c "$(curl -fsSL https://raw.githubusercontent.com/vitaminx/gd-utils/master/gdutilsinstall.sh)"

提示上传sa时候输入以下命令复制sa

cd /root/AutoRclone/accounts/
cp -r ./* /root/gd-utils/sa

control+c退出,执行完命令后再运行tg机器人部分基本

或者ssh工具下载autorclone里的accounts改名sa上传到gd-utils下后继续执行脚本

  • gdutils项目一键部署脚本之“转存查询部分”
bash -c "$(curl -fsSL https://raw.githubusercontent.com/vitaminx/gd-utils/master/gdutilscsinstall.sh)"
  • gdutils项目一键部署脚本之“TG机器人部分”
bash -c "$(curl -fsSL https://raw.githubusercontent.com/vitaminx/gd-utils/master/gdutilsbotinstall.sh)"

挂载emby

安装fuse

apt install fuse -y

输入以下命令,注意A修改为自己设置的rclone的name,下同

mkdir -p /home/gdrive

/usr/bin/gclone mount gdrive: /home/gdrive \
 --umask 0000 \
 --default-permissions \
 --allow-non-empty \
 --allow-other \
 --buffer-size 32M \
 --dir-cache-time 12h \
 --vfs-read-chunk-size 64M \
 --vfs-read-chunk-size-limit 1G &

查看挂载

df -h

自动挂载

cat > /etc/systemd/system/gclone.service <<EOF
[Unit]
Description=gclone
AssertPathIsDirectory=LocalFolder
After=network-online.target

[Service]
Type=simple
ExecStart=/usr/bin/gclone mount A: /home/gdrive \
 --umask 0000 \
 --default-permissions \
 --allow-non-empty \
 --allow-other \
 --buffer-size 32M \
 --dir-cache-time 12h \
 --vfs-read-chunk-size 64M \
 --vfs-read-chunk-size-limit 1G
ExecStop=/bin/fusermount -u LocalFolder
Restart=on-abort
User=root

[Install]
WantedBy=default.target
EOF

设置启动

systemctl start gclone

开机启动

systemctl enable gclone

安装emby

wget https://github.com/MediaBrowser/Emby.Releases/releases/download/4.4.3.0/emby-server-deb_4.4.3.0_amd64.deb
dpkg -i emby-server-deb_4.4.3.0_amd64.deb

一键虚拟内存

wget https://www.moerats.com/usr/shell/swap.sh && bash swap.sh

访问地址 ip:8096

iptables -F

以上内容参考于 https://t.me/mffjc123