설치 / 사용기

소프트웨어 Ventoy 외주로 돌리기 (외부 파일에 설정하기)

2020.09.25 23:10

suk 조회:1612 추천:27

알고 보면 원래 Ventoy에서 외부 폴더에 설정을 지원해줍니다

AIO Boot로 왔다 갔다 하고, grub2에 익숙하지 않아서 좀 늦게 응용을 했습니다

 

목적은 Ventoy 버전 업 될 때마다 2번째 숨김 파티션에 설정하려면 불편하기 때문입니다

그런데 이렇게 해도 단순하기는 합니다만, 한번은 2번째 숨김 파티션에 있는 grub / grub.cfg를 수정해야 합니다;

 

ISO, wim 등이 저장된 1번째 파티션의 ventoy 폴더에 wim부팅, vhd 부팅 지원해주는 플러그인과 

여러가지 설정이 있는 ventoy.json과 테마 폴더까지 있습니다.

Ventoy 설정은 1번째 파티션의 ventoy 폴더에 전부 가능합니다 2020-09-25_225022.jpg

 

제가 최근에 grub.cfg를 수정하여 부팅 메뉴를 추가했었죠

 

그런데 이것도 외부로 돌릴 수 있습니다. 창작은 아니고 잘 살펴보면 원래 이런 기능이 있습니다

그게 바로 ventoy 설치 파일 plugin / ventoy / ventoy_grub.cfg 입니다. grub.cfg와 비슷한 역할 입니다만

grub2를 잘 모르기 때문에 그냥 방치 상태였습니다

 

그러다가 오늘 기존에 제가 추가했었던 Windows 부팅 메뉴와 grub.cfg 마지막에 Main Menu 부분을 ventoy_grub.cfg에 추가했습니다

그랬더니, 부팅 메뉴가 잘 나옵니다. 파일 부팅도 잘 됩니다. 아 물론 중간에 시행 착오는 좀 있었습니다만 생략합니다

기존 grub.cfg 마지막 부분에 ventoy_grub.cfg 파일을 불러오는 구문을 입력해야 합니다

 

정리하면 

1. grub.cfg 마지막 부분에 ventoy_grub.cfg을 불러오는 구문을 추가합니다

 

if search -n -s -f /ventoy/ventoy_grub.cfg; then

 configfile /ventoy/ventoy_grub.cfg

fi

 

2. ventoy_grub.cfg은 부팅 메뉴들을 넣으시면 되는데요. 

기존에 grub.cfg에 추가하셨던 구문 + grub.cfg 마지막 즈음에 있는 Main menu를 추가하시면 됩니다

 

menuentry '===================  Ventoy 부팅 메뉴 ===================' {

    echo "press Enter to continue ......"

}

 

if [ "${grub_platform}" == "efi" ]; then

    set default="AIO Boot로 전환하기 (grubx64.efi or BOOTX64.EFI)"

    menuentry 'Windows 부팅 (UEFI)' --class=boot_windows {    

        if search -n -s -f /EFI/Microsoft/Boot/bootmgfw.efi; then

            terminal_output  console

            chainloader /EFI/Microsoft/Boot/bootmgfw.efi

        fi        

    }

    menuentry 'AIO Boot로 전환하기 (grubx64.efi or BOOTX64.EFI)' --class=boot_uefi {   

        if search -n -s -f /efi/boot/grubx64.efi; then

            terminal_output  console

            chainloader /efi/boot/grubx64.efi

        elif search -n -s -f /efi/boot/bootx64.efi; then

            terminal_output  console

            chainloader /efi/boot/bootx64.efi

        fi        

    }

fi

if [ "$grub_platform" = "pc" ]; then

    set default="AIO BOOT로 전환하기 (grub2win or grub2xp)"

    menuentry 'Windows 부팅 (BIOS)' --class=boot_windows {

        if search -n -s -f /Boot/BCD; then

            for bt in bootmgr BOOTMGR Bootmgr BootMGR; do

                if [ -f /$bt ]; then

                    ntldr /$bt

                    break

                fi

            done

        elif search -n -s -f /NTDETECT.COM; then

            drivemap -s hd0 $root

            ntldr /ntldr

        fi        

    }

    menuentry 'AIO BOOT로 전환하기 (grub2win or grub2xp)' --class=boot_g4d {

        if search -n -s -f /AIO/grub/grub2win; then

            ntldr /AIO/grub/grub2win

        elif search -n -s -f /AIO/grub/grub2xp; then

            ntldr /AIO/grub/grub2xp

        fi        

    }

