ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

Linux反空闲的设置和关闭

2020-04-03 23:03:59  阅读:361  来源: 互联网

标签:设置 jystdrac1 readonly TMOUT 关闭 Linux oracle 超时 空闲


有一定工作经验的运维人基本都会遇到这样的场景,某个窗口自动断开了,提示超时:

[oracle@jystdrac1 ~]$ timed out waiting for input: auto-logout

如果你使用的是SecureCRT,很多人可能会想到工具有反空闲的设置,也是网上能轻易搜到的常用解决方案,可以在超时时间内定时发送一些信息,使得会话保持活跃状态。

--比如定时发送“~”,但有时也会不好用:
[oracle@jystdrac1 ~]$ ~timed out waiting for input: auto-logout

--比如定时发送回车"\n",测试还比较好用:

但要注意这实际有非常大的隐患,可能引起误操作:
不妨试想一下你远程桌面到某环境想删除某个目录下以.log结尾的日志文件,
当你想要输入`rm -rf *.log`,但当只输入到`rm -rf *`时,网络故障远程桌面断了,远程桌面上的CRT终端还在
那么接下来的自动定时"\n" 回车,就是一场灾难了,会把目录下所有文件都删除掉。。

那追溯下为什么会有这样的自动超时限制,有这样的变量(这里为了方便演示,设置了10s间隔的超时):

[oracle@jystdrac1 ~]$ echo $TMOUT
10

如果我们尝试临时设置TMOUT变量为0,就可以起到当前会话不会超时断开的作用(下面测试验证设置后,超过10s也未断开):

[oracle@jystdrac1 ~]$ export TMOUT=0
[oracle@jystdrac1 ~]$ echo $TMOUT
0
[oracle@jystdrac1 ~]$ 
[oracle@jystdrac1 ~]$ date
Fri Apr  3 21:04:16 CST 2020
[oracle@jystdrac1 ~]$ date
Fri Apr  3 21:04:28 CST 2020
[oracle@jystdrac1 ~]$ 

但有一点需要注意,这个参数通常是root用户下,/etc/profile文件设置的,如果同时设置了readonly TMOUT

export TMOUT=10
readonly TMOUT

那么,就不会允许你临时设置或取消TMOUT的值,如果你尝试这样做,会收到明确的提示:

[oracle@jystdrac1 ~]$ export TMOUT=0
-bash: TMOUT: readonly variable
[oracle@jystdrac1 ~]$ 
[oracle@jystdrac1 ~]$ unset TMOUT
-bash: unset: TMOUT: cannot unset: readonly variable
[oracle@jystdrac1 ~]$ 
[oracle@jystdrac1 ~]$ echo $TMOUT
10

这种情况就得考虑在超时时间内,反空闲发送"\n"回车了。但也同样面临上面说到的那种风险。
或者以后当你知道自己操作必然是执行很久怕会话断掉,可以考虑nohup 命令 &后台执行的方式。

标签:设置,jystdrac1,readonly,TMOUT,关闭,Linux,oracle,超时,空闲
来源: https://www.cnblogs.com/jyzhao/p/12629506.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有