使用 rclone 管理网盘文件
之前介绍了通过 gdrive 在服务器上管理 Google drive 文件,实现服务器数据备份自动上传功能。最近发现有一个新的开源项目 rclone 支持更多的网盘,同时更新迭代速度也更快。
GitHub 主页:https://github.com/rclone/rclone
他支持的网盘列表:https://rclone.org/overview/
下面介绍它的安装使用方法。
之前介绍了通过 gdrive 在服务器上管理 Google drive 文件,实现服务器数据备份自动上传功能。最近发现有一个新的开源项目 rclone 支持更多的网盘,同时更新迭代速度也更快。
GitHub 主页:https://github.com/rclone/rclone
他支持的网盘列表:https://rclone.org/overview/
下面介绍它的安装使用方法。
昨天决定把服务器的系统从 Ubuntu 18.04 升级到 Ubuntu 20.04,其中经历了不少问题点,下面记录下处理过程。
首先就是升级当前系统所有包到最新:
apt update && apt upgrade -y
apt autoremove && apt purge
然后安装升级需要的管理包,不过一般系统都是自带的:
apt install update-manager-core
然后就可以更新系统了:
do-release-upgrade
标准流程就是以上几步,但是在最后一步的时候问题就开始出现了。
我的服务器上在使用 wget 或者 curl 等网络工具时,每次都提示类似下面的报错:
ERROR: cannot verify github.com's certificate, issued by ‘CN=DigiCert High Assurance TLS Hybrid ECC SHA256 2020 CA1,O=DigiCert\\, Inc.,C=US’:
Unable to locally verify the issuer's authority.
To connect to github.com insecurely, use `--no-check-certificate'.
需要通过参数跳过证书检查,但是这样又有了安全风险。
首先尝试更新本地证书文件:
update-ca-certificates --verbose --fresh
发现问题没有解决,原来是系统缺少了一个指向证书路径 /etc/ssl/certs
的环境变量,尝试添加:
export SSL_CERT_DIR=/etc/ssl/certs
再次测试 wget 命令,发现问题的确没有了。
可以将上面的环境变量添加到系统 shell 配置文件中,我这里是 ~/.bashrc
,添加后刷新一下即可:
source ~/.bashrc
在更新 Ubuntu18.04 到 20.04 时,也是这个问题导致的报错。
我在软路由上通过 esxi 安装了 openwrt 作为路由系统。虚拟机分配了 5 GB 作为存储空间,但是安装完成后通过命令查看发现系统识别到的空间只有很小:
root@OpenWrt:~# df -h
Filesystem Size Used Available Use% Mounted on
/dev/root 252.0M 241.4M 5.5M 98% /rom
tmpfs 496.5M 68.0K 496.4M 0% /tmp
/dev/sda1 15.7M 3.8M 11.6M 25% /boot
/dev/sda1 15.7M 3.8M 11.6M 25% /boot
tmpfs 512.0K 0 512.0K 0% /dev
其中 /dev/root
是系统固件目录,不用考虑。/dev/sda*
就是系统实际可用的硬盘空间。我明明分配了 5 GB 空间给 openwrt 但是由于系统分区是在下载的固件中定义好的,所以其余空间就没有被识别。由于默认存储空间过小,当安装了过多的插件后,会提示空间不足导致无法安装更多插件:
verify_pkg_installable: Only have 0kb available on filesystem /overlay, pkg luci-app-openvpn needs 9
opkg_install_cmd: Cannot install package luci-app-openvpn
下面介绍如何将剩余空间挂在到 openwrt 中。
我们在编程中经常会使用一些固定语句来解决对应固定的问题,在 shell 脚本中一个被经常使用但不太好理解的短句就是 2>&1
,例如:
ls foo > /dev/null 2>&1
下面我们一步步了解下这种结构的含义。