로그인 세션에 대한 정보를 얻기
로그인 사용자를 확인하는 방법
리눅스에서 현재 로그인한 사용자가 누구인지,
어떤 터미널을 통해 접속했는지는 기본적으로 확인해야 할 정보입니다.
문제 상황을 추적하거나 접근 권한을 확인할 때 자주 사용됩니다.
- UID : user id
- GID : group id
- terminal : tty, pts 등 접속 터미널 정보
커맨드로 확인하는 방법
가장 기본적으로 사용하는 명령어는 id 입니다.
현재 사용자 기준으로 UID, GID, 소속 그룹 정보를 한 번에 출력합니다.
bashid
필요한 정보만 확인하고 싶을 경우에는 다음과 같이 나누어 사용할 수 있습니다.
bashid -un # 사용자 이름
whoami # 현재 사용자 이름
id -Gn # 소속 그룹 목록
tty # 현재 터미널
노트
공식 문서는 대부분 여기에서 확인할 수 있습니다.
https://docs.redhat.com/ko
문제가 생겼을 때 가장 먼저 참고할 만한 자료입니다.
명령어 문서에서 도움말 확인하기
대부분의 리눅스 명령어는 자체적인 도움말을 포함하고 있습니다.
짧고 빠르게 옵션이나 사용법을 확인할 때 유용합니다.
bashcommand --help
출력 내용은 간단하지만,
자주 사용하는 옵션을 확인하기에는 충분한 정보가 제공됩니다.
man 과 info 명령어로 메뉴얼을 확인하기
보다 자세한 설명이 필요할 경우에는 man 명령어를 사용합니다.
각 명령어에 대한 공식 매뉴얼을 텍스트 환경에서 확인할 수 있습니다.
bashman [section] name
매뉴얼 화면에서 사용할 수 있는 기본 조작은 다음과 같습니다.
Enter: 한 줄씩 이동Space: 한 페이지씩 이동b: 이전 페이지로 이동/: 검색 모드 진입 (n으로 다음 결과 이동)
매뉴얼은 섹션별로 구성되어 있으며,
명령어, 설정 파일, 시스템 호출 등 용도에 따라 구분되어 있습니다.
키워드 기반으로 매뉴얼을 검색하고 싶을 경우에는 다음 명령어를 사용합니다.
bashman -k 키워드
이는 내부적으로 매뉴얼 인덱스를 검색하는 방식이며,
환경에 따라 인덱스가 최신 상태가 아닐 수도 있습니다.
이럴 경우에는 mandb 명령어를 사용하여
수동으로 매뉴얼 인덱스 데이터베이스를 생성할 수 있습니다.
bashmandb
man 페이지의 기호를 예제로 이해하기
man 페이지에서 사용하는 기호들은
처음 보면 의미를 파악하기 어렵습니다.
아래에서는 실제 메뉴얼에 등장하는 예시를 기준으로
각 기호가 어떤 의미를 가지는지 정리합니다.
대괄호 [] : 생략 가능한 옵션 또는 인수
대괄호로 묶인 항목은 반드시 입력할 필요가 없는 선택 사항입니다.
plainls [-a] [-l] [file ...]
위 예시는 다음과 같이 해석할 수 있습니다.
-a,-l옵션은 필요할 때만 사용합니다.file인수는 생략할 수 있습니다.- 인수를 생략하면 현재 디렉토리를 기준으로 동작합니다.
꺾쇠 괄호 <> : 반드시 필요한 값
꺾쇠 괄호로 표시된 항목은 반드시 값을 입력해야 합니다.
실제 메뉴얼에서는 문자열, 숫자, 경로 등이 들어갑니다.
plainuseradd -u <UID> <username>
위 예시는 다음을 의미합니다.
<UID>에는 숫자 값이 반드시 들어가야 합니다.<username>은 생성할 사용자 이름입니다.- 두 값 모두 생략할 수 없습니다.
세로 막대 | : 여러 항목 중 하나 선택
세로 막대는 여러 선택지 중 하나를 선택해야 함을 의미합니다.
동시에 사용할 수는 없습니다.
plainshutdown [-h | -r | -c] [time]
위 예시는 다음과 같이 해석됩니다.
-h,-r,-c중 하나만 사용할 수 있습니다.- 시스템 종료, 재부팅, 예약 취소 중 하나를 선택합니다.
말줄임표 ... : 반복 가능
말줄임표는 동일한 형태의 인수를 여러 개 사용할 수 있음을 의미합니다.
plainchmod [OPTION]... MODE[,MODE]... FILE...
위 예시는 다음을 의미합니다.
OPTION은 여러 개 지정할 수 있습니다.FILE인수는 하나 이상 지정할 수 있습니다.- 여러 파일에 동일한 권한 설정을 적용할 수 있습니다.
기호를 읽는 순서
처음 man 페이지를 볼 때는 다음 순서로 읽는 것이 좋습니다.
- 대괄호(
[])로 선택 사항을 구분합니다. - 꺾쇠 괄호(
<>)로 반드시 필요한 값을 확인합니다. - 세로 막대(
|)로 동시에 사용할 수 없는 옵션을 확인합니다. - 말줄임표(
...)로 반복 가능한 인수를 파악합니다.
기호의 의미를 알고 나면,
긴 메뉴얼에서도 필요한 사용법만 빠르게 골라볼 수 있습니다.
man 외에도 info 명령어를 통해 문서를 확인할 수 있습니다.
일부 GNU 계열 명령어는 info 문서에 더 자세한 설명이 포함되어 있습니다.
bashinfo 명령어
현재 로그인한 사용자나 시스템 접속 이력을 확인하기 위한 명령어도 자주 사용됩니다.
bashwho # 현재 로그인한 사용자
last # 로그인 이력
여러 가지 시스템 정보 확인 방법
리눅스 시스템의 기본 정보를 확인할 수 있는 대표적인 명령어는 다음과 같습니다.
bashcat /etc/os-release # 운영체제 버전 정보
hostnamectl # 시스템, 커널, 하드웨어 정보 개요
free -h # 메모리 사용량 (-h: 사람이 읽기 쉬운 단위)
lscpu # CPU 정보
ip addr # 네트워크 인터페이스 및 IP 정보
과거에 사용되던 ifconfig 명령어는 현재 deprecated 상태이며,
대신 ip 명령어 사용
마치면서
리눅스는 대부분의 명령어에 대해
스스로 도움말과 문서를 제공하도록 설계되어 있습니다.
다음 포스트에서는
터미널 환경에서 자주 사용하는 에디터에 대해 정리해보겠습니다.