Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

24장. 네트워크 설치 준비

설치 서버를 사용하는 네트워크 설치를 통해 네트워크 부팅 서버를 사용하여 여러 시스템에 Red Hat Enterprise Linux Pure;Hat EnterpriseRed Hat Enterprise Linux Pure;Linux를 설치할 수 있습니다. 이렇게 하면 구성된 모든 시스템이 이 서버에서 제공하는 이미지를 사용하여 부팅하고 설치 프로그램을 자동으로 시작합니다.
참고
Red Hat Satellite에는 PXE 서버 설정을 자동화하는 기능이 있습니다. 자세한 내용은 Red Hat Satellite 설명서 를 참조하십시오.
네트워크 설치에는 최소 두 개의 시스템이 필요합니다.
  • 서버 - DHCP 서버를 실행하는 시스템, 부팅 파일을 제공하는 TFTP 서버, 설치 이미지를 호스팅하는 HTTP, FTP 또는 NFS 서버. 이론적으로 각 서버는 다른 물리적 시스템에서 실행될 수 있습니다.이 섹션의 절차는 단순화를 위해 단일 시스템을 실행하는 것으로 가정합니다.
  • 클라이언트 - Red Hat Enterprise Linux hat;Hat EnterpriseRed Hat Enterprise Linux {;Hat Enterprise Linux: Linux를 설치하는 시스템입니다. 설치가 시작되면 클라이언트는 DHCP 서버를 쿼리하고 TFTP 서버에서 부팅 파일을 가져오고 HTTP, FTP 또는 NFS 서버에서 설치 이미지를 다운로드합니다.
대부분의 다른 설치 방법과 달리 설치를 시작하기 위해 클라이언트 (즉, 설치 중인 시스템)에 물리적 부트 미디어를 연결할 필요가 없습니다. 이 장에서는 네트워크 설치를 준비하기 위해 수행해야 하는 단계를 설명합니다.
네트워크 설치를 준비하려면 다음 단계를 수행해야 합니다.
  1. 네트워크 서버(NFS,HTTPS,HTTP 또는 FTP)를 구성하여 설치 트리 또는 설치 ISO 이미지를 내보냅니다. 구성을 설명하는 절차는 3.3.3절. “네트워크에 설치 소스” 을 참조하십시오.
  2. 네트워크 부팅에 필요한 tftp 서버에서 파일을 구성하고, DHCP 를 구성하고, PXE 서버에서 tftp 서비스를 시작합니다. 자세한 내용은 24.1절. “네트워크 부팅 서비스 구성” 을 참조하십시오.
    중요
    GRUB2 부트 로더는 tftp 서버 외에도 HTTP 에서 네트워크 부팅을 지원합니다. 그러나 이 프로토콜을 통해 부팅 파일(설치 프로그램의 커널 및 초기 RAM 디스크)을 가져오는 것은 매우 느리고 시간 초과 오류가 발생할 위험이 있습니다. tftp 서버를 사용하여 부팅 파일을 제공하는 것이 좋습니다.
    이 경고는 커널 및 초기 RAM 디스크( vmlinuz 및 initrd) 에만 적용됩니다. HTTP 서버에서 설치 소스를 가져오면 이러한 위험이 발생하지 않습니다.
  3. 클라이언트를 부팅(Red Hat Enterprise Linux 기준 EnterpriseRed Hat Enterprise Linux Kernel;Hat Enterprise)을 설치하려는 시스템)을 부팅하고 설치를 시작합니다.
참고
이 장의 절차에서는 Red Hat Enterprise Linux Kernel;Hat EnterpriseRed Hat Enterprise Linux HAT;Linux 7 시스템에서 네트워크 부팅 서버 설정에 대해 설명합니다. Red Hat Enterprise Linux 기준의 이전 릴리스에서 네트워크 부팅을 구성하는 방법에 대한 자세한 내용은 해당 릴리스에 대한 적절한 설치 가이드를 참조하십시오.

24.1. 네트워크 부팅 서비스 구성

