วิธีบู๊ต Ubuntu บน mac จากที่จัดเก็บข้อมูล USB ภายนอก


17

ฉันต้องการรัน Ubuntu บน iMac ของฉันจากที่จัดเก็บข้อมูล USB ภายนอกไม่ว่าจะเป็นดิสก์ภายนอกหรือแฟลชไดรฟ์

ฉันสามารถสร้างแท่ง USB ที่สามารถบู๊ตได้และใช้มันเพื่อติดตั้ง Ubuntu 14.04 ลงในอุปกรณ์ USB ที่แบ่งพาร์ติชั่นได้อย่างเหมาะสม อย่างไรก็ตามตรงกันข้ามกับการยืนยันบางอย่างที่นี่และที่อื่น ๆ หลังจากรีสตาร์ทผลการค้นหาจะไม่ถูกตรวจพบโดย Mac ว่าสามารถบูตได้

ฉันใช้ Google อย่างกว้างขวางและฉันแน่ใจว่าเป็นไปได้ที่จะให้ Mac บูตเครื่อง แต่คำแนะนำที่ฉันพบนั้นไม่ชัดเจนเกินไป ( การติดตั้ง Ubuntu บนและ External Hard Drive และบูตใน Mac ) หรือในกรณีเดียว ซับซ้อนเกินไป ( http://www.rodsbooks.com/ubuntu-efi/ ) เพื่อให้เข้าใจมาก อย่างไรก็ตามเธรดทั่วไปดูเหมือนว่ากำลังใช้ rEFInd เพื่อ rejig ตัวเลือกการบูต

ดังนั้นฉันจัดการเพื่อรับ rEFInd ติดตั้งบนพาร์ติชันบนไดรฟ์ภายนอก แต่ไม่พบการติดตั้ง Ubuntu ฉันมีพาร์ติชัน ext2 / boot บนดิสก์เดียวกันและคัดลอก ext2_x64.efi ไปยังไดเรกทอรี / EFI แต่ไม่ไป

ฉันติดอยู่ที่จุดนี้และขั้นตอนต่อไปจะต้องมีการศึกษาอย่างละเอียดของ bootloaders และ EFI อย่างไรก็ตามฉันคิดว่าฉันต้องใกล้เคียงกับการแคร็กและหวังว่าจะมีใครบางคนชี้ไปที่คำแนะนำทีละขั้นตอนได้

วิธีการสรุป:

  • ดิสก์ USB มีพาร์ติชั่น ext2 / boot (ที่มีอิมเมจ vmlinuz อยู่) และ ext4 / partition ที่ติดตั้ง Ubuntu 14.04 ที่เหลือ
  • ไม่สามารถบูตได้หลังจากติดตั้ง
  • วาง rEFInd ไว้ในพาร์ติชัน FAT32 อันอื่นซึ่งมี / EFI อยู่
  • คัดลอก ext2_x64 ไปยัง / EFI / boot และ / EFI / refind
  • สามารถบูตและโหลด rEFInd มีตัวเลือกในการบูต ext2_x64.EFI (?) แต่ไม่มี Ubuntu / vmlinuz

หากฉันสามารถแก้ปัญหานี้ได้ฉันจะวางแนวทางที่ชัดเจนไว้ในเว็บสักแห่ง!

คำตอบ:


23

ฉันใช้เวลาทั้งวันเป็นวันที่สองและตอนนี้ฉันก็ทุบมัน

ฉันหวังเป็นอย่างยิ่งว่าวิญญาณที่น่าสงสารคนอื่นจะได้รับประโยชน์จากสิ่งนี้

นี่คือสูตรที่ใช้งานได้ (อย่างน้อยใน iMac ของฉันกับ Ubuntu 14.04):

  • บูตด้วย USB ที่บูตได้ติดตั้ง Ubuntu
  • แบ่งพาร์ติชัน USB ของคุณดังนี้:
    • พาร์ติชันสำหรับเริ่มระบบ EFI 200MB
    • ext2 200MB ติดตั้ง /boot
    • สลับพื้นที่ถ้าคุณต้องการ
    • หนึ่งหรือหลายพาร์ติชั่นอื่น ๆ เพื่อให้ Ubuntu เหมาะสม (เช่น ext4 on /)
  • ทำการติดตั้งให้รีบูตเป็น OS X
  • รับ gdisk (โปรแกรมติดตั้ง pkg สำหรับ OS X) และไบนารี rEFInd
  • ดำเนินรายการ "diskutil" จากคอนโซลและทราบชื่ออุปกรณ์และพาร์ติชัน EFI (เช่น/dev/disk3, /dev/disk3s1)
  • ทำตามสูตร gdisk ที่http://www.rodsbooks.com/ubuntu-efi/ภายใต้หัวข้อ "การแก้ไขการติดตั้ง" จุดที่ 6
  • ติดตั้ง rEFInd บนพาร์ติชัน EFI ของ USB จากไดเรกทอรี refind:

    ./refind-install -–usedefault /dev/disk3s1
    

    (คุณสามารถลากไฟล์ไปที่พร้อมท์คำสั่งเพื่อรับเส้นทางแบบเต็ม)

จากนั้นเมื่อคุณรีบูตคุณสามารถ "EFI Boot" เพื่อ rEFInd และควรมีตัวเลือกในการบูต GRUB / linux

ฉันมีเอกสารนี้ในรายละเอียดเพิ่มเติมได้ที่นี่: http://coljac.net/2014/stuff/installing-ubuntu-onto-a-bootable-usb-stick-or-other-device-on-a-mac/


3
หายไป 4 วัน! และตอนนี้ฉันอยู่ที่นี่ขอบคุณ :)
Ahmed Ghoneim

