web-dev-qa-db-ja.com

CentOS 7のTMOUTはどこに設定されていますか?どうすれば無効にできますか?

私はこれを以前に追跡したことがあるのを知っていますが、答えを見つけることができません。

CentOS 7(X Windows GNOMEまたはKDEから)でbashシェルを起動すると、変数TMOUTが設定され、指定した非アクティブ期間が経過するとシェルがタイムアウトします。

変数は読み取り専用なので、設定を解除したり変更したりできません。

unset TMOUT
# prints bash: unset: TMOUT: cannot unset: readonly variable
export TMOUT=99999
# prints bash: TMOUT: readonly variable

通常、/etc/bashrcはこれらの種類のものを設定します。私はそれが設定されている場所を使用して見つけようとしました:

grep TMOUT $HOME/.??* /etc/* 2> /dev/null
# not found

したがって、TMOUTが実際に/etc/bashrcで設定されているとは思いません。また、探していた方法で設定されていないと思います。

他の質問が尋ねられましたが、それらは同じではないか、役に立ちません。

4
PatS

タイムアウトを無効にするために、ファイル/etc/profile.d/local.shを変更しました。タイムアウト変数を設定し、それを読み取り専用にした行をコメント化しました。

vi /etc/profile.d/local.sh
#export TMOUT=43200
#readonly TMOUT

代わりに、タイムアウトを無効にするという意味のTMOUT = 0を設定することもできます。 bash TMOUTのマニュアルページは http://man7.org/linux/man-pages/man1/bash.1.html です。

最も重要な変更は、変数を「読み取り専用」にした行をコメント化することです。変数を変更できる場合は、自分のログイン設定($ HOME/.bashrc、.bash_profileなど)で変更した可能性があります。

4
PatS