설치에 사용할 패키지 리포지토리가 포함된 네트워크 서버를 설정한 후 다음 단계는 PXE 서버 자체를 구성하는 것입니다. 이 서버에는 Red Hat Enterprise Linux QCOW;Hat EnterpriseRed Hat Enterprise Linux sl;Linux를 부팅하고 설치를 시작하는 데 필요한 파일이 포함되어 있습니다. 또한 DHCP 서버를 구성해야 하며 필요한 모든 서비스를 활성화하고 시작해야 합니다.
참고
네트워크 부팅 구성 절차는 BIOS 또는 UEFI를 사용하는 Red Hat Enterprise Linux Kernel;Hat EnterpriseRed Hat Enterprise Linux 9.0;Linux를 설치하려는 AMD64/Intel 64 시스템의 여부에 따라 다릅니다. 하드웨어 설명서를 참조하여 하드웨어에서 사용되는 시스템을 확인한 다음 이 장의 적절한 절차를 따르십시오.
GRUB2 부트 로더를 사용하여 네트워크 위치에서 IBM Power Systems를 부팅하는 별도의 절차가 제공됩니다. 자세한 내용은 24.1.3절. “GRUB2를 사용하여 IBM Power Systems용 Network Boot 구성” 을 참조하십시오.
헤드리스 시스템(직접 연결된 디스플레이, 키보드 및 마우스가 없는 시스템)과 함께 사용하도록 네트워크 부팅 서버를 구성하는 방법에 대한 자세한 내용은 26장. 헤드리스 시스템 을 참조하십시오.

24.1.1. BIOS 기반 AMD64 및 Intel 64 클라이언트에 대한 TFTP 서버 구성

다음 절차에서는 BIOS 기반 AMD64 및 Intel 64 시스템을 부팅하기 위해 PXE 서버를 준비합니다. UEFI 기반 시스템에 대한 자세한 내용은 24.1.2절. “UEFI 기반 AMD64/Intel 64 및 ARM 클라이언트에 대한 TFTP 서버 구성” 을 참조하십시오.

절차 24.1. BIOS 기반 시스템을 위한 TFTP Boot Server 구성

  1. tftp-server 패키지를 설치합니다. 이렇게 하려면 root 로 다음 명령을 입력합니다.
    # yum install tftp-server
  2. 방화벽에서 tftp 서비스에 대한 들어오는 연결을 허용합니다.
    # firewall-cmd --add-service=tftp
    참고
    위의 명령은 다음 서버를 재부팅할 때까지만 액세스를 활성화합니다. 액세스를 영구적으로 허용하려면 --permanent 옵션을 추가합니다. 방화벽 구성에 대한 자세한 내용은 Red Hat Enterprise Linux 7 보안 가이드 를 참조하십시오.
  3. SYSLINUX 와 함께 패키지된 부팅 이미지를 사용하도록 DHCP 서버를 구성합니다. 설치가 없는 경우 Red Hat Enterprise Linux 7 네트워킹 가이드 를 참조하십시오.
    /etc/dhcp/dhcpd.conf 파일의 샘플 구성은 다음과 같습니다.
    option space pxelinux;
    option pxelinux.magic code 208 = string;
    option pxelinux.configfile code 209 = text;
    option pxelinux.pathprefix code 210 = text;
    option pxelinux.reboottime code 211 = unsigned integer 32;
    option architecture-type code 93 = unsigned integer 16;
    
    subnet 10.0.0.0 netmask 255.255.255.0 {
    	option routers 10.0.0.254;
    	range 10.0.0.2 10.0.0.253;
    
    	class "pxeclients" {
    	  match if substring (option vendor-class-identifier, 0, 9) = "PXEClient";
    	  next-server 10.0.0.1;
    
    	  if option architecture-type = 00:07 {
    	    filename "uefi/shim.efi";
    	    } else {
    	    filename "pxelinux/pxelinux.0";
    	  }
    	}
    }
    
  4. 이제 전체 설치 DVD의 ISO 이미지 파일에 있는 SYSLINUX 패키지에 있는 pxelinux.0 파일이 필요합니다. 액세스하려면 root로 다음 명령을 입력합니다.
    # mount -t iso9660 /path_to_image/name_of_image.iso /mount_point -o loop,ro
    # cp -pr /mount_point/Packages/syslinux-version-architecture.rpm /publicly_available_directory
    # umount /mount_point
    패키지를 추출합니다.
    # rpm2cpio syslinux-version-architecture.rpm | cpio -dimv
  5. tftpboot/ 내에 pxelinux/ 디렉터리를 생성하고 pxelinux.0 파일을 여기에 복사합니다.
    # mkdir /var/lib/tftpboot/pxelinux
    # cp publicly_available_directory/usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/pxelinux
  6. pxelinux/ 디렉터리에 pxelinux.cfg/ 디렉터리를 만듭니다.
    # mkdir /var/lib/tftpboot/pxelinux/pxelinux.cfg
    pxelinux.cfg/ 디렉터리에 default 라는 구성 파일을 추가합니다.
    /var/lib/tftpboot/pxelinux/pxelinux.cfg/default 의 샘플 구성 파일은 다음과 같습니다.
    default vesamenu.c32
    prompt 1
    timeout 600
    
    display boot.msg
    
    label linux
      menu label ^Install system
      menu default
      kernel images/RHEL-7.1/vmlinuz
      append initrd=images/RHEL-7.1/initrd.img ip=dhcp inst.repo=http://10.32.5.1/mnt/archive/RHEL-7/7.x/Server/x86_64/os/
    label vesa
      menu label Install system with ^basic video driver
      kernel images/RHEL-7.1/vmlinuz
      append initrd=images/RHEL-7.1/initrd.img ip=dhcp inst.xdriver=vesa nomodeset inst.repo=http://10.32.5.1/mnt/archive/RHEL-7/7.x/Server/x86_64/os/
    label rescue
      menu label ^Rescue installed system
      kernel images/RHEL-7.1/vmlinuz
      append initrd=images/RHEL-7.1/initrd.img rescue
    label local
      menu label Boot from ^local drive
      localboot 0xffff
    중요
    위 예에 표시된 inst.repo= Anaconda 옵션은 설치 프로그램의 이미지와 설치 소스를 지정하는 데 항상 사용해야 합니다. 이 옵션이 없으면 설치 프로그램을 부팅할 수 없습니다. Anaconda 의 부팅 옵션에 대한 자세한 내용은 23.1절. “부팅 메뉴에서 설치 시스템 구성” 을 참조하십시오.
  7. /var/lib/tftpboot/ 디렉터리에 부팅 이미지 파일을 저장할 하위 디렉터리를 생성하고 부팅 이미지 파일을 이 디렉터리에 복사합니다. 이 예에서는 /var/lib/tftpboot/pxelinux/images/RHEL-release_number/: 디렉토리를 사용합니다.
    # mkdir -p /var/lib/tftpboot/pxelinux/images/RHEL-7.1/
    # cp /path_to_x86_64_images/pxeboot/{vmlinuz,initrd.img} /var/lib/tftpboot/pxelinux/images/RHEL-release_number/
  8. 마지막으로 서비스를 시작하고 활성화합니다.
    • dhcpd 서비스:
      # systemctl start dhcpd
      # systemctl enable dhcpd
    • tftpd 서비스를 관리하는 xinetd 서비스:
      # systemctl start xinetd
      # systemctl enable xinetd
