Linux / 명령어 / hostnamectl - 호스트 이름과 시스템 정보 확인·변경

hostnamectl은 systemd 기반 시스템의 호스트 이름과 운영체제·커널·아키텍처 정보를 보여 줍니다. set-hostname으로 호스트 이름을 바꿀 수도 있습니다.

hostnamectl 명령어란?

정적 호스트 이름은 관리자가 설정한 영구 이름이고, 일시적 이름은 실행 중인 시스템에 적용되는 이름입니다. 기본 상태 출력에서 둘을 구분해 보세요. 변경은 다른 시스템의 DNS 레코드나 /etc/hosts 항목을 자동으로 모두 수정하지 않습니다.

기본 문법

hostnamectl [명령] [인수]

설치된 구현과 옵션은 배포판에 따라 다를 수 있습니다. man hostnamectl으로 현재 시스템의 설명을 확인하세요.

사용 예제

현재 이름과 시스템 정보

이름, 배포판, 커널 등 현재 보이는 항목을 먼저 확인합니다.

hostnamectl status

정적 이름만 확인

스크립트나 점검에 필요한 영구 호스트 이름을 간단히 출력합니다.

hostnamectl --static

호스트 이름 변경

관리 대상이 맞는지 확인한 뒤 이름을 지정합니다. 변경 작업이므로 권한이 필요합니다.

sudo hostnamectl set-hostname web01.example.test

현재 호스트네임과 변경 범위 확인하기

hostnamectl은 systemd 환경에서 정적 호스트네임과 운영체제·커널 등의 정보를 보여줍니다. 이름만 확인하려면 다음처럼 조회합니다.

hostnamectl --static

예시 출력:

web01.example.test

sudo hostnamectl set-hostname 새이름은 성공해도 보통 출력을 내지 않습니다. 다시 hostnamectl --static을 실행해 확인하세요. 호스트네임 변경이 DNS 레코드나 /etc/hosts를 자동으로 맞춰 주는 것은 아니므로, 서비스가 이름 해석에 의존한다면 해당 설정도 따로 점검해야 합니다.

주요 옵션과 형식

옵션·형식 설명
status 현재 호스트 이름과 시스템 정보를 표시합니다.
--static 정적 호스트 이름을 대상으로 합니다.
--transient 일시적 호스트 이름을 대상으로 합니다.
set-hostname 이름 호스트 이름을 설정합니다.
--pretty 사람이 읽기 쉬운 표시 이름을 대상으로 합니다.

사용할 때 주의할 점

실제 서버의 이름을 바꾸기 전 DNS, 인증서, 모니터링, 애플리케이션 설정과 /etc/hosts의 의존 관계를 점검하세요. 변경 뒤 hostnamectl status와 필요한 이름 조회를 확인하고, 되돌릴 때는 이전 이름으로 다시 set-hostname을 실행합니다. systemd가 없는 환경에서는 사용할 수 없습니다.

자주 묻는 질문

hostnamectl로 이름을 바꾸면 DNS도 바뀌나요?

아니요. 로컬 시스템의 호스트 이름 변경과 DNS 레코드 변경은 별도 작업입니다.

공식 문서

옵션의 정확한 동작과 구현별 차이는 hostnamectl 관련 공식 문서에서 확인할 수 있습니다.

같은 카테고리의 다른 글
Linux / 명령어 / awk - 필드별 텍스트 분석과 계산

Linux / 명령어 / awk - 필드별 텍스트 분석과 계산

Linux awk 명령어의 기본 문법과 실제 사용 예제를 설명합니다. 주요 옵션과 결과를 해석할 때 주의할 점을 확인할 수 있습니다.

Linux / 명령어 / dmesg - 커널 메시지와 부팅 로그 확인

Linux / 명령어 / dmesg - 커널 메시지와 부팅 로그 확인

Linux dmesg 명령어의 기능과 기본 문법을 설명합니다. 실제 사용 예제, 주요 옵션과 작업 전 확인할 점을 알아봅니다.

Linux / 명령어 / resolvectl - systemd DNS 설정과 이름 조회 상태 확인

Linux / 명령어 / resolvectl - systemd DNS 설정과 이름 조회 상태 확인

Linux resolvectl 명령어의 기능과 기본 문법을 설명합니다. 실제 사용 예제, 주요 옵션과 작업 전 확인할 점을 알아봅니다.

Linux / 명령어 / reboot - 시스템 안전하게 재시작

Linux / 명령어 / reboot - 시스템 안전하게 재시작

Linux reboot 명령어의 기능과 기본 문법을 설명합니다. 실제 사용 예제, 주요 옵션과 작업 전 확인할 점을 알아봅니다.

Linux / 명령어 / command - 명령어 검색과 별칭 우회 실행

Linux / 명령어 / command - 명령어 검색과 별칭 우회 실행

셸 command 명령어로 함수 검색을 건너뛰어 원래 명령을 실행하고, command -v로 명령 존재 여부를 확인하는 방법을 설명합니다. -p·-V 옵션과 builtin·exec·env의 차이도 정리합니다.

Linux / 명령어 / time - 명령 실행 시간 측정

Linux / 명령어 / time - 명령 실행 시간 측정

Linux time 명령어로 명령과 파이프라인의 실행 시간 및 자원 사용량을 측정하는 방법을 설명합니다. Bash 예약어와 GNU /usr/bin/time의 차이, 출력 저장과 정확한 비교 방법을 정리합니다.

Linux / 명령어 / rm - 파일과 디렉터리 삭제

Linux / 명령어 / rm - 파일과 디렉터리 삭제

Linux rm 명령어로 파일과 디렉터리를 삭제하는 방법을 설명합니다. 재귀 삭제, 대화형 확인, 루트 보호 옵션과 복구가 어려운 삭제를 안전하게 다루는 원칙을 정리합니다.

Linux / 명령어 / uname - 커널과 시스템 아키텍처 확인

Linux / 명령어 / uname - 커널과 시스템 아키텍처 확인

Linux uname 명령어의 기능과 기본 문법을 설명합니다. 실제 사용 예제, 주요 옵션과 작업 전 확인할 점을 알아봅니다.

Linux / 명령어 / pkill - 이름으로 프로세스에 시그널 보내기

Linux / 명령어 / pkill - 이름으로 프로세스에 시그널 보내기

Linux pkill 명령어의 기본 문법과 실제 사용 예제를 설명합니다. 주요 옵션과 결과를 해석할 때 주의할 점을 확인할 수 있습니다.

Linux / 명령어 / csplit - 행 번호·패턴에서 파일 분할

Linux / 명령어 / csplit - 행 번호·패턴에서 파일 분할

Linux csplit 명령어의 기본 문법과 실제 사용 예제를 설명합니다. 주요 옵션과 결과를 해석할 때 주의할 점을 확인할 수 있습니다.