ITPub博客

首页 > Linux操作系统 > Linux操作系统 > [20211018]运维中关于history的问题.txt

[20211018]运维中关于history的问题.txt

原创 Linux操作系统 作者:lfree 时间:2021-10-19 09:00:54 0 删除 编辑

[20211018]运维中关于history的问题.txt

--//这个是我前一段时间遇到的问题,开始没注意,仔细检查发现H3C的监控引起的问题。
--//一般我每次登录检查服务器我运行自己写的脚本,我一般打开头几个字符,按F8总能出现完整的命令。
--//最近总是不行,我开始以为我很久没有登录服务器的原因,连续几天发现不对。
--//注我修改了/etc/inputrc文件,加入:
# cat /etc/inputrc
...
"\e[18~": history-search-forward            # F7
"\e[19~": history-search-backward           # F8

#history
...
  850  2021-09-01 18:03:31 =;export LANG; w -h; echo APMCmdErr=$?
  851  2021-09-01 18:03:31 =;export LANG; /usr/bin/vmstat 1 2; echo APMCmdErr=$?
  852  2021-09-01 18:03:32 =;export LANG; cat /proc/cpuinfo ; echo APMCmdErr=$?
  853  2021-09-01 18:03:32 =;export LANG; mpstat -P ALL ; echo APMCmdErr=$?
  854  2021-09-01 18:03:32 =;export LANG; /bin/df -P -k; echo APMCmdErr=$?
  855  2021-09-01 18:03:32 =;export LANG; /bin/df -P -i; echo APMCmdErr=$?
  856  2021-09-01 18:03:32 =;export LANG; /bin/cat /proc/net/dev; echo APMCmdErr=$?
  857  2021-09-01 18:03:42 =;export LANG; /bin/cat /proc/net/dev; echo APMCmdErr=$?
  858  2021-09-01 18:03:42 =;export LANG; /usr/bin/iostat -k 1 2; echo APMCmdErr=$?
  859  2021-09-01 18:03:43 =;export LANG; /bin/cat /proc/meminfo; echo APMCmdErr=$?
  860  2021-09-01 18:03:43 = date +%Y; date +%s -d "2021-09-01 18:03:08"; date +%s -d "2021-09-01 17:16:28"
  861  2021-09-01 18:03:44 =;export LANG;awk 'BEGIN{S=1630490288;E=1630490587;"wc -l /var/log/messages"|getline LINES;LINES=LINES-1000;print 2021} FNR>=LINES&&U($1,$2,$3)>S&&U($1,$2,$3)<=E{print} function U(m,d,t){L=sprintf("date +%%s -d\"%s %s %s\"",m,d,t);L|getline s;close(L);return s}' /var/log/messages;echo APMCmdErr=$?
  862  2021-09-01 18:03:44 =;export LANG; ps -eo %cpu -o %mem -o pid -o ppid -o time -o comm; echo APMCmdErr=$?
  863  2021-09-01 18:03:44 =;export LANG; uptime; echo APMCmdErr=$?
  864  2021-09-01 18:03:44 = date "+%Y-%m-%d %H:%M:%S";uptime;echo APMCmdErr=$?
  865  2021-09-01 18:03:44 =;export LANG; /usr/bin/lsb_release -d; echo APMCmdErr=$?
  866  2021-09-01 18:03:44 =;export LANG; vgdisplay -c 2>/dev/null; echo APMCmdErr=$?
  867  2021-09-01 18:03:44 =;export LANG; ps -eo stat -o %cpu -o %mem -o pid -o ppid -o time -o comm; echo APMCmdErr=$?
...
  987  2021-09-26 10:35:39 = echo PreFix20210926103526;echo PreFix20210926103526;LANG=C;export LANG;if [ -f /etc/redhat-release ]; then echo 1111;cat /etc/redhat-release; else echo 2222;/usr/bin/lsb_release -d; fi;echo APMCmdErr=$?
  988  2021-09-26 10:35:51 = echo PreFix20210926103538;echo PreFix20210926103538;LANG=C;export LANG; vgdisplay -c 2>/dev/null; echo APMCmdErr=$?
  989  2021-09-26 10:36:13 = echo PreFix20210926103600;echo PreFix20210926103600;LANG=C;export LANG; ps -eo stat -o %cpu -o %mem -o pid -o ppid -o time -o comm; echo APMCmdErr=$?

--//也就是有人巡检,我估计这些是在监控界面发出的命令在服务端执行的。导致我以前输入的命令被清除出去。

# echo $HISTCMD $HISTFILE  $HISTFILESIZE $HISTSIZE | tr " " "\n"
992
/root/.bash_history
1000
1000

--//实际上原来等保设置更小仅仅10,极度影响我的工作效率与心情。
--//当然解决方法很简单,安装tmux,启动tmux启动后不退出。这样自己的history记录信息不会清空。

--//还可以使用一种方法解决这个问题,就是利用TMUX环境变量。在.bashrc加入如下代码。

if [[ '' != "$TMUX" ]]
then
    export HISTFILE=/root/.bash_history_tmux
$    export HISTFILESIZE=2000
#    export     HISTSIZE=2001
#    export     HISTTIMEFORMAT='%F %T = '
fi

--//这样两个系统使用不同HISTFILE。

# echo $HISTCMD $HISTFILE  $HISTFILESIZE $HISTSIZE | tr " " "\n"
3
/root/.bash_history_tmux
1000
1000

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/267265/viewspace-2838003/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
熟悉oracle相关技术,擅长sql优化,rman备份与恢复,熟悉linux shell编程。

注册时间:2008-01-03

  • 博文量
    3080
  • 访问量
    6804704