ไม่มีไฟล์ install.sh ในการ refind อีกต่อไป
johndpope

7

หากคุณไม่ต้องการเปลี่ยนบูตโหลดเดอร์เริ่มต้นของ Mac และให้คีย์ USB ของคุณสามารถบูตได้จาก Mac เครื่องใดก็ได้ที่นี่เป็นวิธีแก้ปัญหาที่ฉันพบ:

  • เริ่มรุ่นสด Ubuntu โดยเลือก "ลอง Ubuntu โดยไม่ต้องติดตั้ง"
  • ป้องกันการติดตั้ง bootloader โดยเริ่มโปรแกรมติดตั้งผ่านubiquity --no-bootloaderคำสั่งผ่านเทอร์มินัล
  • ลบและติดตั้ง Ubuntu บนไดรฟ์ USB ปลายทางของคุณ
  • รีสตาร์ท Mac ของคุณและเริ่มบรรทัดคำสั่ง grub โดยใช้ Ubuntu live USB และกด 'c' เมื่อ GRUB bootloader ปรากฏขึ้น
  • ทำการบู๊ตด้วยตนเองของระบบ Ubuntu ที่ติดตั้งไว้
  • แก้ไขพาร์ติชัน EFI:

    • ติดตั้งแพ็คเกจที่ต้องการ:

      $ sudo apt-get update
      $ sudo apt-get install mactel-boot hfsprogs gdisk grub-efi-amd64
      
    • ใช้gdiskและmkfs.hfsplusเพื่อแทนที่พาร์ติชันที่มีอยู่ด้วย Apple HFS / HFS + หนึ่ง

    • แทนที่รายการที่มีอยู่UUID=... /boot/efi vfat defaults 0 1ใน/etc/fstabไฟล์ของคุณด้วยUUID=<your usb EFI partition uuid> /boot/efi auto defaults 0 0
    • วิ่ง sudo mount /boot/efi
    • สร้างไดเรกทอรีและไฟล์ที่ต้องการ:

      $ sudo mkdir -p "/boot/efi/EFI/$(lsb_release -ds)/"
      $ sudo bash -c 'echo "This file is required for booting" > "/boot/efi/EFI/$(lsb_release -ds)/mach_kernel"'
      $ sudo bash -c 'echo "This file is required for booting" > /boot/efi/mach_kernel'
      
    • ติดตั้งด้วง:

      $ sudo grub-install --target x86_64-efi --boot-directory=/boot --efi-directory=/boot/efi --bootloader-id="$(lsb_release -ds)"
      
    • อวยพรรหัส bootloader:

      $ sudo hfs-bless "/boot/efi/EFI/$(lsb_release -ds)/System/Library/CoreServices/boot.efi"
      
    • สร้างการกำหนดค่า GRUB:

      $ sudo sed -i 's/GRUB_HIDDEN/#GRUB_HIDDEN/g' /etc/default/grub
      $ sudo sed -i 's/GRUB_TIMEOUT=10/GRUB_TIMEOUT=0.1/' /etc/default/grub
      $ sudo grub-mkconfig -o /boot/grub/grub.cfg
      