이 절차를 완료하면 PXE 부팅 서버가 PXE 클라이언트를 제공할 준비가 되었습니다. 이제 Red Hat Enterprise Linux QCOW;Hat EnterpriseRed Hat Enterprise Linux Kernel;Linux를 설치할 시스템을 시작할 수 있으며 부팅 소스를 지정하라는 메시지가 표시되면 PXE 부팅을 선택하고 네트워크 설치를 시작할 수 있습니다. 자세한 내용은 7.1.2절. “PXE를 사용하여 네트워크에서 부팅” 에서 참조하십시오.

24.1.2. UEFI 기반 AMD64/Intel 64 및 ARM 클라이언트에 대한 TFTP 서버 구성

다음 절차에서는 UEFI 기반 AMD64/Intel 64 및 ARM 시스템을 부팅하기 위해 PXE 서버를 준비합니다. BIOS 기반 시스템에 대한 자세한 내용은 24.1.1절. “BIOS 기반 AMD64 및 Intel 64 클라이언트에 대한 TFTP 서버 구성” 을 참조하십시오.

절차 24.2. UEFI 기반 시스템의 TFTP 부팅 구성

참고
Red Hat Enterprise Linux 7 UEFI PXE 부팅은 MAC 기반 grub 메뉴 파일의 소문자 파일 형식을 지원합니다. 예를 들어 grub2의 MAC 주소 파일 형식은 grub.cfg-01-aa-bb-cc-dd-ee-ff입니다.
  1. tftp-server 패키지를 설치합니다. 이렇게 하려면 root 로 다음 명령을 입력합니다.
    # yum install tftp-server
  2. 방화벽에서 tftp 서비스에 대한 들어오는 연결을 허용합니다.
    # firewall-cmd --add-service=tftp
    참고
    위의 명령은 다음 서버를 재부팅할 때까지만 액세스를 활성화합니다. 액세스를 영구적으로 허용하려면 --permanent 옵션을 추가합니다. 방화벽 구성에 대한 자세한 내용은 Red Hat Enterprise Linux 7 보안 가이드 를 참조하십시오.
  3. shim 과 함께 패키지된 EFI 부팅 이미지를 사용하도록 DHCP 서버를 구성합니다. 설치가 없는 경우 Red Hat Enterprise Linux 7 네트워킹 가이드 를 참조하십시오.
    /etc/dhcp/dhcpd.conf 파일의 샘플 구성은 다음과 같습니다.
    option space pxelinux;
    option pxelinux.magic code 208 = string;
    option pxelinux.configfile code 209 = text;
    option pxelinux.pathprefix code 210 = text;
    option pxelinux.reboottime code 211 = unsigned integer 32;
    option architecture-type code 93 = unsigned integer 16;
    
    subnet 10.0.0.0 netmask 255.255.255.0 {
    	option routers 10.0.0.254;
    	range 10.0.0.2 10.0.0.253;
    
    	class "pxeclients" {
    	  match if substring (option vendor-class-identifier, 0, 9) = "PXEClient";
    	  next-server 10.0.0.1;
    
    	  if option architecture-type = 00:07 {
    	    filename "shim.efi";
    	  } else {
    	    filename "pxelinux/pxelinux.0";
    		}
      }
    }
    
  4. 이제 ISO 이미지 파일의 grub2-efi 패키지에 있는 shim 패키지 및 grubx64.efi 파일에서 shim.efi 파일이 필요합니다. 액세스하려면 root로 다음 명령을 입력합니다.
    # mount -t iso9660 /path_to_image/name_of_image.iso /mount_point -o loop,ro
    # cp -pr /mount_point/Packages/shim-version-architecture.rpm /publicly_available_directory
    # cp -pr /mount_point/Packages/grub2-efi-version-architecture.rpm /publicly_available_directory
    # umount /mount_point
    패키지를 추출합니다.
    # rpm2cpio shim-version-architecture.rpm | cpio -dimv
    # rpm2cpio grub2-efi-version-architecture.rpm | cpio -dimv
  5. 부팅 디렉토리에서 EFI 부팅 이미지를 복사합니다.
    # cp publicly_available_directory/boot/efi/EFI/redhat/shim.efi /var/lib/tftpboot/
    # cp publicly_available_directory/boot/efi/EFI/redhat/grubx64.efi /var/lib/tftpboot/
  6. grub.cfg 라는 구성 파일을 tftpboot/ 디렉터리에 추가합니다. /var/lib/tftpboot/grub.cfg 의 샘플 구성 파일은 다음과 같습니다.
    set timeout=60
    menuentry 'RHEL 7' {
      linuxefi images/RHEL-7.1/vmlinuz ip=dhcp inst.repo=http://10.32.5.1/mnt/archive/RHEL-7/7.1/Server/x86_64/os/
      initrdefi images/RHEL-7.1/initrd.img
    }
    
    중요
    위 예에 표시된 inst.repo= Anaconda 옵션은 설치 프로그램의 이미지와 설치 소스를 지정하는 데 항상 사용해야 합니다. 이 옵션이 없으면 설치 프로그램을 부팅할 수 없습니다. Anaconda 의 부팅 옵션에 대한 자세한 내용은 23.1절. “부팅 메뉴에서 설치 시스템 구성” 을 참조하십시오.
  7. /var/lib/tftpboot/ 디렉터리에 부팅 이미지 파일을 저장할 하위 디렉터리를 생성하고 부팅 이미지 파일을 이 디렉터리에 복사합니다. 이 예에서는 /var/lib/tftpboot/images/RHEL-7.1/:를 사용합니다.
    # mkdir -p /var/lib/tftpboot/images/RHEL-7.1/# cp /path_to_x86_64_images/pxeboot/{vmlinuz,initrd.img} /var/lib/tftpboot/images/RHEL-7.1/
  8. 마지막으로 서비스를 시작하고 활성화합니다.
    • dhcpd 서비스:
      # systemctl start dhcpd
      # systemctl enable dhcpd
    • tftpd 서비스를 관리하는 xinetd 서비스:
      # systemctl start xinetd
      # systemctl enable xinetd