fi

 

#Main menu

if [ $ventoy_img_count -gt 0 ]; then

    if [ $VTOY_DEFAULT_MENU_MODE -eq 0 ]; then

        vt_dynamic_menu 0 0 

    else

        vt_dynamic_menu 0 1

    fi

else

    if [ -n "$VTOY_NO_ISO_TIP" ]; then

        NO_ISO_MENU="No ISO files found, $VTOY_NO_ISO_TIP"

    elif [ -n "$VTOY_DEFAULT_SEARCH_ROOT" ]; then

        NO_ISO_MENU="No ISO files found, please check VTOY_DEFAULT_SEARCH_ROOT"

    else

        NO_ISO_MENU="No ISO files found"

    fi

    menuentry "$NO_ISO_MENU (Press enter to reboot ...)" {

        echo -e "\n    Rebooting ... "

        reboot

    }

fi

 

# VTOY_HOTKEY_TIP

 

if [ $VTOY_DEFAULT_MENU_MODE -eq 0 ]; then

    set VTOY_F3_CMD="vt_dynamic_menu 1 1"

    set VTOY_HOTKEY_TIP="1.메모리/디스크 부팅 2.전원 3.폴더/목록 보기 4.로컬 부팅 5.도구 6.개인 메뉴"

else

    set VTOY_F3_CMD="vt_dynamic_menu 1 0"

    set VTOY_HOTKEY_TIP="1.메모리/디스크 부팅 2.전원 3.폴더/목록 보기 4.로컬 부팅 5.도구 6.개인 메뉴"

fi

 

################################################################################

여기까지입니다

 

위에서 마지막에 VTOY_HOTKEY_TIP은 그냥 화면 아래에 영어로 나오는 단축키 설명을 한글로 표시한 것입니다

위 내용만으로는 적용되지 않고, theme 폴더의 theme.txt 내용과 연동되어서 적용됩니다

 

+ hbox{ 

    left = 17%

    top = 95%

    width = 10%

    height = 25

    + label {text = "@VTOY_HOTKEY_TIP@" color = "green" align = "left"} 

}

 

 

+ hbox{ 

    left = 17%

    top = 95%-25

    width = 10%

    height = 25

    + label {text = "@VTOY_MEM_DISK@" color = "green" align = "left"} 

}

 
@VTOY_MEM_DISK@ 는 단축키 F1이나 숫자 1 눌렀을 때 메모리/디스크 부팅위에 memdisk 글자 표시가 나타나게 하는 역할입니다
저도 처음에 이것이 없어서 F1이나 숫자 1 눌렀을 때 화면만 번쩍 번쩍해서 설정이 망가졌는 줄 알았습니다;;
 
아! 저는 timeout을 사용하지 않아서 없습니다만, ventoy_grub.cfg에 set timeout=5 이런 식으로 시간 설정이 가능합니다. 적용되는걸 확인했습니다
 
강좌에 올리려고도 했었는데요. 아직 실험적 단계라서 강좌에 올릴 단계는 아닌 것 같아서 사용기에 올립니다.
확실한 정보/지식만 강좌에 올려야지요 ^^
 
Ventoy 설정은 1번째 파티션의 ventoy 폴더에 전부 가능합니다 - 현재 설정 2020-09-25_230542.jpg

 

가상 머신이라서 AIO Boot를 기본 메뉴로 잡아놨습니다.
실컴이라면 Windows 부팅을 기본으로 잡을 듯 합니다.
 
Ventoy 설정은 1번째 파티션의 ventoy 폴더에 전부 가능합니다 - 현재 설정 - wim 부팅 잘 됩니다 2020-09-25_230629.jpg

ㅎㅎ 그 사이 배경화면은 바꿨습니다. 

 