ขณะนี้ระบบสามารถบูตได้จาก Mac เครื่องใดก็ได้เพียงแค่กดปุ่ม "Option" ค้างไว้เมื่อเริ่มต้น

รูปภาพของเมนูการบูต Mac กับรายการ Ubuntu

ฉันมีรายละเอียดคำแนะนำที่นี่: การติดตั้ง Ubuntu บน USB stick พร้อมบูตแท้ของ EFI (เข้ากันได้กับ Mac)


3

ฉันข้ามสิ่ง gdisk ทั้งหมดตามที่กล่าวไว้ในการแก้ปัญหา สิ่งนี้ใช้ได้ผลสำหรับฉันคนเดียว

./refind-install -–usedefault /dev/<EFI-disk-of-external-storage-where-ubuntu-is-installed>

install.sh ไม่ได้เป็นส่วนหนึ่งของการ refind อีกต่อไป (refind-bin-0.11.0) หรือบางทีฉันก็ขาดอะไรไป
johndpope

2

เรื่องราวของฉัน (จะเป็นประโยชน์กับคนที่มีปัญหาเดียวกัน - ดังนั้นจึงเป็นตาของฉันที่จะช่วยชุมชน): ฉันได้ติดตั้ง Ubuntu บนฮาร์ดไดรฟ์ USB 3.0 ภายนอกบน iMac ปลายปี 2013 ฉันสร้างชุดรูปแบบพาร์ติชันต่อไปนี้บนไดรฟ์ภายนอก :

EFI (200MB FAT), BOOT (200MB EXT2) and / (20GB EXT4)

ฉันเลือกที่จะเพิ่ม bootloader ไปยังไดรฟ์ภายนอก (ไม่ใช่ไดรฟ์ iMac) หลังจากการติดตั้งสำเร็จฉันก็ตกใจเมื่อฉันไม่สามารถบูต OS X ของฉันมันแปลกเพราะฉันไม่ได้ติดตั้ง bootloader บนไดรฟ์หลัก หากฉันถอดไดรฟ์ภายนอกออกฉันจะได้รับหน้าจอสีดำพร้อมคำสั่ง grub prompt!

