sync|家庭网络 篇三:基于Unraid的NAS系统内超轻量级百度云备份( 二 )
sleep 5
##开始备份
echo 'Backup to other disks'
cp /*-flash-backup-*.zip "$dir1"
sleep 5
mv /*-flash-backup-*.zip "$dir2"
sleep 5
##删除目标硬盘中老的备份,这里删除的是10天前的备份, -MTIME +后面是天数
find "$dir1" -type f -name "*-flash-backup-*.zip" -mtime +10 -exec rm -rfv {} ;
find "$dir2" -type f -name "*-flash-backup-*.zip" -mtime +10 -exec rm -rfv {} ;
##完成提示
echo 'All Done'
2. 定时备份文件至不同的硬盘
这里只是演示,备份时目标可以选择各种硬盘,移动硬盘,远程NFS路径等。
#设定备份目标路径。其中Backup1共享目录在第一个硬盘,Backup2目录在第二个硬盘。
dir1=//mnt/user/Backup1/Zip/
dir2=//mnt/user/Backup2/Zip/
#运行rync将Data目录备份至两个硬盘, 这里命令行表示两边保持同步,如果Data里面删了某子文件,远程的目录也会删掉。完全同步的备份。
rsync -av --delete-after /mnt/user/Data "$dir1"
rsync -av --delete-after /mnt/user/Data "$dir2"
3. 定时备份至百度云这里主要使用的百度云备份脚本就是bypy的python脚本。bypy在Github上是开源的。
bypy需要前期做一些配置准备,可以打开Unraid的命令行,输入如下命令,设定好命令行运行环境。
export PYTHONPATH=/mnt/user/appdata/python/lib64/python3.9/site-packages:$PYTHONPATH
export PATH=/mnt/user/appdata/python/bin:$PATH
export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8
export LANGUAGE=en_US.UTF-8
输入如下命令安装bypy。我装的是python3.9版本,bypy是1.6.10版本。如下命令会将bypy安装至appdata目录,这个目录是共享目录,专门放应用数据的地方。这样即使重启Unraid也不会丢失bypy。如果没有--prefix指定目录,安装后重启Unraid会丢失bypy。
python3.9 -m pip install --prefix /mnt/user/appdata/python bypy==1.6.10
装好bypy,预先在 /mnt/user/appdata/python目录下建好config目录,否则会运行失败,然后运行如下命令
python3.9 -m bypy info --config-dir /mnt/user/appdata/python/config
这个info参数将会第一次连接百度云网盘,并且会出现获取授权码的链接。
文章插图
建议预先网页登陆好百度盘,鼠标点击上面命令行里面的链接,将会打开百度的网页,获取到授权码,将授权码拷贝粘贴到命令行里面回车即可。
文章插图
成功的话将会连接并获取到百度盘空间大小。
文章插图
获取的授权信息将会存入config目录。可以看到里面多了几个json文件。 第一次运行才需要授权,如果授权过了,授权信息已存入config目录,后面就不需要做这个动作了。脚本直接无人值守运行即可。
以上已经装好了bypy包并且已经配置好了授权。
输入如下命令即可同步百度盘, syncup是将appdata同步到百度盘上去,使用的刚才的config配置授权。这种命令行方式很灵活,可以任意配置目录,任意组合配置多个百度盘的账号,多账号存到不同路径的config目录即可。 bypy syncup 支持3个参数localdir remotedir deleteremote , 分别表示本地路径,远程百度云路径,0表示不删除远程数据,即本地删掉了,百度云里面的也不会删。
python3.9 -m bypy syncup /mnt/user/appdata /appdata 0 --config-dir /mnt/user/appdata/python/config
运行可以看看结果,数据多可能要点时间。 在命令行运行无误后即可创建定时CA User Script脚本。脚本内容如下:
# 同步至百度盘,设置环境,支持脚本以及中文
export PYTHONPATH=/mnt/user/appdata/python/lib64/python3.9/site-packages:$PYTHONPATH
- iphone13 pro|粉丝买美版iPhone13Pro,躲过了网络锁,却没想到有配置锁!
- 亿美元|美国 AT&T 赢得 3.45GHz 频段 5G 网络竞标,耗资 90 亿美元
- 电影|国家发改委:鼓励网络视频平台限时低价电影放映
- 物联网|据说,物联网也可以称之为“一张想想的网络”,物联网世界是梦
- Aqara 智能门锁 A100 Pro 发布:支持苹果“家庭钥匙”解锁
- LG电子正式加入IBM量子网络,将推动量子计算工业应用发展
- 家庭影院|深度设置和调节家庭影院低音炮
- 5g网络|罕见!可拆电池的安卓新机发布:TF卡槽/耳机孔都配齐了
- 充电桩|多地小鹏自营充电桩离线,小鹏回应:因网络故障,已在紧急修复
- 短视频|从谭谈交通风靡网络看网络世界的懒堕与良善