@ 사소한 부작용을 발견했습니다. 사실 F6 또는 숫자 6 입력했을 때 개인 메뉴 (확장 메뉴)를 활용한 것입니다

지금은 부팅하자마자 확장 메뉴가 적용된 상태입니다. 그런데 여기에 다시 F6 키를 입력한 경우 화면상 변화는 없습니다만

F1을 제외한 단축키가 먹통이 됩니다. F6 누른 경우도 모든 단축키를 살리려면 단축키 관련 내용을 grub.cfg에서 가져와야 할 듯 합니다

-> 근데 생각보다 복잡한 듯 합니다. 이미 확장 메뉴 적용된 상황이라서 F6은 그냥 누르지 않는걸로 합니다 ~ ;;

-> 편법입니다만, AIO Boot로 한번 갔다가 다시 Ventoy로 돌아오면 단축키가 부활하네요 ^^ 둘다 기본으로 잡혀있어서 엔터 2번만 치면 부활합니다 

F6이나 6 누르셔서 단축키 먹통되었을 때 esc키 누르시면 단축키들이 부활합니다[별도의 구문은 추가하지 않아도 됩니다]

번호 제목 글쓴이 조회 추천 등록일
[공지] 사용기/설치기 이용안내 gooddew - - -
9856 기 타| 한글화한 중국 PE에 Config.cmd를 적용하여 보았습니다 [22] 왕초보 945 47 06-10
9855 윈 도 우| 시작 메뉴에 고정 기능 복구 [18] 지후빠 772 28 06-09
9854 기 타| (수정) qnd님 Win11PE - 시작메뉴에 등록을 하여 보았습니다 [77] 왕초보 1598 134 06-08
9853 기 타| 지후빠님 PinTo.cmd - 모르면 몸이 고생이네요 [16] 왕초보 765 13 06-08
9852 기 타| 지후빠님 qnd_iso_update_4.2 버전 사용기 입니다 [24] 왕초보 736 23 06-08
9851 기 타| (수정-3) qnd님 Win11PE - 취향대로 꾸며 보았습니다 [174] 왕초보 2806 284 06-06
9850 소프트웨어| qnd_iso_update_4.3 테스트 [21] 지후빠 903 19 06-06
9849 보안 / 해킹| 꼴통 "AhnLab Safe Transaction" 길들이기 [10] 세이퍼컴 1387 12 06-05
9848 기 타| qnd님 Win11 (kj) Compact Easy Rocket +PinTo PE 간단한 ... [28] 왕초보 1007 23 06-05
9847 윈 도 우| Windows 11 PE x64 by Xemom1 한글화 마지막 [20] 4k8k 1362 31 06-04
9846 기 타| 최종 업데이트 → Win11 (kj) Compact Easy Rocket +PinTo PE [114] qnd 2713 71 06-04
9845 윈 도 우| uup down 러시아 pe 살펴보기 [5] 4k8k 637 12 06-03
9844 기 타| 부팅화면에 +아이콘 → Win11 (kj) 269mb Rocket +PinTo PE [50] qnd 1077 36 06-03
9843 윈 도 우| Windows 11 PE x64 by Xemom1 (02.06.23) [8] 옛날에 1299 20 06-03
9842 기 타| Backupper BR Cmd 버전 - Cmd 명령어로백업 복원합니다 [43] 왕초보 826 87 06-02
9841 윈 도 우| [한글화] Windows 11 PE x64 by Xemom1 (01.06.23) [Ru] [19] 옛날에 1933 32 06-02
9840 윈 도 우| Windows 11 _Xemom1 PE 살펴보기 [7] 4k8k 887 16 06-01
9839 기 타| 업데이트 i → Win11 (kj) Compact Easy Rocket +PinTo PE [74] qnd 2086 61 06-01
9838 윈 도 우| 뉴 빌더 간단 사용기.빌더하기 [3] 4k8k 557 13 06-01
9837 기 타| PE에서 크롬 즐겨찾기 자동저장(?) 하기를 해보았습니다 [6] 왕초보 748 14 05-31
XE1.11.6 Layout1.4.8