728x90
리눅스에서 sudo 명령을 실행할 때마다 다음 경고가 뜨는 경우가 있습니다. 명령은 실행되지만 매번 지연되고 거슬리죠.
sudo: unable to resolve host [호스트명]: Name or service not known
원인
sudo는 실행 시 현재 호스트명(hostname)을 IP로 변환(resolve)하려 시도합니다. 그런데 /etc/hostname에 적힌 이름이 /etc/hosts 파일에 매핑되어 있지 않으면 변환에 실패해 이 경고가 나옵니다. 호스트명을 바꾼 뒤 hosts 파일을 갱신하지 않았을 때 흔히 발생합니다.
해결 — hosts 파일에 호스트명 등록
두 파일의 호스트명을 일치시킵니다. /etc/hostname의 이름을 확인하고:
cat /etc/hostname
# 예: myserver
/etc/hosts에 그 이름을 127.0.1.1로 매핑하는 줄을 추가합니다.
# /etc/hosts
127.0.0.1 localhost
127.0.1.1 myserver # ← 호스트명 추가
저장하면 즉시 반영되어 경고가 사라집니다(재부팅 불필요).
참고
- 127.0.1.1을 쓰는 이유 — Debian/Ubuntu 관례로, 고정 IP가 없는 호스트의 이름을 루프백에 매핑하는 표준 방식입니다.
- 호스트명을 바꿀 때는
sudo hostnamectl set-hostname 새이름을 쓰고, hosts 파일도 함께 갱신하면 이 문제를 예방할 수 있습니다. - 클라우드 인스턴스(EC2 등)에서 호스트명을 변경한 뒤 자주 만나는 경고입니다.
728x90
'푸닥거리' 카테고리의 다른 글
| google cloud platform 에서 메일 보내기 (0) | 2022.03.30 |
|---|---|
| 윈도우탐색기 최근에 사용한 파일 목록 안지워 질 때 혹은 일괄 삭제 방법 (0) | 2022.03.29 |
| 2022 KISA 사이버보안인재센터 연간 교육계획 (0) | 2022.03.28 |
| 2022 한국정보기술연구원 교육일정 (0) | 2022.03.28 |
| 소프트웨어_보안약점_진단가이드(2021) (0) | 2022.03.25 |
댓글