iCopy和fclone和TG-bot构建gd转存保姆教程

  • A+
所属分类:Linux

iCopy和fclone和TG-bot构建gd转存保姆教程

iCopy和fclone和TG-bot构建gd转存保姆教程

灞波儿奔波儿灞 2020-07-19 16:52:41 iCopy和fclone和TG-bot构建gd转存保姆教程5340 iCopy和fclone和TG-bot构建gd转存保姆教程收藏 10

版权

文章目录

视频教程观看和下载地址(版本更新较大,视频仅作参考):

在线看①在线看②
网盘下载① 网盘下载②提取码:ufdv

2020-7-22更新:

1.更新获取和使用icopy脚本命令。 2.更新TG-bot菜单命令。 3.更新博客日志部分文章设置顺序,使其更加符合逻辑。 4.更新iCopy - v0.2.0-beta.1及之前版本如何获取最新版本的教程

一、准备(不讲)

1.bot-id:

bot通过@BotFather获得,输入/newbot、输入机器人名称、输入机器人用户名(以***bot结束),成功,获得

Use this token to access the HTTP API:

12345678:****

(红色部分即需要使用的bot id)

2.你自己的用户id

获得方法自己谷歌

3.sa账号群组(autoclone获得)且已经加入你的TD,是内容管理员权限。

不讲

4.使用ssh工具:

MobaXterm v20.0中文汉化专业版

二、环境

1.ubuntu18.04*64( V(以下简称v。)。。ps或者虚拟机安装,虚拟机全程可连全球,懂的都懂)

①安装ubuntu 18.04x64(略)

使用MobaXterm v20.0中文汉化专业版 ssh连接登录 注意全程使用root账号操作
iCopy和fclone和TG-bot构建gd转存保姆教程
iCopy和fclone和TG-bot构建gd转存保姆教程

2.python3.7

②安装python3.7

参考文章:ubuntu安装python3.7,并更新python默认指向为python3.7
查看python的指向。

ls -l /usr/bin | grep python
1

iCopy和fclone和TG-bot构建gd转存保姆教程
可以看到此时python指向的是python3.6。
1.直接使用apt-get安装python3.7

apt-get install python3.7
1

iCopy和fclone和TG-bot构建gd转存保姆教程

按y回车

iCopy和fclone和TG-bot构建gd转存保姆教程

3.screen

③安装screen

参考文章:Ubuntu安装screen
输入screen -ls查看是否安装screen

iCopy和fclone和TG-bot构建gd转存保姆教程
说明已经自动安装
若遇到错误bash: screen: command not found,那就是说明没有安装.根据参考文章自行安装

三、开始安装

参考文章:
1.本地化安装 mongodb 教程完整步骤
2.iCopy v0.2.0a13 安装教程

①本地化安装mongodb

1.通常组建升级以及安装

复制,粘贴

sudo apt update -y
1

sudo apt upgrade -y
1

wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | sudo apt-key add -
1

sudo apt-get install gnupg
1

wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | sudo apt-key add -
1

echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.2.list
1

sudo apt-get update
1

sudo apt-get install -y mongodb-org
1

iCopy和fclone和TG-bot构建gd转存保姆教程

2.修改系统 ulimit 限制 根据以下步骤做一遍

step 1)

nano /etc/sysctl.conf
1

添加以下行

fs.file-max = 6553500
1

iCopy和fclone和TG-bot构建gd转存保姆教程

保存ctrl+x ,y,enter
iCopy和fclone和TG-bot构建gd转存保姆教程

退出执行以下命令

sysctl -p
1

step 2)

nano /etc/security/limits.conf
1

复制添加以下行

```
* soft memlock unlimited
* hard memlock unlimited
* soft nofile 65535
* hard nofile 65535
* soft nproc 65535
* hard nproc 65535

root soft memlock unlimited
root hard memlock unlimited
root soft nofile 65535
root hard nofile 65535
root soft nproc 65535
root hard nproc 65535
12345678910111213
```

iCopy和fclone和TG-bot构建gd转存保姆教程
保存退出

step 3) 若没有以下文件则自行创建

经过查找有这个文件,所以直接输入命令
iCopy和fclone和TG-bot构建gd转存保姆教程

nano /etc/pam.d/common-session
1

添加以下行

session required pam_limits.so
1

iCopy和fclone和TG-bot构建gd转存保姆教程

保存退出,重新登录SSH查看

ulimit -a
1

iCopy和fclone和TG-bot构建gd转存保姆教程

3.接下来我们要对 mongodb 进行开启账号密码验证及授权

首先打开 2个 SSH 登录到你的VPS 同时登录2个窗口

窗口1)仅输入以下命令作为临时启动

mongod --port 27017 --dbpath /var/lib/mongodb
1

窗口2)输入以下命令

mongo --port 27017
1

