강좌
클라우드/리눅스에 관한 강좌입니다.
리눅스 분류

▒ SU의 CentOS7 강좌17 6. CentOS 네트워크 3-호스트네임 설정

작성자 정보

  • 웹관리자 작성
  • 작성일

컨텐츠 정보

본문

▒ SU의 CentOS7 강좌17 6. CentOS 네트워크 3-호스트네임 설정


#################################################
    작성자 : 에스유
    작성일 : 2014.09.17
    대상 OS : CentOS7 x86_64

 본 강좌를 기반으로 서적을 집필합니다. 연재강좌가 마무리되고 몇달 후면 서적이 나오겠죠? CentOS7은 서적도 없지만 강좌도 많이 부족하네요. 리눅스 서버를 10년 넘게 구축하고 관리하고 컨설팅하면서 꼭 필요한 부분과 알아야 할 부분들을 꼼꼼히 체크하면서 강좌를 써보려합니다. 강좌중 오탈자가 있거나 설명이 부족하고 잘못된 경우 service@linux.kr으로 메일한통 부탁드립니다. 강좌가 수정되면 더 많은 분들께 도움이 될것이라 생각하고 강좌를 기반으로 집필될 서적또한 완성도가 높아지지 않을까 생각합니다.
#################################################


6. CentOS 네트워크
6.2. 네트워크 설정
6.2.2. Hostname 설정
리눅스에서 호스트의 이름을 붙이기 위해 호스트네임(Hostname)을 설정한다. 설치과정에서 이미 호스트네임을 설정하였지만, 여기서는 설정된 호스트네임을 확인하고 변경해보도록 하자.
CentOS 7에서는 여러 종류의 호스트네임이 존재한다. 

static(정적인) Hostname : 전통적인 호스트네임이다. CentOS 7은 호스트네임을 /etc/hostname 파일에 보관한다. (CentOS 6 이전에는 /etc/sysconfig/network에 HOSTNAME=호스트네임 형태로 지정 되었다.)
transient(일시적인) Hostname : 커널에서 관리되는 동적인 호스트네임, 기본적으로 static 호스트네임으로 설정되며 DHCP, mDNS에의해 변경되기도 한다. 
pretty(예쁜) Hostname : static, transient 호스트네임의 경우 사용할 수 있는 문자에 제한이 있다. 하지만, pretty 호스트네임은 사용자가 자유롭게 설정할 수 있고, UTF8 언어셋을 사용하기 때문에 한글으로 설정할 수 있다.


[참 고] 호스트 네임
호스트네임은 64자 내에서 자유롭게 작성할 수 있다. 그렇지만 일반적인 호스트네임은 DNS 도메인과 비슷하게 설정한다. 예를 들면 sulinux.net 도메인이 있다면 웹서버의 호스트네임일 경우 web1.sulinux.net, DB서버의 호스트네임일 경우 db1.sulinux.net으로 설정한다. 이 때 오해하지 말아야 할 것은 호스트네임을 web1.sulinux.net으로 설정한다고 해서 외부에서 web1.sulinux.net으로 접근할 수 있는 것은 아니다. 이는 DNS서버에서 설정해 주어야 하는 것이다. 만약 도메인이 없다면 test.superuser 와 같이 “이름.회사명”으로 작성하는 것이 일반적이다.
CentOS 7부터 새롭게 추가된 hostnamectl 명령어로 호스트네임을 설정할 때에는 영문자(대,소문자), 숫자, “-”, “_”, “.”의 조합으로 제한한다. 그리고 “.”이 앞에 올수 없고, “..”와 같이 두 개의 점은 허용하지 않는다. 물론 길이도 최대 64자로 제한한다. 



6.2.2.1. 호스트 네임 설정 (GUI)
프로그램 > 시스템도구 > 설정 > 공유


GUI환경에서는 control-center에서 공유 항목으로 호스트 네임을 설정할 수 있다. 
위 화면은 공유 설정에서 컴퓨터 이름을 설정하는 것이다. 여기서 설정하게 되면 static 호스트네임이 설정된다. 


6.2.2.2. nmtui를 이용한 호스트네임 설정
nmtui를 이용하여 호스트네임을 변경할 수 있다. nmtui는 CentOS 7부터 제공되기 때문에 CentOS 7에서 가능한 것이다.

7~] # nmtui


nmtui를 실행시키면 위 그림과 같이 메뉴가 나타나며 커서를 움직여 Set system hostname을 선택한 다음 <TAB>키를 눌러 <OK>를 선택한 다음 <Enter>키를 눌러 호스트네임 설정 화면으로 들어간다.
위와 같이 호스트네임 설정화면이 나타나면 호스트네임을 입력하오 <TAB>키를 사용하여 <OK>를 선택한 다음 <Enter>키를 눌러 호스트네임 설정을 마무리 한다.
nmtui를 사용하여 static 호스트네임을 설정하거나 확인할 수 있다. 설정을 하게 되면 /etc/hostname 파일에 설정된 호스트네임을 저장한다. 그렇지만 CentOS 7부터는 hostnamectl은 인지하지 못한다. 그래서 변경 후에는 다음과 같이 systemd-hostnamed를 재시작 해 주어야 한다.
 

