GNU/Linux >> Linux の 問題 >  >> Linux

Linux で「trap」コマンドを使用して Ctrl+c または Ctrl+z を無効にする方法

目的は、trap コマンドによる root ユーザーまたは一般ユーザー アカウントの CTRL+C または CTRL+Z 割り込みを無効にすることです。したがって、基本的に、ユーザーが CTRL+C または CTRL+Z を使用してコマンドまたはスクリプトを中断しようとしても、中断することはできません。 trap コマンドを使用して、これらのシグナルをトラップして無効にすることができます。

1. 「kill -l」でシグナル番号を表示します。以下の出力では、シグナルの番号が示されています。CRTL+C の場合は「SIGINT」です。 」シグナル番号 2、CRTL+Z は「SIGTSTP」 」 信号番号 20。

# kill -l
1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP
6) SIGABRT 7) SIGBUS 8) SIGFPE 9) SIGKILL 10) SIGUSR1
11) SIGSEGV 12) SIGUSR2 13) SIGPIPE 14) SIGALRM 15) SIGTERM
16) SIGSTKFLT 17) SIGCHLD 18) SIGCONT 19) SIGSTOP 20) SIGTSTP
21) SIGTTIN 22) SIGTTOU 23) SIGURG 24) SIGXCPU 25) SIGXFSZ
26) SIGVTALRM 27) SIGPROF 28) SIGWINCH 29) SIGIO 30) SIGPWR
31) SIGSYS 34) SIGRTMIN 35) SIGRTMIN+1 36) SIGRTMIN+2 37) SIGRTMIN+3
38) SIGRTMIN+4 39) SIGRTMIN+5 40) SIGRTMIN+6 41) SIGRTMIN+7 42) SIGRTMIN+8
43) SIGRTMIN+9 44) SIGRTMIN+10 45) SIGRTMIN+11 46) SIGRTMIN+12 47) SIGRTMIN+13
48) SIGRTMIN+14 49) SIGRTMIN+15 50) SIGRTMAX-14 51) SIGRTMAX-13 52) SIGRTMAX-12
53) SIGRTMAX-11 54) SIGRTMAX-10 55) SIGRTMAX-9 56) SIGRTMAX-8 57) SIGRTMAX-7
58) SIGRTMAX-6 59) SIGRTMAX-5 60) SIGRTMAX-4 61) SIGRTMAX-3 62) SIGRTMAX-2
63) SIGRTMAX-1 64) SIGRTMAX

すべてのユーザーに対して ctrl+c または ctrl+z を無効にするには、trap コマンドの組み合わせを /etc/profile に追加します。 .

# vi /etc/profile
...
### Disable CTRL+C and CRTL+Z command ########
trap ' '2 20

これらのシグナルを特定のユーザーに対してのみ有効にする必要がある場合は、trap コマンドを ~/.bash_profile に追加できます。 .

# cat .bash_profile
...
### Disable CTRL+C and CRTL+Z command ########
trap ' '2 20


Linux
  1. コマンドラインを使用してLinuxを再起動する方法

  2. Linuxでidコマンドを使用する方法

  3. コマンドを使用してLinuxでプロセスを強制終了する方法は?

  1. Linuxgrepコマンドの使用方法

  2. Linuxでhistoryコマンドを使用する方法

  3. コマンドラインを使用してLinuxでtar.gzファイルを抽出する方法

  1. Linuxの履歴コマンドの使用方法

  2. コマンドラインを使用してLinuxでユーザーを削除する方法

  3. Linux で「screen」コマンドを使用する方法