iCopy和fclone和TG-bot构建gd转存保姆教程
iCopy和fclone和TG-bot构建gd转存保姆教程

以下步骤均在窗口2中操作
1)创建用户 自行填写并记住下面的 account 和 passwd ,确认无误后回车

use admin
db.createUser(
{
user: "account",
pwd: "passwd",
roles: [ { role: "userAdminAnyDatabase", db: "admin" }, "readWriteAnyDatabase" ]
}
)
12345678

iCopy和fclone和TG-bot构建gd转存保姆教程
iCopy和fclone和TG-bot构建gd转存保姆教程

2)添加用户后输入以下命令重启一次mongod 显示failed正常不用管

db.adminCommand( { shutdown: 1 } )
1

iCopy和fclone和TG-bot构建gd转存保姆教程

3)退出mongo shell 2 次 ctrl + c

ctrl + c
ctrl + c
12

4)此时之前打开的窗口1)也可以关闭退出了

iCopy和fclone和TG-bot构建gd转存保姆教程

4.继续编辑配置文件

nano /etc/mongod.conf
1

复制以下内容至配置文件

security:
authorization: enabled
12

iCopy和fclone和TG-bot构建gd转存保姆教程

修改以下内容

bindIp: 0.0.0.0
1

iCopy和fclone和TG-bot构建gd转存保姆教程
保存退出

重新授权文件属性

cd /var/lib/mongodb
1

sudo chown -R mongodb:mongodb *
1

返回根目录

cd ~
1

5.对mongod服务进行添加并管理

重新载入 mongod 服务

systemctl daemon-reload
1

设置开机启动

systemctl enable mongod
1

停止一次 mongod

systemctl stop mongod
1

开启 mongodb数据库

systemctl start mongod
1

至此 standalone mongodb 已经配置完毕

日常管理命令

systemctl start mongod
systemctl restart mongod
systemctl stop mongod
systemctl status mongod
1234

②安装icopy v0.2.0–

请准备好python3.6+ 版本,直接3.7/3.8版本会更好。(前文已经准备好)

1.安装fclone。

1)安装解压工具

apt install unzip
1

2)下载fclone

bash <(wget -qO- https://git.io/JJYE0)
1

iCopy和fclone和TG-bot构建gd转存保姆教程

~3)解压刚才下载的fclone~

iCopy和fclone和TG-bot构建gd转存保姆教程

~unzip fclone-v0.3.1-linux-amd64.zip~

~4)移动 解压得到的fclone到/usr/bin~

iCopy和fclone和TG-bot构建gd转存保姆教程

~mv /root/fclone-v0.3.1-linux-amd64/fclone /usr/bin~

iCopy和fclone和TG-bot构建gd转存保姆教程

3)设置fclone权限为777

iCopy和fclone和TG-bot构建gd转存保姆教程

4)上传json文件到/root/accounts/sa

根据下文你设置的配置文件信息设置sa文件路径

作者本人是在 /root中创建/accounts/sa文件夹,在里面上传了我的所有的sa的json文件
iCopy和fclone和TG-bot构建gd转存保姆教程
iCopy和fclone和TG-bot构建gd转存保姆教程

iCopy和fclone和TG-bot构建gd转存保姆教程
iCopy和fclone和TG-bot构建gd转存保姆教程

上传方法有很多,我就不多做演示了,不会百度吧
一定要记好.json文件所在位置,下文配置要用到!

4)配置fclone

方法一(复杂):输入 fclone config
  • 第一步选择 n ,然后给remote新的名这里用 gc ",一定要记好,下文配置要用到
  • 第二部选择 13,client_id 和 client_secret 默认不填。
  • 第三步选择 scope 填1 ,root_folder_id 默认不填。
  • 第三步重要关键的一步打开左边文件夹,找到root/accounts/sa 下的任意 json 文件右键复制路径如 /root/accounts/sa/02d62cb52b2ac72d2c78c5b1b529b202acaf591a.json
    (一定要注意sa_path位置和你设置的.json所在目录目录一样!!!这一步很容易出错!)
  • 第五步 service_account_file_path> 填入 /root/accounts/sa/ (别忘了最后还有个斜杠“/”,这一步很容易出错!)
  • 第六步 Edit advanced config? (y/n) 选择 n .
  • 第七步 Configure this as a team drive? 填 y .什么都不填,回车
    -第八步 Y,q
方法二(简单):直接创建一个rclone.conf,权限设置为600

放在/root/.config/rclone/下
内容为

[gc] # 这里填你的remote文件名
type = drive
scope = drive
service_account_file = /root/accounts/sa/001cdcb95678b4ff183bccccc4486872a052cb61.json # 这里填你sa文件所在的目录中的随便一个json文件
service_account_file_path = /root/accounts/sa/ # 这里填你sa文件目录,
team_drive =
123456

