华为云服务器(linux)定时删除日志

应用华为云服务器时,由于服务器存储限制,一旦日志文件过多爆满,就会导致服务器停止运行,对于基于该服务器的产品来说是致命的,因此需要定期清除日志文件,保证服务器存储空间充足。

在我自己去进行脚本编辑并设置定时程序时,遇到许多新手会出现的问题,在此一步步列举。

远程进入华为云服务器之后,进行以下步骤

1.由于我的日志文件在 /home/logs 文件下,“(cd /home/logs)

这里若进入logs文件夹显示no such file or dirctory,说明该文件夹目前还不具备访问权限,那就先进入home文件夹下(cd /home),然后为logs文件夹修改权限——

指令为 sudo chmod -R 777 logs  ”

因此我直接在该文件夹下新建文件

auto-del-log.sh; ——指令为 touch auto-del-log.sh(注意这里后面都不需要加;)

2.给.sh文件设置删除的具体指令

编辑该文件——指令为 vim auto-del-log.sh(这里是已经在logs文件夹下编辑了),此时可能又会显示no such file or dirctory,这是因为新建的这个文件也需要权限来编辑,赋予可执行权限的指令为—— chmod +x auto-del-log.sh,此后再编辑vim即可编辑该文件,按下回车后会直接进入该界面

 图上是我已经编辑好的内部程序,面对尾部这一串代码"auto-del-log.sh" 1L, 46C,并且按任何键都没有效果,我们该如何?实际上这个编辑界面需要按下“i”键才会进入编辑模式,此时就可以编辑我第一行的代码——指令为find /home/logs -mtime +30 -exec rm -rf {} \;(30为设置30天前的日志全部清除,若要改天数,直接改数字即可,其他都不用改,若要改其他参数,自行查阅资料)

如图为按下i键后的界面,显示可以编辑,若要退出,则先按Esc键,变成这个界面

再键入:wq 保存退出,即可回到原界面 

下图为按下回车后回到的原界面

此时,该删除日志脚本已编辑完成,下一步就是将他加入到系统定时程序中去。

3.创建定时任务——指令为 crontab -e 

(首先要回到最初始的文件夹——指令为 cd   “此处有两个空格,回上一层就是一个空格,因为我的是两层文件夹,所以按两个空格”)

按下后又会进入上图所示界面,内有代码诸如  "/tmp/crontab.CataB3" 2L, 54C 之类,与上面相同的方法对此进行编辑,内设代码——指令为 0 0 * * * /home/logs/auto-del-log.sh >/dev/null 2>&1

0 0即为每天0点定时触发

编辑如图所示

 编辑完成后与上面一样进行操作:wq保存回到原界面即可

可输入 crontab -l对在执行程序进行查看

如图所示,刚刚编辑的程序已成功保存


后续实际运行成功了,但是由于我的自动删除文件放在logs文件夹下,导致它本身存在时间达到30天被自己删除了,所以大家在自己设置的时候可以直接把auto-del-log.sh文件放在/home下,将定时任务里面的该文件地址修改为/home/auto-del-log.sh即可

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值