linux下清理日志的脚本
需求:由于/var分区单独划分,给的分区大小才5G,日志写满了,需要写个脚本定时清理日志文件
#!/bin/bash
##delete log script ,write by xl
LOG_DIR1=/var/log
LOG_DIR2=/var/spool/mail
LOG_DIR3=/var/spool/mqueue
ROOT_UID=0
##Must be use root to run this script
if [ "$UID" -ne "$ROOT_UID" ]
then
echo "Must be root to run this script."
exit 1
fi
cd $LOG_DIR1 || {
echo "Can not change to necessary dircectory." >&2
exit 1
}
#把空设备重定向到文件里面
cat /dev/null > maillog && echo "Logs cleaned up."
cat /dev/null > maillog.1 && echo "Logs cleaned up."
cat /dev/null > maillog.2 && echo "Logs cleaned up."
cd $LOG_DIR2 || {
echo "Can not change to necessary dircectory." >&2
exit 1
}
cat /dev/null > root && echo "Logs cleaned up."
cat /dev/null > stock && echo "Logs cleaned up."
###清除mqueue下的小文件
cd $LOG_DIR3
ls |xargs rm -rf
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | 1、删除系统默认账户、组 可以删除的用户有:adm,lp, sync , shutdown ,halt,news,uucp,operator,games,gopher 等 可以删除的组有:adm,lp,news,uucp,games,dip,pppusers,popusers,slopusers 等 [root@localhost ~] # userdel adm # 删除用户命令 [root@localhost ~] # groupdel adm # 删除组命令 ## 如果用户只做服务启动 , 那么最好将登陆 shell 设为 /sbin/nologin 2、关闭不需要的系统服务 可以有选择的关闭这些服务:anacron、auditd、autofs、avahi-daemon、avahi-dnsconfd、bluetooth、cpuspeed、firstboot、gpm、 haldaemon、hidd、ip6tables、ipsec、isdn、lpd、mcstrans、messagebus、netfs、nfs、nfslock、nscd、pcscd portmap、readahead_early、 restorecond、rpcgssd、rpcidmapd、rstatd、sendmail、setroubleshoot、yppasswdd ypserv [root@localhost ~] # chkconfig ip6tables off # 关闭开机启动 ## 下面是系统稳定运行必须的服务 acpid 用于电源管理,对于笔记本和台式电脑很重要,建议开启 Apmd 高级电源能源管理服务,可以监控电池 Kudzu 检测硬件是否变化的服务,建议开启 crond 任务计划服务,建议开启 atd 类似 crond ,提供指定时间做指定事情的服务 keytables 用于装载镜像键盘,根据情况,可以启动 iptables Linux 内置防火墙软件,为了系统安全必须启动 xinetd 支持多种网络服务的核心守候进程,建议开启 xfs 使用 X Windows 桌面系统必须的服务 network 激活已配置网络接口的脚本程序,也就是启动网络服务,启动 sshd 提供远程登陆到 Linux 上的服务,为了系统维护方便,你看着办吧 syslog 记录系统日志的服务,很重要,建议开启 |
本文出自http://hao360.blog.51cto.com/5820068/1553933/