?grub2各種手動命令引導教程(引導Ubuntu及安裝鏡像,arch Linux及安裝鏡像,Windows及winPE) 原創(chuàng) 2018-07-29 19:13:45 ? 3點贊 ? worldy_MCX ? 碼齡3年 關注 手動引導ubuntu的iso鏡像文件從而安裝ubuntu,grub>代表命令的開始 假設ubuntu鏡像在U盤的第一個分區(qū)的根目錄下即:(hd0,1)/ubuntu-18.04-desktop-amd64.iso 手動引導下可以按TAB鍵補全命令、目錄以及文件名 #查詢所有已安裝磁盤并打印詳細信息 grub>ls -l #設置根目錄分區(qū) grub>set root=(hd0,1) #將Ubuntu.iso位置賦值給變量isofile (這里用變量方便下面不用打一長串文件名) grub>set isofile=/ubuntu-18.04-desktop-amd64.iso #使用grub2的回放技術,把ubuntu.iso的文件內(nèi)容,投射(掛載)到loop上。在使用這個命令時,你得考慮你的內(nèi)存足夠的大。(hd0,1)iso鏡像文件所在分區(qū) grub>loopback loop (hd0,1)$isofile #加載內(nèi)核,其中(loop),是使用了上一句所投射的設備,其訪問的是ubuntu.iso文件的內(nèi)容,boor=casper將目錄casper掛載為boot,iso-scan/filename=$isofile 是利用iso-scan來尋找到你的ubuntu.iso文件所在位置并把所找到的iso文件掛到光驅(qū)設備 grub>linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=$isofile quiet splash #initrid.lz是一個鏡象文件,里面存的是一些內(nèi)核要加載的重要文件 grub>initrd (loop)/casper/initrd.lz #根據(jù)上面的參數(shù)啟動系統(tǒng) grub>boot -----------------------------------------------------------------------分割線----------------------------------------------------------------------------------------- 手動引導archlinux的iso鏡像文件從而安裝archlinux,grub>代表命令的開始 假設archlinux鏡像在U盤的第一個分區(qū)的根目錄下即:(hd0,1)/archlinux-2018.07.01-x86_64.iso grub>set root=(hd0,1) grub>set isofile=/archlinux-2018.07.01-x86_64.iso grub>loopback loop (hd0,1)$isofile #img_dev=/dev/sda1 鏡像文件所在分區(qū)設備,如果不清楚所在設備是怎么排序的可以使用img_dev=/dev/disk/by-uuid/分區(qū)的UUID 關于UUID可以用"grub>ls -l" 指令查詢,或者可以用img_dev=/dev/disk/by-labe/分區(qū)卷標 grub>linux (loop)/arch/boot/x86_64/vmlinuz img_dev=/dev/sda1 img_loop=$isofile earlymodules=loop grub>initrd (loop)/arch/boot/x86_64/archiso.img grub>boot 方法二: grub>set root=(hd0,1) grub>set isofile=/arch.iso grub>loopback loop (hd0,1)$isofile grub>linux (loop)/arch/boot/x86_64/vmlinuz img_loop=$isofile archisobasedir=arch archisolabel=ARCH_XXXXXX #此處為發(fā)布年月 grub>initrd (loop)/arch/boot/x86_64/archiso.img -----------------------------------------------------------------------分割線----------------------------------------------------------------------------------------- 手動引導Ubuntu 假設ubuntu安裝在第一塊硬盤的第一個分區(qū)即:(hd0,1) grub>root=(hd0,1) grub>linux /boot/vmlinuz-xxx grub>initrd /boot/initrd.img-xxx grub>boot XXX是內(nèi)核版本號 關于linux的通用引導方法其實與上面差不多,就是在“grub>linux /boot/vmlinuz-xxx”這一句加載內(nèi)核的文件與后面跟的參數(shù)有所不同,不同的linux發(fā)行版會有不同的參數(shù),有些可以也不加參數(shù)啟動 -----------------------------------------------------------------------分割線----------------------------------------------------------------------------------------- 手動引導uefi啟動模式下的Windows。 winPE也可以用此方法引導 假設windows安裝在第一塊硬盤的第一個分區(qū)即:(hd0,1) #加載ntfs文件系統(tǒng) grub>insmod ntfs grub>set root=(hd0,1) #grub>chainloader +1 是引導傳統(tǒng)bios啟動的Windows #如果不成功則可能是efi文件被替換用換個目錄試試如:chainloader/EFI/microsoft/boot/bootmgfw.efi grub>chainloader /EFI/boot/bootx64.efi grub>boot -----------------------------------------------------------------------分割線----------------------------------------------------------------------------------------- 手動引導bios啟動模式下的Windows。 winPE也可以用此方法引導 假設windows安裝在第一塊硬盤的第一個分區(qū)即:(hd0,1) chainloader /bootmgr 命令會報簽名錯誤,即使關閉簽名驗證也無法啟動(chainloader +1也可啟動系統(tǒng)但不可啟動U盤pe) grub>set root=(hd0,1) # /bootmgr 是一個在根目錄下的引導文件,bootmgr是在Windows Vista、Windows 7、windows 8/8.1和windows 10中使用的新的啟動管理器,就相當于Win NT/Win 2000/Win XP時代的NTLDR。 grub>ntldr /bootmgr grub>boot |
|