이 절차를 완료하면 PXE 부팅 서버가 PXE 클라이언트를 제공할 준비가 되었습니다. 이제 Red Hat Enterprise Linux QCOW;Hat EnterpriseRed Hat Enterprise Linux Kernel;Linux를 설치할 시스템을 시작할 수 있으며 부팅 소스를 지정하라는 메시지가 표시되면 PXE 부팅을 선택하고 네트워크 설치를 시작할 수 있습니다. 자세한 내용은 7.1.2절. “PXE를 사용하여 네트워크에서 부팅” 에서 참조하십시오.

24.1.3. GRUB2를 사용하여 IBM Power Systems용 Network Boot 구성

절차 24.3. GRUB2를 사용하여 IBM Power Systems용 Network Boot Server 설정

  1. tftp-server 패키지를 설치합니다. 이렇게 하려면 root 로 다음 명령을 입력합니다.
    # yum install tftp-server
  2. 방화벽에서 tftp 서비스에 대한 들어오는 연결을 허용합니다.
    # firewall-cmd --add-service=tftp
    참고
    위의 명령은 다음 서버를 재부팅할 때까지만 액세스를 활성화합니다. 액세스를 영구적으로 허용하려면 --permanent 옵션을 추가합니다. 방화벽 구성에 대한 자세한 내용은 Red Hat Enterprise Linux 7 보안 가이드 를 참조하십시오.
  3. tftp 루트 내에 GRUB2 네트워크 부팅 디렉토리를 만듭니다.
    # grub2-mknetdir --net-directory=/var/lib/tftpboot
    Netboot directory for powerpc-ieee1275 created. Configure your DHCP server to point to /boot/grub2/powerpc-ieee1275/core.elf
    DHCP 구성에서 파일 이름으로 구성해야 하는 파일을 알리는 명령 출력에 유의하십시오. 이 과정에서 중요한 일이 될 것입니다.
  4. GRUB2 설정 파일인 /var/lib/tftpboot/boot/grub2/grub.cfg. grub.cfg 구문은 Red Hat Enterprise Linux 7 시스템 관리자 가이드에 설명되어 있습니다.
    다음은 설정 파일의 예입니다.
    set default=0
    set timeout=5
    
    echo -e "\nWelcome to the Red Hat Enterprise Linux 7 installer!\n\n"
    
    menuentry 'Red Hat Enterprise Linux 7' {
      linux grub2-ppc64/vmlinuz ro ip=dhcp inst.repo=http://10.32.5.1/mnt/archive/RHEL-7/7.6-Beta/Server/ppc64/os/
      initrd grub2-ppc64/initrd.img
    }
    
    중요
    위 예에 표시된 inst.repo= Anaconda 옵션은 설치 프로그램의 이미지와 설치 소스를 지정하는 데 항상 사용해야 합니다. 이 옵션이 없으면 설치 프로그램을 부팅할 수 없습니다. Anaconda 의 부팅 옵션에 대한 자세한 내용은 23.1절. “부팅 메뉴에서 설치 시스템 구성” 을 참조하십시오.
  5. GRUB2 와 함께 패키지된 부팅 이미지를 사용하도록 DHCP 서버를 설정합니다. 설치가 없는 경우 Red Hat Enterprise Linux 7 네트워킹 가이드 를 참조하십시오.
    /etc/dhcp/dhcpd.conf 파일의 샘플 구성은 다음과 같습니다.
    subnet 192.168.0.1 netmask 255.255.255.0 {
      allow bootp;
      option routers 192.168.0.5;
      group { #BOOTP POWER clients
        filename "boot/grub2/powerpc-ieee1275/core.elf";
        host client1 {
        hardware ethernet 01:23:45:67:89:ab;
        fixed-address 192.168.0.112;
        }
      }
    }
    
    샘플 매개변수(서브넷,넷마스크,라우터,고정 주소, 하드웨어 이더넷)를 네트워크 구성에 맞게 조정합니다. 또한 filename 매개 변수를 기록해 둡니다. 이 이름은 프로시저의 앞부분에 grub2-mknetdir 명령으로 출력되는 파일 이름입니다.
  6. 마지막으로 서비스를 시작하고 활성화합니다.
    • dhcpd 서비스:
      # systemctl start dhcpd
      # systemctl enable dhcpd
    • tftpd 서비스를 관리하는 xinetd 서비스:
      # systemctl start xinetd
      # systemctl enable xinetd
이 절차를 완료하면 PXE 부팅 서버가 PXE 클라이언트를 제공할 준비가 되었습니다. 이제 12장. IBM Power Systems에서 설치 부팅 에 설명된 단계를 수행하여 이 서버에서 Power Systems 클라이언트를 부팅할 수 있습니다.
IBM Power Systems 클라이언트용 네트워크 부팅 설정에 대한 자세한 내용은 POWER의 Netbooting - IBM DeveloperWorks 웹 사이트에서 확인할 수 있습니다.