只需改service_account_file和service_account_file_path,其他不用管

2.然后把icopy 0.2.0a11 用git clone下来

1.获取

~git clone -b _0_2 https://github.com/fxxkrlab/iCopy.git~

2020-7-22 更新:获取iCopy - v0.2.0-beta.4.1

git clone https://github.com/fxxkrlab/iCopy.git
1

2.复制一份示例配置文件(conf.toml.example)

cp iCopy/config/conf.toml.example iCopy/config/conf.toml
1

3.修改配置文件(conf.toml)

iCopy和fclone和TG-bot构建gd转存保姆教程
iCopy和fclone和TG-bot构建gd转存保姆教程
注:iCopy conf.toml中的数据库的链接内容按照以下格式填写

db_connect_method = "mongo"
db_addr = "localhost"
db_port = 27017
db_name = "iCopy"
db_user = "你上面填写的account"
db_passwd = "你上面填写的密码"
123456

1.db_connect_method 的 mongodb+srv 换成mongodb

2.db_addr 填入 localhost

3.db_user 和 db_passwd 换成刚才mongodb数据库设置的用户名和密码
iCopy和fclone和TG-bot构建gd转存保姆教程

iCopy和fclone和TG-bot构建gd转存保姆教程

设置好后保存退出

5.配置好后 我们就准备安装模块

cd iCopy
1

下面这两个指令是进入虚拟环境,可以避免些问题。如果你认为不需要可以跳过。

python3 -m venv .
. ./bin/activate
12

安装需要的模块

apt install python3-pip
1

y回车

pip3 install oauth2client
1

2020-7-22更新(新增一串代码):

chmod +x iCopy.py
1

回车

pip3 install -r requirements.txt
1

回车
更新icopy为最新版

git pull
1

确认安装完成 没有任何报错 就可以启动脚本

python3 iCopy.py
1

iCopy和fclone和TG-bot构建gd转存保姆教程

启动后如果报错提示 The “dnspython” module must be installed to use mongodb+srv 就安装
pip3 install pymongo[srv]

如果使用中出现下图的警告,不影响使用。只要每次添加id(目标/源)都会提示一次,所以无视就好.
iCopy和fclone和TG-bot构建gd转存保姆教程
进入机器人进行测试
有问题自行百度解决

③设置screen中开启

参考文章:
linux 技巧:使用 screen 管理你的远程会话
Linux 下screen命令的使用

方法一:

建立

screen -dmS icopy
1

进入

screen -r icopy
1

开启icopy脚本

cd /root/iCopy
1

python3 iCopy.py
1

2020-7-22更新:方法二(简单):

screen -dmS iCopy `which python3` iCopy.py
1

完成!愉快玩耍吧!

④其他亿些细节

1.升级

必须进入iCopy目录才能升级

cd iCopy
1

git pull
1

2.看fclone 的错误日志(无错误不会生成)

/root/icopy_cloner_debug.log

3.根命令列表:(可通过botfather中的/setcommands进行设置)

2020-7-22更新:
(botfather只支持根命令不支持子命令设置)
~start - 主入口 选择模式~ (iCopy - v0.2.0-beta.2及以后版本不再支持)
menu - 主入口/选择模式
quick - 极速模式
copy - 自定义模式
set - 自定义设置
cancel - 取消对话
size - 查询大小
reset - 重置任务(后面可跟id)
task - 任务查询
kill - 杀死进程中任务
ver - 检查iCopy版本
restart - 重新启动iCopy

4.子命令列表:

set - 自定义设置
┖ set - 支持批量设置
┖ set rule - 查看规则
┖ set fav|quick +/- id - 单条收藏夹设置
task - 任务查询
┖ task - 当前任务查询
┖ task list - 未来10条任务查询】

5.如何设置v重启时脚本自动开启

自行百度crontab,systemd 启动服务

⑤2020-7-22更新:iCopy - v0.2.0-beta.1及之前版本如何获取最新版本

以iCopy - v0.2.0-beta.1为例子:由于作者更换了分支,所以需要更改分支(懒人直接rm-吧)

为防止意外,建议备份conf.toml
iCopy和fclone和TG-bot构建gd转存保姆教程
1、使用screen名字,kill掉。

screen -S session_name -X quit
1

例如:

screen -S iCopy -X quit
1

2.更改分支
参考文章:git命令-切换分支
cd iCopy
查看远程分支
git branch -a

查看本地分支
git branch

切换分支
git checkout -b master origin/master

iCopy和fclone和TG-bot构建gd转存保姆教程

最后感言

感谢各位大佬的无私帮助我才能有这个教程!再次感谢sharegdrive群组里的各位大佬!也感谢作者们的辛勤付出!项目地址:iCopy , fclone

  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信公众号
  • 我的微信公众号扫一扫
  • weinxin