อะไรคือสิ่งที่เทียบเท่ากับคำสั่ง Linux "sudo fdisk -l" ใน MacOS?


36

ใน Linux คำสั่ง sudo fdisk -l สร้างเอาต์พุตที่แสดงรายการดิสก์และพาร์ติชันทั้งหมดในคอมพิวเตอร์ นี่คือตัวอย่าง:

Example of fdisk -l output

ถ้าฉันลองใช้ sudo fdisk -l ใน MacOS X 10.7.5 ผลลัพธ์เป็นสิ่งต่อไปนี้:

fdisk: illegal option -- l
usage: fdisk [-ieu] [-f mbrboot] [-c cyl -h head -s sect] [-S size] [-r] [-a style] disk
    -i: initialize disk with new MBR
    -u: update MBR code, preserve partition table
    -e: edit MBRs on disk interactively
    -f: specify non-standard MBR template
    -chs: specify disk geometry
    -S: specify disk size
    -r: read partition specs from stdin (implies -i)
    -a: auto-partition with the given style
    -d: dump partition table
    -y: don't ask any questions
    -t: test if disk is partitioned
`disk' is of the form /dev/rdisk0.
auto-partition styles:
  boothfs     8Mb boot plus HFS+ root partition (default)
  hfs         Entire disk as one HFS+ partition
  dos         Entire disk as one DOS partition
  raid        Entire disk as one 0xAC partition

มีคำสั่งใน MacOS เพื่อทำซ้ำพฤติกรรมของ fdisk -l ใน Linux?

คำตอบ:


48

คุณสามารถใช้เครื่องมือ 'diskutil' เพื่อ:

% diskutil list
/dev/disk0
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *500.1 GB   disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:          Apple_CoreStorage                         499.2 GB   disk0s2
   3:                 Apple_Boot Recovery HD             650.0 MB   disk0s3
/dev/disk1
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                  Apple_HFS Macintosh HD           *498.9 GB   disk1

1
@VitoShadow - ให้แน่ใจว่าได้รับคำตอบที่ถูกต้องโปรด (ฉันคิดว่าคุณทำได้ในระดับของคุณ)
nerdwaller

แต่ถ้าฉันต้องการทราบบล็อกของพาร์ติชั่นล่ะ?
johnboiles

6

เท่าที่ฉันจำได้...

สำหรับ Mac OS X:

  1. diskutil ( manpage ) เป็นเครื่องมือบรรทัดคำสั่งสำหรับทุกสิ่งที่ Mac OS X สามารถใช้งานได้เช่นจะให้มากหรือน้อยกว่า Disk Utility ที่สามารถทำกราฟิกได้
  2. สำหรับไดรฟ์ที่แบ่งพาร์ติชัน MS-DOS MBR (Master Boot Record) fdisk ( manpage )
  3. สำหรับไดรฟ์ที่แบ่งพาร์ติชันของ Apple APM (Apple Partition Map) ให้ใช้ pdisk ( manpage )
  4. สำหรับไดรฟ์ที่แบ่งพาร์ติชันสำหรับ Apple และ (U) EFI GPT (GUID Partition Table) ให้ใช้ gpt ( manpage )

หากคุณต้องการคำสั่ง GPT ที่เหมือน fdisk คุณควรลอง gdisk "GPT fdisk" จาก Rod Smith คุณสามารถหา (สำคัญ) ข้อมูลที่เกี่ยวข้องที่นี่ และ ดาวน์โหลดข้อมูลได้ที่นี่ .

สำหรับ Linux:

Modern Linux ใช้ parted สำหรับการแบ่งดังนั้น fdisk อาจยังอยู่ใกล้ แต่คุณต้องการใช้จริงๆ parted แทน.

  • แยก GNU parted รองรับตารางพาร์ทิชันทั่วไปทั้งหมดรวมถึง MBR, APM และ GPT ลีนุกซ์ส่วนใหญ่มีคู่มือที่ดีสำหรับการใช้งาน partedเช่นระหว่างการติดตั้ง แต่ฉันแนะนำให้อ่าน wikipages เสมอ ArchLinux —IMHO พวกเขาดีที่สุดยกเว้นว่าอันนี้ปัจจุบันยังไม่ทันสมัยมาก (30 ธ.ค. 2559)!
  • fdisk ใช้สำหรับพาร์ติชัน MBR เท่านั้น หากคุณพยายามเปลี่ยนตารางพาร์ติชันในดิสก์ที่แบ่งพาร์ติชัน GPT คุณจะเสียหาย "protective MBR" ซึ่งเป็นส่วนหนึ่งของข้อกำหนด GPT แทน parted จะป้องกันคุณจากการทำเช่นนั้น!
  • pdisk ได้รับการย้ายจากดาร์วิน (ฐาน BSD ของ Mac OS X) ไปยัง Linux ดังนั้นคุณสามารถใช้ pdisk เพื่อสร้างตารางพาร์ติชัน APM และจัดการพาร์ติชัน ปัญหาคือลีนุกซ์รุ่นใหม่ไม่ได้รวมแพ็คเกจที่คอมไพล์ด้วย pdisk อีกต่อไป สถานะของ pdisk
  • mac-fdisk เป็นวิธีที่จะไปบน Linux / PowerPC การแจกแจงส่วนใหญ่ x86 (และ x64) ไม่รวมอยู่ mac-fdisk เพราะมันเป็น big-endian เท่านั้น มองไปที่ Debian คุณเห็นว่ามีเฉพาะแพ็คเกจ powerpc / powerpc64 เท่านั้นยกเว้นแพ็คเกจทดลองสำหรับ m68k แต่ไม่ใช่ x86 Linux เท่านั้นที่ฉันรู้ว่ามันใช้งานได้ mac-fdisk ใน x86 / amd64 คือ Gentoo Linux .
  • สำหรับพาร์ติชัน GPT parted ทำผลงานได้ดีมาก หากคุณต้องการเครื่องมือบรรทัดคำสั่ง fdisk คุณสามารถใช้ gpt หรือ gdiskแม้ว่าอาจมีมากกว่านั้น ...

ในการตอบคำถามของคุณ:

fdisk บน macOS (ก่อนหน้า OS X, Mac OS X เดิม) ทำหน้าที่เหมือนกัน แต่คุณควรตรวจสอบรูปแบบการแบ่งพาร์ติชันที่ใช้:

  1. x86- พีซี (16- บิต, 32- บิต "i386" และ 64- บิต "x64") ด้วยการใช้ BIOS (d) บันทึกพาร์ติชันหลัก (MBR)
  2. Intel Itanium (IA-64), x86-PCs (IA-32) ซึ่งรวมถึง 64 บิตเช่น amd64 เช่น x64 เช่น x86-64 ) กับ UEFI และ Intel-Macs ทั้งหมดใช้ EFI / UEFI ( สากล ส่วนต่อประสานเฟิร์มแวร์แบบขยาย) ใช้ ตารางพาร์ติชัน GUID (GPT)
  3. Apple Macintosh ที่ทำงานบน m86k (ชุดประมวลผลโมโตโรล่า 68000) และการใช้ PowerPC Apple Partition Map (APM)

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

ดังนั้น: ถ้าคุณใช้ fdisk สำหรับ Mac บนไดรฟ์ภายในคุณจะไม่มีโชคเพราะไม่มี MBR ในไดรฟ์นั้น มันเป็นทั้ง APM หรือ GPT เช่นเดียวกันถ้าคุณใช้ fdisk บนพีซีที่ทันสมัยที่มี UEFI (หรือ Intel Mac ที่มี EFI) คุณจะเห็น MBR ป้องกันของ GPT เท่านั้นไม่ใช่ตารางพาร์ติชันที่แท้จริง

สำหรับการสร้าง / จัดการพาร์ติชั่นให้เรียกใช้ fdisk บนไดรฟ์ภายนอกที่ใช้การแบ่งพาร์ติชัน MBR จะทำงานบน macOS เหมือนบน Linux

สำหรับการแสดงรายการพาร์ติชั่นที่มีอยู่บน macOS (Mac OS X) ให้ใช้ sudo diskutil list (ดูสิ่งนี้ด้วย บทความที่ยอดเยี่ยมนี้ที่ OSXDaily.com ) บน Linux สิ่งที่เทียบเท่าคือ sudo parted -lหรือถ้าคุณต้องการไดรฟ์เฉพาะเท่านั้น sudo parted /dev/sda print.


และอย่าลืมเกี่ยวกับ CoreStorage ผู้จัดการปริมาณตรรกะ
Daniel B

เมื่ออ่านทั้งหมดนี้อีกครั้งฉันตระหนักว่าคำตอบสั้น ๆ สำหรับคำถามนี้คือการใช้ diskutil. สิ่งที่ฉันตั้งใจจะชี้ให้เห็นก็คือ fdisk อาจแสดงรายการพาร์ติชันบน Linux และไม่ชัดเจนบน macOS แต่ใช้ fdisk มีความเสี่ยงเนื่องจากถูก จำกัด ไว้ที่ MBR พาร์ติชัน ไดรฟ์ที่ทันสมัยมา GPT แบ่งพาร์ติชัน - fdisk ล้าสมัยและกลายเป็นอันตรายเนื่องจากจะแสดงเฉพาะส่วน MBR ที่ป้องกันของ GPT เท่านั้น รุ่น Linux ของ fdisk ได้รับการแก้ไขเพื่อแสดงพาร์ติชัน GPT เช่นกัน แต่ใช้ macOS diskutilดังนั้นจึงไม่จำเป็นต้องใช้งานจริง -l กับ fdisk อย่างไรก็ตาม.
luttztfz

มันทำให้สับสนมากขึ้นเนื่องจากมี GPT ที่รองรับเวอร์ชันของ fdisk สำหรับ Linux โดยส่วนตัวแล้วฉันคิดว่ามันยอดเยี่ยมกว่ามาก partedอีกด้วย
Daniel B

@DanielB: ใช่เหมือนที่ฉันพูดถึงบางรุ่น Linux fdisk ได้รับการแก้ไขเพื่อใช้กับ GPT IMHO เป็นเครื่องมือที่ยอดเยี่ยมสำหรับ GPT บน Linux และ macOS เท่านั้น gdisk เช่น“ gpt-fdisk” แต่ gpt จะทำงานและบน Linux เท่านั้น parted จะทำงานให้ถูกต้อง มันซับซ้อนยิ่งขึ้นกับสิ่งต่างๆเช่น BootCamp หรือการตั้งค่ามัลติบูตอื่น ๆ ไม่ต้องพูดถึงการจัดแนวที่ไม่ได้มาตรฐานและเซ็กเตอร์ 4k อาคา “ รูปแบบขั้นสูง” ฉันเพิ่งพบว่ามันน่าสนใจที่ fdisk ชัดเจนว่าเป็นประวัติของชื่อ MS-DOS สำหรับเครื่องมือการแบ่งพาร์ติชันยังคงอยู่ในใจของผู้คนสำหรับการแสดงรายการพาร์ติชันแม้กระทั่งในระบบที่ทันสมัย
luttztfz

2

เพียงใช้ fdisk / dev / rdisk0 เพื่อรับ CHS และสิ้นสุดบล็อกของพาร์ติชัน

LiuJianweis-iMac:~ liujianwei$ sudo fdisk /dev/rdisk0
Password:
Disk: /dev/rdisk0   geometry: 15566/255/63 [250069680 sectors]
Signature: 0xAA55
        Starting       Ending
 : id  cyl  hd sec -  cyl  hd sec [     start -       size]
1: EE 1023 254  63 - 1023 254  63 [         1 -  250069679] <Unknown ID>
2: 00    0   0   0 -    0   0   0 [         0     -      0] unused      
3: 00    0   0   0 -    0   0   0 [         0 -          0] unused      
4: 00    0   0   0 -    0   0   0 [         0 -          0] unused 

ฉันได้ fdisk: /dev/rdisk0: Operation not permitted แม้ว่าจะได้รับรหัสผ่าน sudo
Chang Qian
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.