- 레드햇계열 HOSTNAME 변경
- 리눅스 호스트명 변경
- 호스트 이름 변경
목차
[숨기기]사전확인[편집]
현재 호스트명을 확인해보자.
[root@localhost ~]# hostname
localhost.localdomain
localhost.localdomain
- 레드햇 계열
[root@localhost ~]# cat /etc/sysconfig/network | grep HOSTNAME
HOSTNAME=localhost.localdomain
HOSTNAME=localhost.localdomain
- Ubuntu
root@localhost:~# cat /etc/hostname
localhost
localhost
방법 1: 명령어로 변경[편집]
즉시 변경[편집]
다음 중 두가지 명령어 중 하나를 실행하면 된다.
hostname 호스트명
echo 호스트명 > /proc/sys/kernel/hostname
- 새로 로그인할 때는 이것이 적용된다.
- 재부팅시에는 초기화될 것이다.[1]
- 실행 예시
[root@localhost ~]# hostname zetawiki
[root@localhost ~]# hostname
zetawiki
[root@localhost ~]# su -
[root@zetawiki ~]#
[root@localhost ~]# hostname
zetawiki
[root@localhost ~]# su -
[root@zetawiki ~]#
재부팅시 변경[편집]
- 레드햇 계열
/etc/sysconfig/network 문서를 참고하십시오.
vi /etc/sysconfig/network
파일 내용 중 HOSTNAME 부분을 수정한다.
HOSTNAME=호스트명
- 우분투
/etc/hostname 문서를 참고하십시오.
vi /etc/hostname
파일 내용 전체가 호스트명이다. 원하는 호스트명으로 수정하자.
방법 2: setup으로 변경[편집]
- 레드햇 계열만 가능
- setup으로 바꾸면 방법 1에서 말하는 영구적용과 즉시적용이 동시에 된다.[2]
setup
- [Network configuration] --- [DNS configuration]
- "DNS configuration" --- Hostname: 원하는호스트명 --- [Ok]
- [Save&Quit]
- [Quit]
방법 3: 한방 스크립트 ★★[편집]
- 재부팅 없이 적용 및 확인을 한번에 할 수 있음
- 레드햇 계열, 우분투 모두 사용가능 ★★
NEW_HOSTNAME=새호스트명
OLD_HOSTNAME=$HOSTNAME
HOSTNAME=$NEW_HOSTNAME
hostname $HOSTNAME
sed -i "s/$OLD_HOSTNAME/$HOSTNAME/" /etc/hostname 2> /dev/null
sed -i "s/HOSTNAME=$OLD_HOSTNAME/HOSTNAME=$HOSTNAME/" /etc/sysconfig/network 2> /dev/null
echo "\$HOSTNAME=$HOSTNAME"
grep -Hn '' /proc/sys/kernel/hostname
grep -Hn '' /etc/hostname 2> /dev/null
grep -Hn '' /etc/sysconfig/network 2> /dev/null
OLD_HOSTNAME=$HOSTNAME
HOSTNAME=$NEW_HOSTNAME
hostname $HOSTNAME
sed -i "s/$OLD_HOSTNAME/$HOSTNAME/" /etc/hostname 2> /dev/null
sed -i "s/HOSTNAME=$OLD_HOSTNAME/HOSTNAME=$HOSTNAME/" /etc/sysconfig/network 2> /dev/null
echo "\$HOSTNAME=$HOSTNAME"
grep -Hn '' /proc/sys/kernel/hostname
grep -Hn '' /etc/hostname 2> /dev/null
grep -Hn '' /etc/sysconfig/network 2> /dev/null
- → 프롬프트에 찍히는 호스트명까지 변경되는 것을 확인하려면 새 콘솔(또는 SSH 세션)을 열어야 한다.
- → /etc/hosts 파일 변경은, 다른 서버의 주소까지 변경될 수 있기 때문에 여기에 포함하지 않았다. 직접 수정해주자.[3]
(권장) 후속작업: /etc/hosts 변경[편집]
/etc/hosts 문서를 참고하십시오.
/etc/hosts는 IP에 대한 호스트명 정보가 있는데, 자기 자신을 가리키는 정보도 들어가 있다. 호스트명을 변경했다면 이쪽도 수정해주는 것이 좋다.[3]
vi /etc/hosts
아래 내용을 참고하여 작성한다.
127.0.0.1 localhost zetawiki
::1 localhost zetawiki
- → 1행은 IPv4, 2행은 IPv6에 대한 것임
- (필요시) 점검항목: sendmail 테스트, 오라클DB 접속 테스트
같이 보기[편집]
- 우분투 호스트명 변경
- hostname
- /etc/sysconfig/network
- /etc/hostname
- /etc/hosts
- ORA-24408
- 호스트명 확인
- setup
- Xen 호스트명 변경
- 윈도우 호스트명 변경
- 로컬호스트
주석[편집]
- 이동 ↑ /etc/sysconfig/network 에 설정된 호스트명이 적용되기 때문. 다음 문단 참조.
- 이동 ↑ GUI(?)에서 수행되기 때문에 자동화 bash 스크립트를 만드는 것이 어렵다. 때문에 필자는 방법 1을 선호한다.
- ↑ 이동: 3.0 3.1 Oracle DB의 경우 적절히 변경해주지 않으면 오류가 발생할 수 있다. ORA-24408 참고
참고 자료[편집]