7~] # systemctl restart systemd-hostnamed


다음으로 호스트네임으로 DNS 질의시 IP로 응답하기 위해서 /etc/hosts 파일에 다음과 같이 설정한다.

127.0.0.1               centos



6.2.2.3. hostnamectl을 사용한 호스트네임 설정
CentOS 7 부터는 호스트네임을 관리하기 위한 프로그램을 제공한다. 이것이 hostnamectl 이다. hostnamectl은 앞에서 소개한 여러 종류의 호스트네임을 확인하거나 설정할 수 있다. 

호스트네임 설정
다음 명령어를 내려 호스트네임을 설정해 보자.

7~] # hostnamectl set-hostname wy.superuser

위와 같이 입력하면 static 호스트네임이 설정된다.

다음으로 호스트네임으로 DNS 질의시 IP로 응답하기 위해서 /etc/hosts 파일에 다음과 같이 설정한다.

127.0.0.1               wy.superuser



호스트네임 확인
다음 명령어를 내려 설정된 호스트네임들을 확인해 보자.

7~] # hostnamectl status
   Static hostname: wy.centos.org
         Icon name: computer
           Chassis: n/a
        Machine ID: cdcc8802d7402960b0e3101e987327ff
           Boot ID: c9f6e79a06ea4df094687cd7a39fd674
    Virtualization: kvm
  Operating System: CentOS Linux 7 (Core)
       CPE OS Name: cpe:/o:centos:centos:7
            Kernel: Linux 3.10.0-123.4.2.el7.x86_64
      Architecture: x86_64

위 결과를 보면, Static 호스트네임이 설정된 것을 확인할 수 있다. Transient, Pretty 호스트네임은 설정하지 않았기 때문에 나타나지 않는 것이다. 호스트 네임 뿐만 아니라 Icon 이름, Chassis 타입, 머신 ID, Boot ID, 가상화 종류, 운영체제, CPE(Common Platform Enumeration) OS 이름, 커널 버전, 아키텍쳐정보를 한꺼번에 확인할 수 있다. 호스트 네임은 /etc/hostname 파일에 저장되고, Chassis 타입과 Pretty 호스트네임은 /etc/machine-info 파일에 머신 ID는 /etc/machine-id 파일에 저장된다. Chassis 타입은 desktop, labtop, server, tablet, handset, vm, container를 설정할 수 있다. 호스트네임 외에 다른 부분 설정은 man 페이지를 참조하여 설정하기를 바란다.

transient, pretty 호스트 네임 설정
위에서 설정한 것은 일반적인 static 호스트네임을 설정하는 것이다. 다음과 같이 transient 및 pretty 호스트네임을 설정하는 방법을 알아보자. transient 및 pretty 호스트네임을 쓸일이 있을지는 필자는 아직 모르겠다. 

transient 호스트 네임 설정

7~] # hostnamectl set-hostname --transient doly.centos.org

transient 호스트네임을 설정하기 위해서는 --transient 옵션만 추가하면 된다.

pretty 호스트 네임 설정

7~] # hostnamectl set-hostname —pretty “도리‘s CentOS7 작업용”

pretty 호스트네임을 설정하기 위해서는 --pretty 옵션만 추가하면 된고, 자유롭게 호스트 네임을 입력해 보았다.

호스트 네임 확인

7~] # hostnamectl 
   Static hostname: book.superuser
   Pretty hostname: 도리's CentOS7 작용업
Transient hostname: doly.centos.org
         Icon name: computer
           Chassis: n/a
        Machine ID: cdcc8802d7402960b0e3101e987327ff
           Boot ID: c9f6e79a06ea4df094687cd7a39fd674
    Virtualization: kvm
  Operating System: CentOS Linux 7 (Core)
       CPE OS Name: cpe:/o:centos:centos:7
            Kernel: Linux 3.10.0-123.4.2.el7.x86_64
      Architecture: x86_64

위 결과를 보면 Pretty 및 Transient 호스트네임이 설정된 것을 확인할 수 있다.


 이상으로 17번째 강좌를 마무리 하겠습니다. CentOS 7부터는 호스트네임 종류가 다양해 지고 변경법, 관리법이 변경되었네요. hostnamectl 명령어가 추가되었습니다. 명절을 보내고 나니 과다한 업무와, 출장으로 이제 몇자 적어 봅니다. 2014년 9월 17일(수) 에스유였습니다.^^ 
 
#################################################
* 본 강좌는 언제든 갱신될 수 있으며, 원글은 www.linux.co.kr 강좌>리눅스>SU의 연재강좌 에서 수정됩니다. 
* 본 강좌의 일부 또는 전체를 인용하실 경우, 반드시 출처를 밝혀 주시기 바랍니다.

* 수정이력 :
 2014.09.17(수): 최초작성

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,037 명
  • 현재 강좌수 :  35,806 개
  • 현재 접속자 :  125 명