본문 바로가기

리눅스

리눅스 터미널 세션을 확인하고 끊는 방법

728x90

리눅스 터미널 세션을 확인하고 끊는 방법

터미널 세션은 사용자가 현재 접속한 터미널 또는 원격 접속한 세션 등을 나타냅니다.

 

터미널 세션을 확인하는 명령어는 who 또는 w입니다. who 명령어는 현재 로그인한 사용자의 정보를 보여주며, w 명령어는 좀 더 상세한 정보를 보여줍니다.

 

터미널 세션을 끊기 위해서는 kill 명령어를 사용합니다. 특히 kill 명령어를 사용하여 특정 터미널 세션을 종료할 수 있습니다.

 

먼저 터미널 세션을 확인하는 방법은 다음과 같습니다.

  • who 명령어 사용하기
who
$ who
ubuntu   pts/4        2023-07-24 09:28 (192.168.20.1)
ubuntu   pts/5        2023-07-24 09:28 (192.168.20.1)
  • w 명령어 사용하기
w
$ w
 09:36:52 up 27 min,  2 users,  load average: 0.00, 0.00, 0.02
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
ubuntu   pts/4    192.168.20.1     09:28    8:11   0.04s  0.04s sshd: ubuntu [priv]
ubuntu   pts/5    192.168.20.1     09:28    0.00s  0.02s  0.02s sudo su -

위 명령어들을 실행하면 현재 로그인한 사용자와 해당 사용자의 터미널 세션 정보가 출력됩니다.

 

  • 종료하고자 하는 사용자의 세션을 로그아웃합니다.

아래 명령어를 사용하면 해당 사용자의 모든 세션을 종료합니다

pkill -u 사용자이름

예를 들어, 사용자 "john"의 모든 세션을 종료하려면

pkill -u john

주의: 다른 사용자의 세션을 종료하는 것은 해당 사용자의 작업을 강제로 종료시키는 것이기 때문에 신중하게 사용해야 합니다. 필요한 경우에만 이러한 작업을 수행하시기 바랍니다.

 

다음으로, 특정 터미널 세션을 끊기 위해 kill 명령어를 사용합니다. 이때 끊고자 하는 세션의 PID(Process ID)가 필요합니다.

  • pts/0 터미널 세션과 연결된 PID를 찾습니다.
ps aux | grep pts/0
$ ps aux | grep tty1
root         680  0.0  0.2   7812  4756 tty1     Ss   09:09   0:00 /bin/login -p --
test        1357  0.0  0.2   6204  5268 tty1     S    09:10   0:00 -bash
root        1374  0.0  0.2   9084  5608 tty1     S+   09:10   0:00 sudo su -
root        2929  0.0  0.1   6476  2424 pts/5    S+   09:34   0:00 grep --color=auto tty1
  • kill 명령어 사용하기
kill PID

여기서 PID는 종료하고자 하는 터미널 세션의 프로세스 ID입니다. 위에서 who 또는 w 명령어로 확인한 세션 정보에서 PID를 찾아서 대체해주세요.

 

예를 들어, pts/0 세션을 종료하고자 할 때

kill -9 1357

참고: 터미널 세션을 종료하면 해당 사용자의 연결이 끊기게 되므로 주의하여 사용하시기 바랍니다. 필요한 경우에만 세션을 종료하는 것이 좋습니다.

 

728x90