北京SEO

Linux定期清理和保留 history 记录优化性能

2019/10/10/17:46:16  阅读:1819  来源:谷歌SEO算法  标签: 自学SEO

Linux的历史记录可以让我们方便的查看系统的日常事务,但是当 history 记录多了之后会使Linux系统性能下降,那么我们可以通过定期清理和保留 history 记录优化Linux性能.

有经验的 Linux 系统工程师都喜欢把 Bash 的 HISTSIZE/HISTFILESIZE 设置的很大,这样可以记录更多的历史命令以便以后查阅,这是个好习惯,但有个小问题就是 history 记录了的大量信息在系统启动后就被 load 到内存里,并且一直保存在内存里,这样浪费了不少内存,据统计100000条历史记录大概占用 10MB 左右的内存.

要知道,现在的IT运维系统已经趋向于云计算和虚拟化,其特别就是根据你对硬件资源的需求为你定制的分配,因此,history所占用的内存完全是没必要的,10MB的可用内存可以干很多事情,比如启用一个 MySQL 服务,开个 syslogd等.

那么如何保存尽量多的历史记录而又不浪费内存呢?一个办法就是把历史记录定期保存到硬盘上,bash 的当前历史记录保存在 .bash_history 里,只要定期清理这个文件的记录就可以了:

  1. #!/bin/bash
  2. #archivelinuxcommandhistoryfiles
  3. umask077
  4. maxlines=2000
  5. lines=$(wc-l<~/.bash_history)
  6. --phpfensi.com
  7. if(($lines>$maxlines));then
  8. cut=$(($lines-$maxlines))
  9. head-$cut~/.bash_history>>~/.bash_history.sav
  10. sed-e"1,${cut}d"~/.bash_history>~/.bash_history.tmp
  11. mv~/.bash_history.tmp~/.bash_history
  12. fi

上面脚本所做的事情很简单,检查 .bash_history 文件,如果行数超过2000行就剪裁2000行记录,这个值可以自定义,修改maxlines参数即可,并添加到 .bash_history.sav 这个文件里,这样我们就可以保存所有的历史记录,而且当前的历史记录不超过2000行,只占用少量资源.

广告内容

Linux定期清理和保留 history 记录优化性能 Linux定期清理和保留 history 记录优化性能 Linux定期清理和保留 history 记录优化性能

相关阅读

热门评论

木木老贼 木木老贼

互联网营销达人~

总篇数181

精选文章

RMAN中catalog和nocatalog区别介绍 小技巧:为Linux下的文件分配多个权限 zimbra8.5.1安装第三方签名ssl证书的步骤 解决mysql不能远程连接数据库方法 windows服务器mysql增量备份批处理数据库 mysql中slow query log慢日志查询分析 JavaScript跨域问题总结 Linux下负载均衡软件LVS配置(VS/DR)教程 mysql中权限参数说明 MYSQL(错误1053)无法正常启动

SEO最新算法