ubuntu를 설치할 경우가 있다. 특히 처음 설치가 필요하거나 재설치가 필요한 경우에 간단하게 ISO 파일만으로
재설치해보고 싶은 경우도 있다. 이런 경우 iso를 다운 받아서 해당 iso를 grub와 적절히 설정해주면 부팅 시
설정된 ISO를 통해 부팅이 가능하다.
이런 경우 하드웨어 및 Linux에 대해서 좀 알 필요가 있는데, 일반적으로 아래와 같은 예제로 하면 된다.
디스크 구성 현황
/dev/nvme0n1 - OS 디스크
- /dev/nvme0n1p1 - OS 설치 파티션
/dev/sda - 데이터 저장
- /dev/sda1 - GPT 파티션 (/data)
/dev/sda - 데이터 저장
- /dev/sdb1 - GPT 파티션 (/data1)
1. OS 설치를 위한 ISO파일을 /data/iso-boot 디렉토리에 다운로드 받는다.
# mkdir /data/iso-boot
# cd /data/iso-boot
# wget https://mirror.kakao.com/ubuntu-releases/focal/ubuntu-20.04.4-live-server-amd64.iso
2. grub용 설정 파일 생성
(파일 생성 및 실행 권한 할당)
# touch /etc/grub.d/ubuntu2004-uboot
# chmod 755 /etc/grub.d/ubuntu2004-uboot
(설정 내용 추가)
# vi /etc/grub.d/ubuntu2004-uboot
#!/bin/sh
exec tail -n +3 $0
# This file provides an easy way to add custom menu entries. Simply type the
# menu entries you want to add after this comment. Be careful not to change
# the 'exec tail' line above.
menuentry 'Ubuntu 20 ISO' {
set isofile=/iso-boot/ubuntu-20.04.4-live-server-amd64.iso
loopback loop (hd1,gpt1)$isofile
linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=$isofile ---
initrd (loop)/casper/initrd
}
이중 가장 중요한 부분은 "(hd1,gpt1)"로 hd1 디스크의 gpt로 구성된 1번째 파티션이라는 의미다.
몇 번째 디스크를 사용하는지, 몇번째 파티션을 사용하는지, 왜 이렇게 번호가 붙여주는지는 가르쳐 주지 않는다.
(공부하자!!!)
일단 위와 같이 설정 후, grub를 업데이트해준다.
# update-grub
부팅후, 해당 메뉴가 있는지 확인하고 ISO 파일로 OS를 설치해본다.