리눅스에서 ISO에서 부팅 가능한 USB를 만드는 Bash 스크립트

부트이소는 하나의 ISO 파일로부터 부팅 가능한 USB 장치를 쉽고 안전하게 만들기 위한 강력한 Bash 스크립트입니다. 터미널에서 하나의 명령으로 ISO로부터 부팅 가능한 USB를 만들어주는 도움이 됩니다. 이 스크립트는 신중하게 구성되고 shellcheck를 사용하여 유효성을 검사합니다.

루트 권한으로 실행해야 하며, 시스템에 필요한 외부 프로그램이 없는 경우 설치를 요청하고 종료합니다. 부트이소는 선택한 ISO의 올바른 mime-type을 확인하고 그렇지 않은 경우 종료합니다. 시스템 손상을 방지하기 위해 선택한 장치가 USB로 연결되었는지 확인합니다.

관련 기사: 리눅스에서 ISO 이미지에서 파일 추출 및 복사하는 3가지 방법

USB 장치를 포맷하고 파티션을 나누기 전에 데이터 손실을 방지하기 위해 실행 동의를 요청합니다. 더욱 중요한 것은 내부 명령의 실패를 적절히 처리하고 종료합니다. 또한 종료 시 임시 파일을 정리하기 위해 trap 유틸리티를 사용합니다.

리눅스에 부트이소 스크립트 설치하기

소스로부터 부트이소를 설치하는 쉬운 방법은 git 저장소를 복제하고 아래와 같이 실행 권한을 설정하는 것입니다.

$ git clone https://github.com/jsamr/bootiso.git
$ cd bootiso/
$ chmod +x bootiso

그다음, 스크립트를 bin 경로(예: ~/bin/ 또는 /usr/local/bin/)로 이동하여 시스템에서 다른 리눅스 명령어처럼 실행할 수 있습니다.

$ mv bootiso ~/bin/

설치한 후 bootiso를 실행하는 구문은 첫 번째 인수로 ISO를 제공하는 것입니다.

$ bootiso myfile.iso

ISO 파일에서 부팅 가능한 USB 장치를 만들려면, 먼저 시스템에 연결된 모든 사용 가능한 USB 드라이브를 -l 플래그를 사용하여 나열해야 합니다.

$ bootiso -l

Listing USB drives available in your system:
NAME    HOTPLUG   SIZE STATE   TYPE
sdb           1   14.9G running disk

다음으로, 장치(/dev/sdb)를 부팅 가능한 장치로 만들기 위해 단순히 첫 번째 인수로 ISO를 제공하면 됩니다. 시스템에 USB 장치가 하나만 연결된 경우(위의 경우와 같음), 스크립트는 자동으로 선택하고, 그렇지 않은 경우에는 시스템에 연결된 모든 USB 드라이브의 자동 생성된 목록에서 선택하라고 요청합니다.

$ sudo bootiso ~/Templates/eXternOS.iso 
Create Bootable USB in Linux Terminal

또한 -a 플래그를 사용하여 USB 드라이브를 자동 선택하는 기능을 -y(USB 드라이브를 포맷하기 전에 사용자에게 확인을 받지 않음) 옵션과 함께 사용할 수 있습니다.

$ sudo bootiso -a -y ~/Templates/eXternOS.iso

시스템에 여러 USB 장치가 연결된 경우, 명령줄에서 부팅 가능한 USB 장치를 명시적으로 지정하기 위해 -d 플래그를 사용할 수 있습니다.

$ sudo bootiso -d /dev/sdb ~/Templates/eXternOS.iso  

기본적으로 bootiso는 mount + rsync를 사용하여 dd 명령을 사용합니다. 대신 --dd 플래그를 추가하여

$ sudo bootiso --dd -d ~/Templates/eXternOS.iso      

dd 명령을 사용할 수 있습니다. 또한, 하이브리드가 아닌 ISO에 대해서는 다음과 같이 -b 옵션으로 syslinux로 부트로더를 설치할 수 있습니다. 그러나 이 옵션은 dd 명령을 지원하지 않습니다.

$ sudo bootiso -b /ptah/to/non-hybrid/file.iso
OR
$ sudo bootiso -bd /usb/device /ptah/to/non-hybrid/file.iso

bootiso의 기타 기능과 옵션에 대한 자세한 정보는 도움말 메시지를 참조하십시오.

$ bootiso -h  

Bootiso GitHub 저장소: https://github.com/jsamr/bootiso

그것이죠! Bootiso는 강력한 Bash 스크립트로 하나의 ISO 파일에서 터미널에서 단일 명령으로 부팅 가능한 USB 장치를 쉽고 안전하게 만들 수 있습니다. 아래의 댓글 양식을 사용하여 생각을 공유하거나 질문을 하십시오.

Source:
https://www.tecmint.com/create-bootable-usb-in-linux-commandline/