ฉันค้นคว้าออนไลน์และตัดสินใจตัดสินใจ rEFInd ด้วยความตกใจ หลังจากการติดตั้งจากแหล่งที่มา. deb ( http://www.rodsbooks.com/refind/installing.html - แนะนำให้ติดตั้งจากไฟล์. deb เพื่อแก้ไขปัญหาเกี่ยวกับ Ubuntu รุ่น 16.x - # dpkg -i refind_0.10.3-1_amd64.deb) ฉันสามารถบูตได้ OS X ของฉัน

ในการกู้คืนเมนูบู๊ตดั้งเดิม (และ Linux) คุณสามารถใช้ยูทิลิตีดิสก์เริ่มต้นบน OS X ของคุณหรือคุณสามารถเมาท์พาร์ติชัน EFI และด้วยsudo rm ...คำสั่ง "" ลบโฟลเดอร์ "refind" และ "Ubuntu" บนพาร์ติชันนั้น .

รีบูตและทุกอย่างจะทำงานเหมือนเดิม


1

ติดตั้งสำเนาใหม่ของ OSX บนไดรฟ์ภายนอกแล้วติดตั้ง Ubuntu บนไดรฟ์ภายนอกเดียวกันกับที่คุณใช้กับระบบบูทคู่ เมื่อการติดตั้งเสร็จสิ้น Ubuntu จะบูตขึ้นมาจากไดรฟ์ USB หากเสียบไว้หากไดรฟ์ USB ถูกลบคุณจะได้รับบรรทัดคำสั่ง Grub เพียงพิมพ์ "exit" เพื่อบูตการติดตั้ง OSX ภายใน เสียบไดรฟ์ USB เพื่อโหลด Ubuntu

สิ่งนี้ทำให้การติดตั้ง OSX ดั้งเดิมไม่ถูกแตะต้อง

ฉันสามารถติดตั้ง Ubuntu แล้ว Kubuntu บนแฟลชไดรฟ์ USB ขนาด 64GB และทำงานได้ค่อนข้างดี ฉันเพิ่งติดตั้ง Kodi และทำงานได้ดีอย่างน่าประหลาดใจจากแฟลชไดรฟ์ ฉันมี USB 2.0 แค่ช้านิดหน่อย ฉันลงเอยด้วยการติดตั้ง Kubuntu เพราะสภาพแวดล้อมเดสก์ท็อปพลาสมา 5.0 นั้นได้รับการปรับปรุงให้ดีขึ้นกว่าที่ Ubuntu ใช้

ฉันหวังว่านี่จะช่วยลดความซับซ้อนของสิ่งเล็ก ๆ น้อย ๆ มันไม่ใช่วิธีที่สง่างามหรือเทคนิคที่สุดที่จะทำได้ดังนั้นจึงไม่สมบูรณ์แบบ แต่ใช้งานได้


1

หลังจากการเริ่มต้นผิดพลาดเล็กน้อยสิ่งนี้ได้ผล:

ฉันใช้ USB สด (ก็เป็น HD อีกอัน) ที่ทำด้วย dd-copy และ ISO

ฉันแบ่งพาร์ติชั่นดิสก์ (เสียบ 240GB SSD ใน USB3.1 แคดดี้) ด้วย Gparted ไม่ใช่ INSTALLER การจัดเรียงไบต์บล็อกเกิดความสับสนในโปรแกรมติดตั้งและฉันสามารถติดตั้งใน XFS ได้เท่านั้น แต่ความพยายามนั้นล้มเหลวในการบูต ฉันจะได้รับด้วง แต่ไม่มี Ubuntu ดังนั้นฉันจึงลองอีกครั้งกับ Gparted

ฉันใช้เลย์เอาต์พาร์ติชั่นนี้:

efi   (200mB)
\     (44GB, \ the system root) note, this isn't the \boot, it's just  \
swap  (44GB swap)

การติดตั้ง
รีบูตและตัวเลือกค้างไว้
ดิสก์ที่เลือกพร้อมปุ่มลูกศร

นี่คือ imac 2019 ใหม่ osx ไม่เป็นอันตราย


0

ฉันไม่เคยโชคดีกับการเชื่อมต่อ USB ภายนอกโดยตรง แต่เมื่อไม่นานมานี้ฉันเลือกอะแดปเตอร์สายฟ้าของ Seagate GoFlex และสามารถบูตได้อย่างง่ายดายขนาด 27 "iMac ไปยัง Ubuntu บน SATA ภายนอกที่เชื่อมต่อกับมันฉันใช้ rEFInd แต่ไม่ แน่ใจว่ามันจำเป็น Seagate พยายามสร้างความประทับใจที่คุณจะต้องใช้หนึ่งในไดรฟ์ที่เชื่อมต่อกับมัน แต่ไดรฟ์ SATA ขนาดแล็ปท็อปมาตรฐานทำงานได้ดีฉันไม่จำเป็นต้องใช้ไดรฟ์เล็กน้อยเพื่อให้พอดีกับกล่อง จริงๆคำตอบที่คุณกำลังมองหาที่นี่และมันไม่ใช่วิธีแก้ปัญหาราคาถูก (ประมาณ $ 80 ถ้าฉันจำได้อย่างถูกต้อง) แต่มันอาจจะคุ้มค่าขึ้นอยู่กับสถานการณ์ของคุณ


0

เมื่อคุณติดตั้ง Ubuntu บนฮาร์ดไดรฟ์ภายนอกแล้วให้บูต Ubuntu จาก Mac โดยกดตัวเลือก + ปุ่มควบคุมแล้วกดปุ่มลูกศรซ้าย (อาจต้องกดปุ่มลูกศรซ้ายหลาย ๆ ครั้ง)


0

คุณเพียงแค่ต้องใช้ปุ่มตัวเลือกเพื่อรับตัวเลือกการบูต แต่ถ้าคุณต้องการบูตเข้าสู่ Mac OS เป็นค่าเริ่มต้นเมื่อคุณไม่กดปุ่มนี้คุณจะต้องตั้งค่าระดับเสียงเริ่มต้นโดยกดปุ่มควบคุมค้างไว้เมื่อคุณเลือกดิสก์ Mac OS ของคุณมิฉะนั้นจะเป็นการเปิดตัว Grub .

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.