这个脚本主要用来检测盒子(seedbox)或者 linux 服务器的剩余空间。当已使用空间大于等于指定值时,会禁止指定目录的写入权限,并发送告警邮件。删掉种子或删除文件后,已使用空间小于指定值时,相关目录会自动恢复写入权限。
说明
- limit 硬盘空间的使用百分比。92 指硬盘使用空间大于等于 92% 时,指定目录会被禁止写入,并发送告警邮件。
- dir 被禁止写入的目录,需要修改成自己盒子的下载目录。
- v_mail 收告警邮件的邮箱,需要修改成自己的邮箱。
- log 日志的存放位置。
- sleep 脚本循环执行的时间,30 指每过 30s 执行一次。
需要在盒子上提前搭建好邮件发送服务器,脚本才能自动发邮件。相关教程:Linux 搭建 SMTP 发送邮件服务器
当使用空间超过限制的空间使用百分比后,只会使盒子无法添加新种子,正在下载的种子还是会继续下载。如果想让正在下载的种子也停止下载,需要修改脚本中 chmod 555 $dir
和 chmod 775 $dir
,分别改成 chmod -R 555 $dir
和 chmod -R 775 $dir
。
盒子发出的邮件一般会被 QQ 邮箱、163 邮箱等扔到垃圾箱,所以要把盒子的邮件地址添加到收件邮箱的白名单。
使用
运行脚本
在 root 用户环境下,使用命令 nohup
命令运行脚本。
1 | nohup /home/bfdz/rtorrent/check_size.sh & |
结束脚本
使用命令 ps aux | grep check
找出进程,然后 kill
进程 ID。
源码
Gist: check_size.sh
1 |
|