sudo: unable to resolve host 오류가 계속 발생할 때 확인할 설정

Lightsail 인스턴스를 교체한 뒤 OpenLiteSpeed와 CyberPanel을 다시 설정하는 과정에서 이상한 경고가 나타났습니다. SSH 접속은 정상적으로 되었지만 sudo 명령어를 실행할 때마다 sudo: unable to resolve host 오류가 함께 출력됐습니다. 명령 자체는 실행됐지만 서버 설정을 수정할 때마다 같은 메시지가 반복되어 원인을 확인하게 되었습니다.

처음에는 OpenLiteSpeed 설정이나 CyberPanel 문제로 생각했지만 서버 로그에는 특별한 오류가 없었습니다. 원인을 추적해 보니 Ubuntu가 자신의 호스트 이름을 IP 주소와 연결하지 못하는 상태였습니다.

sudo: unable to resolve host 오류가 발생하는 이유

Ubuntu는 sudo 명령을 실행할 때 현재 서버의 호스트 이름을 확인합니다. 이때 hostname 정보와 /etc/hosts 파일의 매핑 정보가 일치하지 않으면 sudo: unable to resolve host 오류가 발생합니다.

특히 Lightsail 인스턴스를 새로 만들거나 복원한 뒤, 호스트 이름이 변경되었는데 hosts 파일이 그대로 남아 있는 경우에 자주 나타납니다. OpenLiteSpeed나 LiteSpeed Cache 문제와는 관계가 없으며 운영체제 수준의 이름 해석 오류에 가깝습니다.

먼저 hostname 값을 확인

문제를 해결하기 전에 현재 서버가 어떤 이름을 사용하고 있는지 확인했습니다.

hostname

명령을 실행하면 Ubuntu에 등록된 호스트 이름이 표시됩니다. 이 이름이 이후 /etc/hosts 파일 안에도 동일하게 등록되어 있어야 합니다.

sudo: unable to resolve host 오류 해결을 위한 Lightsail IP 주소 확인 화면
Ubuntu 서버의 현재 호스트 이름 확인

hostname 값과 hosts 파일 내용이 다르면 sudo: unable to resolve host 오류가 계속 발생할 수 있습니다.

/etc/hosts 파일에서 매핑 상태 확인

hostname 값을 확인한 뒤에는 hosts 파일을 열어 현재 설정 상태를 점검했습니다.

sudo nano /etc/hosts

파일을 열어보면 localhost 정보와 함께 서버 IP 및 호스트 이름이 등록되어 있습니다.

Ubuntu /etc/hosts 파일에서 IP 주소와 호스트 이름을 연결한 설정 화면
Ubuntu hosts 파일의 IP 주소와 호스트 이름 매핑

이 단계에서 hostname 명령 결과와 hosts 파일의 이름이 서로 일치하는지 확인하는 것이 중요합니다.

Lightsail 인스턴스 정보와 비교

Lightsail에서는 프라이빗 IP와 고정 공인 IP를 함께 사용하게 됩니다. 인스턴스 상세 화면에서 두 주소를 확인한 뒤 hosts 파일 내용과 비교했습니다.

AWS Lightsail 인스턴스에서 고정 IP 주소와 프라이빗 IPv4 주소를 확인하는 화면
Lightsail 인스턴스의 공인 IP와 프라이빗 IP 확인

제가 사용한 서버에서는 hostname이 프라이빗 IP 기반 이름으로 생성되어 있었기 때문에 해당 정보를 hosts 파일에 맞춰 등록했습니다.

예시는 다음과 같은 형태입니다.

127.0.0.1 localhost
172.26.xx.xx ip-172-26-xx-xx
15.165.xx.xx ip-15-165-xx-xx

중요한 부분은 hostname 결과와 hosts 파일의 이름이 정확히 일치하는지 여부입니다.

수정 후 바로 확인한 결과

설정을 저장한 뒤 다시 sudo 명령을 실행했습니다.

sudo ls

이전에는 명령을 입력할 때마다 sudo: unable to resolve host 오류가 표시됐지만 수정 이후에는 경고가 더 이상 나타나지 않았습니다. OpenLiteSpeed 재시작, CyberPanel 관리 작업, 패키지 업데이트 과정에서도 동일한 문제가 발생하지 않았습니다.

며칠 동안 서버를 운영하면서 확인한 결과 hostname 관련 경고는 완전히 사라졌고, 관리자 입장에서도 실제 오류와 단순 경고를 구분하기 쉬워졌습니다.

오류가 계속 남아 있다면 확인할 부분

hosts 파일을 수정했는데도 sudo: unable to resolve host 오류가 남아 있다면 아래 내용을 함께 확인하는 것이 좋습니다.

  • hostname 명령 결과와 hosts 파일 이름 일치 여부
  • IP 주소 오타 여부
  • 저장되지 않은 설정 여부
  • /etc/hosts 파일 권한 문제
  • 인스턴스 변경 후 남아 있는 이전 설정

대부분은 hostname과 hosts 매핑만 수정해도 해결됩니다.

FAQ

sudo: unable to resolve host 오류가 있어도 명령은 실행되나요?

대부분의 경우 명령은 정상 실행됩니다. 다만 서버 이름을 찾지 못하는 상태이므로 수정하는 편이 좋습니다.

OpenLiteSpeed 문제인가요?

아닙니다. Ubuntu 운영체제의 hostname과 hosts 파일 매핑 문제에서 발생하는 경우가 많습니다.

Lightsail 인스턴스를 교체하면 다시 나타날 수 있나요?

가능합니다. 인스턴스 생성 과정에서 hostname과 hosts 정보가 맞지 않으면 동일한 오류가 발생할 수 있습니다.

관련 글 추천

마무리하자면 sudo: unable to resolve host 오류는 심각한 장애보다는 서버 이름 해석 과정에서 발생하는 설정 문제에 가깝습니다. 다만 경고가 계속 출력되면 실제 오류를 놓칠 수 있기 때문에 인스턴스를 새로 만들거나 이전한 뒤에는 hostname과 /etc/hosts 매핑 상태를 한 번 확인해 두는 것이 좋았습니다.

댓글 달기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

위로 스크롤