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

[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 命令 &后台执行的方式。

Linux反空闲的设置和关闭的更多相关文章

  1. 设置Linux系统的空闲等待时间TMOUT的方法和Linux反空闲设置的两种方法

    为了增强linux系统的安全性,我们需要在用户输入空闲一段时间后自动断开,这个操作可以由设置TMOUT值来实现.将以下字段加入到/etc/profile 中即可(对所有用户生效). export TM ...

  2. Linux 长时间操作设置不断开

    1.第一次尝试失败 修改/etc/ssh/sshd_config文件, 找到 ClientAliveInterval 0 ClientAliveCountMax 3 并将注释符号("#&qu ...

  3. Linux防火墙(Iptables)的开启与关闭

    Linux防火墙(iptables)的开启与关闭 Linux中的防火墙主要是对iptables的设置和管理. 1. Linux防火墙(Iptables)重启系统生效 开启: chkconfig ipt ...

  4. linux云服务器常用设置

    前面的话 由于在云服务器上配置自己的网站,将Linux里的常用设置记录如下 更改shell 默认地, ubuntu系统默认的shell是dash,但更常用的shell是bash 通过下面命令可以将da ...

  5. windows与虚拟机linux能ping通设置

    作为以后参考所用. 首先,介绍如何在VMWare中设置linux的网络.一般网络选项有Bridged,NAT,host-only几种,本次以host-only作详细说明,如下图: 在选择host-on ...

  6. MongoDB在Linux下常用优化设置

    MongoDB在Linux下常用优化设置 以下是一些MongoDB推荐的常用优化设置.在生产环境下选取合适的参数值,例如预读值和默认文件描述符数目等,会对系统性能有很大的影响. 1.关闭数据库文件的 ...

  7. Linux 的终端及设置

    Linux 的终端及设置 终端是一种字符型设备,有多种类型,通常使用tty 来简称各种类型的终端设备.终端特殊设备文件一般有以下几种: /dev/ttySn 串行端口终端 (Serial Port T ...

  8. [转载]linux下core文件设置与查看

    转自:https://blog.csdn.net/dingqinghui/article/details/77855330?locationNum=9&fps=1 linux下core文件设置 ...

  9. Linux环境变量及其设置

    简介 环境变量是在操作系统中一个具有特定名字的对象,它包含了一个或多个应用程序将使用到的信息.Linux是一个多用户的操作系统,每个用户登录系统时都会有一个专用的运行环境,通常情况下每个用户的默认的环 ...

  10. Linux系统下如何设置IP地址?

    Linux系统下如何设置IP地址?我们可以通过命令设定IP的方法,不过此方法的前提条件是用户需root权限.在linux系统的 /etc/sysconfig/network-script/ifcfg- ...

随机推荐

  1. fetch概述

    1.基本特性 更加简单的数据获取方式,功能更强大.更灵活,可以看做是xhr的升级版 基于promise实现 2.语法结构 3.fetch的基本用法

  2. fetch与axios

  3. freeswitch查看所有通道变量

    概述 freeswitch 是一款好用的开源软交换平台. 实际应用中,我们经常需要对fs中的通道变量操作,包括设置和获取,set & get. 但是,fs中有众多的内部定义通道变量,也有外部传 ...

  4. 通过设置 Chrome 解决开发调用跨域问题

    转载请注明出处: 项目采用的是前后端分离的方式,前端本地访问方式是 localhost:8080,访问本地后台服务时,通过 localhost:9000 进行访问 本地后端服务.在本地通过chrome ...

  5. C++ list容器

    一.前言 list容器,又称为双向链表容器,即该容器的底层是以双向链表的形式实现的,因此list容器中的元素可以分散存储在内存空间里,而不是必须存储在一整块连续的内存空间中. list容器中各个元素的 ...

  6. HttpClient获取不到最新的系统代理

    默认情况下,HttpClient是默认采用系统代理,但是,如果你在程序运行过程中,手动修改系统代理,对于HttpClient是无效的,它依然会用老的代理去访问. 解决方法 使用下面的代码,你可以自己实 ...

  7. Linux-服务管理-service-checkconfig

  8. [转帖]一文读懂 | 如何快速部署 OceanBase 开源版

    2021-11-281398 版权 本文涉及的产品 云数据库 RDS MySQL Serverless,0.5-2RCU 50GB 推荐场景: 学生管理系统数据库设计搭建个人博客 立即试用 云防火墙, ...

  9. [转帖]docker exec 失败问题排查之旅

    https://plpan.github.io/docker-exec-%E5%A4%B1%E8%B4%A5%E9%97%AE%E9%A2%98%E6%8E%92%E6%9F%A5%E4%B9%8B% ...

  10. [转帖]Debian开启SSH

    一.Debian开启SSH 参考链接: https://blog.csdn.net/zzpzheng/article/details/71170572 https://help.aliyun.com/ ...