Linux에서 현재 사용자 계정을 확인하는 방법

리눅스의 매력 중 하나는 사용자에게 다양한 선택권을 제공한다는 점입니다. 심지어 현재 사용자를 확인하는 것과 같은 간단한 작업에도 여러 가지 방법이 존재합니다. 이 가이드에서는 가장 빠르고 효율적인 방법을 소개합니다.

왜 현재 사용자의 ID를 알아야 할까요? 개인 컴퓨터 사용자라면 자신이 유일한 사용자일 가능성이 높습니다. 하지만 가족 구성원이 함께 사용하는 컴퓨터라면 여러 사용자 계정이 있을 수 있습니다. 서버에 원격으로 접속했을 때, 현재 로그인한 사용자 이름을 빠르게 알아야 할 수도 있습니다. 또는 아무도 사용하지 않는 로그인 세션을 발견했을 때, 명령줄에서 현재 사용자를 어떻게 식별할 수 있을까요?

가장 간단한 방법부터 살펴보겠습니다. 바로 명령 프롬프트를 확인하는 것입니다. 대부분의 리눅스 배포판에서는 프롬프트에 사용자 이름이 표시됩니다. 이보다 더 쉬울 수는 없겠죠. 별도의 명령어를 입력할 필요조차 없습니다.

만약 사용자가 프롬프트를 변경했다면, 다른 방법을 시도해야 합니다. who 명령어는 필요한 정보를 제공합니다.

who

이 명령어는 현재 사용자 이름, 로그인한 터미널, 로그인 날짜와 시간을 보여줍니다. 원격 세션의 경우 로그인 위치까지 알려줍니다.

반면, whoami 명령어는 아주 간결한 답변을 제공합니다.

whoami

$USER 환경 변수를 출력하는 것으로도 같은 결과를 얻을 수 있습니다.

echo $USER

더 많은 정보를 원한다면, 한 글자로 된 명령어 w를 사용해 보세요.

w

w 명령어는 사용자 이름뿐만 아니라 추가적인 정보도 제공합니다. 여러 사용자가 로그인한 경우 모든 사용자를 나열합니다. 특정 사용자가 어떤 터미널에 로그인했는지 확인해야 합니다. 리눅스 컴퓨터 자체에 직접 로그인한 경우 `pts/o` 또는 `:0`으로 표시됩니다.

w 명령어는 부팅 시간, 가동 시간, 지난 5분, 10분, 15분 동안의 평균 로드와 함께 현재 사용자에 대한 다음과 같은 세부 정보를 제공합니다:

  • 사용자: 사용자 이름입니다.
  • TTY: 로그인한 터미널 유형입니다. 일반적으로 `pts` (가상 터미널)입니다. `:0`은 이 컴퓨터에 연결된 물리적 키보드와 화면을 의미합니다.
  • FROM: 원격 연결일 경우 원격 호스트의 이름입니다.
  • [email protected]: 사용자가 로그인한 시간입니다.
  • IDLE: 유휴 시간입니다. 스크린샷의 경우 X-windows 디스플레이 관리자가 해당 정보를 제공하지 않기 때문에 `?xdm?`으로 표시됩니다.
  • JCPU: 조인트 CPU 시간입니다. 이 터미널에 연결된 모든 프로세스가 사용하는 CPU 시간의 합계, 즉 이 로그인 세션에서 해당 사용자의 총 CPU 시간입니다.
  • PCPU: 프로세스 CPU 시간입니다. 현재 실행 중인 프로세스에서 사용하는 CPU 시간입니다. 현재 프로세스는 WHAT 열에 표시됩니다.
  • WHAT: 현재 사용자의 실행 중인 프로세스 명령줄입니다.

이제 사용자가 누구인지 확인했으므로, 더 많은 정보를 얻을 수 있습니다. id 명령어는 시작하기 좋은 지점입니다. `id` 명령어 뒤에 사용자 이름을 입력하고 엔터 키를 누릅니다.

id dave

이 명령어는 사용자의 사용자 ID(uid), 그룹 ID(gid) 및 사용자가 속한 그룹을 제공합니다. groups 명령어를 사용하여 그룹 정보를 더 간결하게 표시할 수 있습니다.

groups dave

finger 명령어는 사용자 정보를 요약해서 보여줍니다. 우분투나 데비안 기반의 배포판을 사용한다면 apt-get을 사용하여 finger 패키지를 설치해야 합니다. 다른 리눅스 배포판에서는 해당 배포판의 패키지 관리 도구를 이용하세요.

sudo apt-get install finger

패키지 설치 후, `finger` 명령어를 사용하여 사용자 정보를 확인할 수 있습니다.

finger 데이브

대부분의 리눅스 시스템에서 일부 필드는 비어 있을 수 있습니다. 사무실, 전체 이름 및 전화 번호와 같은 정보는 기본적으로 채워져 있지 않습니다. “계획 없음” 필드는 사용자가 어떤 작업을 하고 있는지에 대한 메모를 제공하는 데 사용될 수 있습니다. 홈 폴더에서 `.plan` 파일을 편집하여 해당 파일의 내용을 finger 명령어의 출력에 추가할 수 있습니다.

우분투 및 기타 여러 리눅스 배포판에서 사용되는 그놈 데스크탑 환경에서는 화면 오른쪽 상단 모서리에 있는 시스템 메뉴를 클릭하면 로그인한 사용자 이름을 빠르게 확인할 수 있습니다. 드롭다운 메뉴의 맨 아래 항목이 사용자 이름입니다. 다른 데스크탑 환경에서도 비슷한 위치에서 사용자 이름을 쉽게 찾을 수 있을 것입니다.

클릭 한 번으로 사용자 이름을 확인하는 방법도 물론 간단하지만, 때로는 디지털 탐정처럼 명령줄에서 직접 정보를 찾아내는 재미도 있습니다.