+
80
-

如何删除linux下/var/log/日志大文件?

最近通过du -sh /* 命令发现var/log目录下占用90%的磁盘空间

请问如何删除linux下/var/log/日志大文件?

网友回复

+
0
-

首先来分析一下linux系统/var/log/目录下文件的类别:

1、/var/log/secure 记录登录系统存取数据的文件(例如:pop3,ssh,telnet,ftp等都会记录在此);

2、/ar/log/btmp 记录登录信息记录,被编码过,所以必须以lastb解析;
lastb | awk '{ print $3}' | sort | uniq -c | sort -nr | more

3、/var/log/message 几乎所有的开机系统发生的错误都会在此记录; 4、/var/log/boot.log 记录一些开机或者关机启动的一些服务显示的启动或者关闭的信息; 5、/var/log/maillog 记录邮件的存取和往来; 6、/var/log/cron 用来记录crontab(定时任务)这个服务的内容; 7、/var/log/lastlog 记录每个用户最后的登录信息; 8、/var/log/btmp 记录错误的登录尝试; 9、/var/log/dmesg 内核日志; 10、/var/log/yum.log 使用yum安装的软件包信息 那么怎么删除这些日志文件呢,使用rm -f强制删除你会发现有问题,千万别这么弄 原因: 应用已经打开文件句柄,直接删除会造成: 1.应用无法正确释放日志文件和写入 2.显示磁盘空间未释放 正确方式: cat /dev/null > logfile #例:cat /dev/null > /var/log/messages 将以下代码保存为.sh后缀的脚本文件,再配合crontab即可实现定时清理日志; #!/bin/sh cat /dev/null > /var/log/secure cat /dev/null > /var/log/btmp cat /dev/null > /var/log/message cat /dev/null > /var/log/boot.log cat /dev/null > /var/log/maillog cat /dev/null > /var/log/cron cat /dev/null > /var/log/lastlog cat /dev/null > /var/log/btmp cat /dev/null > /var/log/dmesg cat /dev/null > /var/log/yum.log
我知道答案,我要回答