Score:4

Ubuntu 20.04 LTS - ไม่สามารถสร้างแฟลชไดรฟ์ USB ที่สามารถบู๊ตได้

ธง ie

ฉันกำลังพยายามสร้างไดรฟ์ USB ที่สามารถบู๊ตได้สำหรับ 20.04 ถ้าฉันดาวน์โหลดอิมเมจเป็น 20.04 ฉันสามารถบู๊ตไดร์ฟได้อย่างถูกต้อง อย่างไรก็ตาม หากฉันแยกเนื้อหา 20.04 ทั้งหมดไปยังไดเร็กทอรี จากนั้นสร้าง ISO และ dd ใหม่ไปยังไดรฟ์ ไดรฟ์ที่ได้จะไม่บูต zbook ของฉันส่งเสียงบี๊บและกลับไปที่เมนูบูต คำสั่งสำหรับสร้าง ISO ผมได้มาจากหลายบทความ แต่ฉันแน่ใจว่าต้องเป็น ISO ที่สร้างขึ้นเอง ความคิดใด ๆ ?

guiverc avatar
cn flag
คุณตรวจสอบ ISO หรือไม่ (https://tutorials.ubuntu.com/tutorial/tutorial-how-to-verify-ubuntu#0) แต่มีคำแนะนำในการเขียนที่ https://ubuntu.com/tutorials/tutorial-create-a-usb- stick-on-ubuntu#1-ภาพรวม https://ubuntu.com/tutorials/tutorial-create-a-usb-stick-on-macos#1-overview https://ubuntu.com/tutorials/tutorial-create-a-usb-stick-on-windows#1-overview หากคุณระบุคำสั่ง `dd` ที่คุณเขียนด้วย เราอาจเห็นปัญหาได้ แต่เรา จำกัดเฉพาะสิ่งที่คุณให้ไว้
guiverc avatar
cn flag
FYI: นอกจากนี้ยังอาจช่วยได้หากคุณเจาะจงเกี่ยวกับ ISO 20.04; มีข้อผิดพลาดที่ยื่นสำหรับ 20.04.3 ตัวอย่างเช่น ขณะนี้ฉันกำลังเขียน ISO เพื่อ *ยืนยัน* แต่ฉันถือว่าคุณไม่ได้พูดถึง *การทดสอบ* ISO แต่เป็นการเผยแพร่ (fyi: ข้อผิดพลาดส่งผลกระทบเพียง 3-5% ของกล่อง uEFI ซึ่งเกี่ยวข้องกับ SHIM เฉพาะ)
in flag
ฉันสงสัยว่าทำไมคุณแตกไฟล์จาก ISO Ubuntu มาพร้อมกับแอปพลิเคชันที่ชื่อว่า "Startup Disk Creator" ซึ่งทำตามที่สัญญาไว้ ...
us flag
คุณ *ไม่* ควรจะ "แยก" ไฟล์ `*.iso` แล้วคัดลอกไฟล์ที่แยกออกมาทั้งหมดไปยัง USB นี่ไม่ใช่วิธีสร้าง ISO ที่สามารถบู๊ตได้ สิ่งที่คุณทำก็แค่สร้าง USB ที่มีไฟล์สุ่มอยู่มากมาย ตามที่ @matigo แนะนำ เพียงแค่ใช้ Startup Disk Creator เพื่อ "แฟลช" ไฟล์ `*.iso` ไปยัง USB หากคุณ *ยังคง* ต้องการใช้ `dd` โปรดดูที่ [การแฟลช Ubuntu ISO เป็น USB stick ด้วย dd: ขนาดบล็อกที่แนะนำ](https://askubuntu.com/q/931581/100356) และ [การใช้ 'dd ' คำสั่งสร้างแท่ง USB ที่สามารถบู๊ตได้](https://askubuntu.com/q/512059/100356)
C.S.Cameron avatar
cn flag
@PJ Singh การแตกไฟล์ ISO ไปยัง USB ใช้งานได้ ดูด้านล่าง ทั้ง Rufus และ UNetbootin ใช้วิธีนั้น
sudodus avatar
jp flag
ฉันคิดว่านี่เป็นขั้นตอนที่มีปัญหา: "จากนั้นสร้าง ISO ใหม่" ไม่ใช่เรื่องเล็กน้อยที่จะสร้างไฟล์ iso ซึ่งเมื่อโคลนไปยังไดรฟ์ USB จะทำให้ไดรฟ์ USB นั้นบูตได้ -- โคลนโดยตรงจากไฟล์ iso ที่ดาวน์โหลดมา (วิธีตรงไปตรงมา) หรือสร้างตารางพาร์ติชันที่มีระบบไฟล์อย่างน้อยหนึ่งระบบ (และในกรณีบูต BIOS ให้สร้าง bootloader ด้วย) จากนั้นแยกเนื้อหาของ iso ไฟล์ไปยังระบบไฟล์ (วิธีที่ยากกว่า)
sudodus avatar
jp flag
คุณต้องการสร้างไดรฟ์ USB ที่สามารถบู๊ตได้และใช้งานได้หรือไม่? จากนั้นฉันขอแนะนำให้คุณใช้เครื่องมือที่มีอยู่กับอินเทอร์เฟซผู้ใช้แบบกราฟิกที่ทำให้กระบวนการค่อนข้างปลอดภัย -- หรือคุณต้องการเรียนรู้รายละเอียดและใช้ชุดเครื่องมือพื้นฐาน [maybe command line] หลายชุด จากนั้นคำแนะนำของ C.S.Cameron จะเป็นประโยชน์สำหรับคุณ -- หรือคุณต้องการสร้างไฟล์ iso แบบกำหนดเอง (โดยหลักการแล้ว Linux distro ของคุณเอง) นั่นเป็นขั้นสูงกว่ามาก แต่เป็นไปได้และมีแบบฝึกหัดมากมายสำหรับสิ่งนั้นด้วย
C.S.Cameron avatar
cn flag
ตามที่ Sudodus พูดเป็นนัย สิ่งที่จำเป็นสำหรับไดรฟ์ USB ที่บู๊ตในโหมด UEFI ก็คือการคัดลอกเนื้อหาของ Ubuntu ISO ไปยังพาร์ติชัน FAT32 หรือ NTFS ไม่มีอะไรแฟนซี
Score:5
ธง cn

มีหลายวิธีในการสร้างแฟลชไดรฟ์ USB ที่บูตได้

วิธีการต่อไปนี้แยกเนื้อหาของ ISO ไปยังพาร์ติชัน

การสร้าง Grub2 booter ที่ใช้พาร์ติชั่นถาวรนั้นง่ายมาก*

  • บู๊ตติดตั้ง Ubuntu หรือ Live USB
  • ใส่ USB เป้าหมาย
  • เริ่ม GParted
  • สร้างตารางพาร์ติชัน GPT บน Target USB
  • สร้างพาร์ติชันสำหรับบูต BIOS ขนาด 1MB ทางด้านซ้าย โดยจัดรูปแบบเป็นไม่ได้จัดรูปแบบ
  • เพิ่มพาร์ติชันสำหรับบูต FAT32 EFI ขนาด 300MB ข้างๆ
  • เพิ่มพาร์ติชั่นรูท ext4 ให้ใหญ่พอสำหรับเนื้อหาของ Ubuntu ISO (~ 3GB สำหรับ 20.04)
  • สร้างพาร์ติชัน ext4 ที่มีป้ายกำกับว่า casper-rw
  • เพิ่มพาร์ติชันข้อมูล NTFS หากต้องการ
  • ใช้การดำเนินการทั้งหมด
  • ตั้งค่าสถานะพาร์ติชัน 1 bios_grub.
  • ตั้งค่าสถานะการบูตพาร์ติชัน 2 โดยเฉพาะ
  • ปิด GParted

แยก

  • เปิดโฟลเดอร์ของ ISO ในฐานะผู้ดูแลระบบ เปิด ISO โดยใช้ Archive Manager

  • แยกเนื้อหาของ ISO ไปยังพาร์ติชันรูทของเป้าหมาย

  • ลากและวางโฟลเดอร์บูตและ EFI จากหน้าต่าง Archive Manager ไปยังพาร์ติชันสำหรับเริ่มระบบ EFI

  • แก้ไข sdx2/boot/grub/grub.cfg เพิ่ม set root=(hd0,3) หลังบรรทัดแรกที่ขึ้นต้นด้วย รายการเมนู.

  • เพิ่มช่องว่างและคำว่า "ถาวร" หลัง ---

      ตั้งหมดเวลา = 5
      เมนู "Ubuntu ถาวร" {
          ตั้งค่ารูท = (hd0,3)
          ตั้ง gfxpayload=เก็บ
          linux /casper/vmlinuz file=/cdrom/preseed/ubuntu.seed boot=casper quiet splash --- ถาวร
          initrd /casper/initrd
      }
    
  • ติดตั้ง grub หากอยู่ในโหมด BIOS หรือบูตจากไดรฟ์ USB ให้รัน:

      sudo เมานต์ /dev/sdx2 /mnt
    
      sudo grub-install --boot-directory=/mnt/boot /dev/sdx
    
  • หากอยู่ในโหมด UEFI บนระบบที่ติดตั้ง ให้บูตเข้าสู่ไดรฟ์เป้าหมายและเรียกใช้ด้านบน

* การบูทขึ้นอยู่กับ mkusb โดย sudodus

อีกวิธีหนึ่งในการสร้าง USB ที่สามารถบู๊ตได้คือการบู๊ตไฟล์ ISO โดยตรง

อิมเมจเทมเพลต BIOS / UEFI สำหรับการบูทไฟล์ ISO

us flag
ฉันไม่รู้ว่าสิ่งนี้เป็นไปได้ คำแนะนำที่ยอดเยี่ยม ฉันบุ๊กมาร์กไว้เพื่อใช้อ้างอิงในอนาคต
Score:4
ธง pk

ดร เมื่อคุณสร้าง ISO ขึ้นใหม่จากไฟล์ที่แยกออกมา คุณไม่ได้ (ถูกต้อง) ถ่ายโอนทั้ง BIOS bootblock หรือ EFI System Partition หรือ สพฐไปยังไดรฟ์ USB ที่สร้างขึ้นใหม่ ดังนั้นระบบจะไม่สามารถบูตจากดิสก์นี้ได้

ปัญหา

กำลังโหลด bootloader

เฟิร์มแวร์ระบบไม่ทราบวิธีการบู๊ตระบบปฏิบัติการบนไดรฟ์ และส่งต่อความรับผิดชอบนั้นไปยังโปรแกรมขนาดเล็กที่เรียกว่า ตัวโหลดบูต. มันถูกเก็บไว้ในดิสก์ในตำแหน่งที่ระบุซึ่งเฟิร์มแวร์สามารถค้นหาได้ง่าย ตำแหน่งที่เก็บ bootloader ขึ้นอยู่กับวิธีที่เฟิร์มแวร์ใช้ในการบู๊ตดิสก์ มีวิธีบู๊ตสองแบบที่แตกต่างกันที่ใช้อยู่ในปัจจุบันบนแพลตฟอร์ม x86-64 คือ EFI สมัยใหม่และการบู๊ต BIOS รุ่นเก่า

ฉันถือว่า HP Z-Book ของคุณใหม่พอที่จะเป็นทั้ง x86-64 และรองรับการบู๊ต EFI คุณจะสามารถเปิดใช้งานการรองรับ BIOS รุ่นเก่าในยูทิลิตี้การตั้งค่าเฟิร์มแวร์ระบบได้ แม้ว่าสิ่งนี้อาจแตกต่างไปจากแล็ปท็อปเครื่องอื่นๆ และอาจมีการเปลี่ยนแปลงได้สำหรับแล็ปท็อปรุ่นใหม่ๆ

พาร์ติชันระบบ EFI (ESP)

เฟิร์มแวร์ที่ใช้ x86-64 EFI จะโหลด bootloader โดยค้นหาไฟล์ที่เรียกว่า /efi/boot/bootx64.efi (กรณีไม่สำคัญ) บนพาร์ติชันรูปแบบพิเศษ FAT32 พร้อมประเภท 0xEF หรือ พาร์ติชันระบบ EFI (ESP) บนดิสก์สำหรับบูตที่เลือก ไบออสบางตัวสามารถบูตจากระบบไฟล์ NTFS ได้เช่นกัน

ลีนุกซ์ส่วนใหญ่รวมถึงอูบุนตู ตอนนี้แจกจ่ายดิสก์อิมเมจที่เข้ากันได้กับ El Torrito ซึ่งหมายความว่าดิสก์เดียวกันสามารถบู๊ตได้ด้วย BIOS รุ่นเก่าหรือเฟิร์มแวร์ที่ใช้ EFI สมัยใหม่ในโหมดบู๊ตที่เกี่ยวข้อง เมื่อคุณแยกหรือต่อเชื่อมดิสก์ (เช่น จากไฟล์ GNOME ซึ่งเป็นตัวจัดการไฟล์) พาร์ติชัน EFI จะได้รับการดูแลแยกจากกัน efi.img ไฟล์ แต่นี่คือความจริงแล้ว ไม่ วิธีจัดเรียงดิสก์บนซีดี/ดีวีดีที่เบิร์นจากไฟล์ ISO นี้

ดังนั้น เฟิร์มแวร์ระบบจะไม่รู้จักไฟล์นี้เป็นพาร์ติชันระบบ EFI ที่ถูกต้องเมื่อคัดลอกไปยังไดรฟ์ USB ของคุณ เฟิร์มแวร์ปฏิเสธไดรฟ์ เนื่องจากไม่เชื่อว่าดิสก์จะสามารถบู๊ตได้

แก้ไขปัญหา

คุณสามารถสร้างพาร์ติชันระบบ EFI โดยใช้ดิสก์ GNOME, GParted หรือเครื่องมือบรรทัดคำสั่ง เช่น จีดิสก์. พาร์ติชันใหม่ต้องมีประเภท ESP และต้องจัดรูปแบบเป็น FAT32

เนื้อหาของ efi.img จะต้องแยกไปยังโฟลเดอร์ที่เรียกว่า อีฟี บนดิสก์เป้าหมายเช่นนั้น bootx64.efi ปรากฏที่ทาง /efi/boot/bootx64.efi บนรูทของดิสก์

ส่วนที่เหลือของ ISO อาจถูกแตกไปยังพาร์ติชันเดียวกัน และนี่คือสิ่งที่เครื่องมืออย่าง Rufus ทำ อย่างไรก็ตาม มักจะต้องมีขั้นตอนเพิ่มเติมสำหรับลีนุกซ์รุ่นดิสทริบิวชันส่วนใหญ่: ป้ายกำกับระบบไฟล์มักจะใช้เพื่อระบุดิสก์ที่จะใช้บู๊ต ดังนั้น ป้ายกำกับของระบบไฟล์จะต้องตรงกับที่ติดมากับไฟล์ ISO มิฉะนั้น (เช่น Ubuntu) เคอร์เนลจะไม่สามารถระบุตำแหน่งระบบไฟล์รูท SquashFS เพื่อดำเนินการบูตต่อไปได้

Score:0
ธง kz

วิธีหนึ่งในการทำเช่นนี้ง่ายมากใน Ubuntu 20 คือ:

คลิกขวาที่ไฟล์ .iso ของคุณ เปิดด้วยแอปพลิเคชันอื่น เลือกตัวเขียนภาพดิสก์ เปิดด้วย Disk Image Writer

เมื่อระบบขอให้กู้คืนอิมเมจดิสก์ ให้เลือกเป้าหมาย USB ของคุณ

กู้คืน ISO เป็น USB คลิกที่เริ่มการคืนค่า

และนั่นควรเป็นทั้งหมด !!.

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา