ปัญหาในการสร้างพาร์ติชั่น ext4 3TB เนื่องจากข้อผิดพลาดที่กำหนด msdos-partition-table


40

ฉันเพิ่งซื้อไดรฟ์สีเขียวขนาด 3TB WD แต่เมื่อฉันพยายามแบ่งพาร์ติชันแบบ gparted ฉันได้รับข้อผิดพลาดเช่น:

======================
libparted : 2.3
======================
partition length of 5860530176 sectors exceeds the msdos-partition-table-imposed maximum of 4294967295

และเมื่อฉันลองกับ Ubuntu "Disk Utility" ฉันได้รับข้อผิดพลาดที่คล้ายกันเช่น:

Error creating partition: helper exited with exit code 1: In part_add_partition: device_file=/dev/sdc, start=0, size=3000592982016, type=0x83
Entering MS-DOS parser (offset=0, size=3000592982016)
MSDOS_MAGIC found
looking at part 0 (offset 0, size 0, type 0x00)
new part entry
looking at part 1 (offset 0, size 0, type 0x00)
new part entry
looking at part 2 (offset 0, size 0, type 0x00)
new part entry
looking at part 3 (offset 0, size 0, type 0x00)
new part entry
Exiting MS-DOS parser
MSDOS partition table detected
containing partition table scheme = 0
got it
got disk
new partition
Error: partition length of 5860528002 sectors exceeds the msdos-partition-table-imposed maximum of 4294967295
ped_disk_add_partition() failed

1
ฉันไม่มีดิสก์ที่ใช้ทดสอบ - แต่ฉันคิดว่ามีสองวิธีที่เป็นไปได้ในการแก้ไขปัญหานี้ตามที่อธิบายไว้ที่นี่ lists.fedoraproject.org/pipermail/users/2011-September/…
fossfreedom

คำตอบ:


47

รูปแบบตารางพาร์ติชั่นดั้งเดิมที่ใช้กับพีซีนั้นรวมถึงฟิลด์ 32- บิตเพื่อบันทึกจำนวนเซ็กเตอร์ที่ครอบคลุมพาร์ติชันเฉพาะ

ด้วยเซ็กเตอร์ขนาด 512 ไบต์จะกำหนดขนาดพาร์ติชันสูงสุดที่ 2TB (512 * 2 32 )

หากคุณต้องการพาร์ติชันที่มีขนาดใหญ่กว่า 2TB คุณจะต้องแบ่งพาร์ติชันของไดรฟ์ใหม่โดยใช้รูปแบบ GUID Partition Table (GPT) สำหรับดิสก์ หากคุณไม่ได้พยายามที่จะบูตดิสก์ใหม่นี้คุณไม่น่าจะพบปัญหาความเข้ากันได้

ใช้ GParted คุณสามารถทำได้โดยไปที่อุปกรณ์ -> สร้างตารางพาร์ทิชันและเลือก "gpt" จากรายการ


นอกจากนี้หากคุณใช้ GPT เมื่อเทียบกับ MBR คุณสามารถมีพาร์ติชันหลักได้มากขึ้น ด้วย MBR คุณจะได้รับ 4 พาร์ติชั่นหลักเท่านั้นจากนั้นคุณต้องสร้างโลจิคัลพาร์ติชั่นหลังจากนั้นซึ่งน่าผิดหวังและเข้ากันไม่ได้กับระบบปฏิบัติการบางระบบ บน GPT คุณสามารถมีพาร์ติชั่นได้มากมายเช่นบน MacBook Pro ของฉัน: OSX, การกู้คืน OSX, ext4 /, การแลกเปลี่ยน linux, NTFS (Windows)
Naftuli Kay

9
ฉันเพิ่งซื้อ 3TB วันนี้และช่วยชีวิตฉันไว้
Luis Alvarado

2
คุณได้ช่วยชีวิตฉันและเลี้ยงดูเด็กที่อดอยากจำนวนมากในแอฟริกาด้วย
capdragon

12

เพื่อเติมเต็มคำตอบของ James Henstridge สำหรับคำสั่ง w / out gparted ของคอมพิวเตอร์: คุณสามารถบรรลุผลลัพธ์เดียวกันจากบรรทัดคำสั่งด้วยการแยกส่วน สำหรับตัวอย่างด้านล่างฉันใช้ชื่อไดรฟ์sdX(แม้ว่าคุณอาจเป็น sdb, sdc, ... )

sudo parted
(parted) select /dev/sdX
(parted) mklabel gpt
(parted) mkpart primary 0% 100%
(parted) quit
sudo mkfs.ext4 /dev/sdX1

คำตอบที่ยืดเยื้อมากมายในเน็ต แต่ในที่สุดก็เป็นเพียงขั้นตอนง่ายๆ ขอบคุณ!
Richard

3

gdiskนอกจากนี้คุณยังสามารถใช้ ในกรณีของฉันมันสามารถแปลงดิสก์ด้วยพาร์ทิชันและข้อมูลที่มีอยู่จาก MBR เป็น GPT ทำให้ทุกอย่างยังคงเหมือนเดิม อย่างไรก็ตาม YMMV

คุณสามารถค้นหาข้อมูลเพิ่มเติมเกี่ยวกับเรื่องนี้ในฟอรั่ม ArchLinux กระบวนการมีลักษณะดังนี้:

$ sudo gdisk /dev/sda
GPT fdisk (gdisk) version 0.8.5

Partition table scan:
 MBR: MBR only
 BSD: not present
 APM: not present
 GPT: not present

***************************************************************
Found invalid GPT and valid MBR; converting MBR to GPT format.
THIS OPERATION IS POTENTIALLY DESTRUCTIVE! Exit by typing 'q' if
you don't want to convert your MBR partitions to GPT format!
***************************************************************

0

การตั้งค่า RAID10 โดยใช้ไดรฟ์ + 2TB บน Ubuntu 12.04.4 ใช้คู่ 120GB + SDD ใน RAID1 สำหรับบูตและ 2 พาร์ทิชันและ/ /homeพวกเขากลายเป็นอุปกรณ์ md0 และ md1 ของคุณ อุปกรณ์ RAID10 จะเป็นหรือ/home/DATA /home/whateveryouwantคุณสามารถใส่หลายพาร์ติชันบนอุปกรณ์ RAID10 โดยใช้ GParted อีกครั้งเมื่ออุปกรณ์ MD /home/whateveryouwantจะถูกสร้างขึ้นสำหรับติดตั้งอุปกรณ์แต่ละ

ขั้นตอน:

  1. ใช้ตารางพาร์ติชันการตั้งค่า GPARTED ของไดรฟ์> 2TB เป็น GPT แบ่งพาร์ติชันทั้งหมดสำหรับ RAID10 ด้วยหนึ่งพาร์ติชัน EXT4 โดยใช้อุปกรณ์ทั้งหมด ใช้พาร์ติชันจากนั้นตั้งค่าสถานะ RAID บน
  2. สมมติว่าไดรฟ์ 4 + 2TB บนพาร์ติชั่น sda1, sdb1, sdc1, sdd1 (หมายเลขใด ๆ จะใช้งานได้กับ 4,6,8 เร็วที่สุด) ใช้: mdadm -v --create /dev/md2 --level=raid10 --raid-devices=4 /dev/sda1 /dev/sdb1 /dev/sdc1 /dev/sdd1
  3. จะต้องใช้เวลาสักครู่ในการซิงค์การโจมตีดังนั้นให้ตั้งค่านาฬิกาเพื่อรอให้ md0 เสร็จสิ้น ป้อน:watch -n30 cat /proc/mdstat
  4. เมื่อการโจมตีเสร็จสิ้น RESTART
  5. กลับไปที่ GPARTED เมื่อระบบกลับมาและมองหา md2 ของคุณ อาจไม่ได้อยู่ที่นั่น แต่คุณจะพบ md126 หรือ md127 ฯลฯ ที่ตรงกับครึ่งหนึ่งของพื้นที่ไดรฟ์รวม หากใช้พาร์ติชั่น 4 3TB จะแสดงประมาณ 6TB (ครึ่งหนึ่งของ 12TB จริง)
  6. กำหนดอุปกรณ์ md ใหม่ (md127 ในกรณีของฉัน) ด้วยตารางพาร์ติชันใหม่เป็น GPT ใช้มัน!
  7. เพิ่ม 1 หรือมากกว่าหนึ่งพาร์ติชันเป็น ext4 ไม่มีธงและป้ายกำกับหากคุณต้องการ ใช้
  8. เริ่มเทอร์มินัลให้ป้อน: fdisk -l(คุณควรมีอุปกรณ์ md127 ที่มีพาร์ติชันชื่อ md127p1 หากคุณมี 1 พาร์ติชัน md127p2 ฯลฯ ... หากคุณกำหนดมากกว่า 1
  9. ป้อนmkdir /home/DATA หรืออะไรก็ตามที่อยู่ในตำแหน่งของ DATA
  10. ใช้: ls -l /dev/disk/by-uuidเพื่อแสดง uuid สำหรับอุปกรณ์ที่จะคัดลอก md127p1 uuid ในภายหลังใน fstab
  11. Enter: mount -t ext4 /dev/md127p1 /home/DATA จากนั้นป้อน: ls -asl /home/DATA(เพื่อดูไดเรกทอรี) ควรมีเพียงหนึ่งรายการ: lost + found หากคุณสามารถเพิ่ม mount เพื่อ/etc/fstab ใช้:gksudo gedit /etc/fstab

  12. ป้อนบรรทัดก่อนบรรทัด swap uuid=[uuid number for md127p1] /home/DATA ext4 defaults 0 2 (ไม่มีเครื่องหมายวงเล็บในรายการจริงเพียงคัดลอกหมายเลข uuid จากจอแสดงผลเทอร์มินัล (จากบรรทัดผลลัพธ์ที่ 10 คำสั่ง)) ใช้Ctrl+ Cเพื่อออกจาก gedit

  13. ใช้: mount -a เพื่อเมานต์อุปกรณ์ fstab ทั้งหมด

ตอนนี้คุณมีไดรฟ์ RAID10 ขนาดใหญ่มากที่เรียกว่าใน / home / DATA หากต้องการใช้งาน: เป็นเจ้าของโดย root และกลุ่ม root เพื่อเปลี่ยนการใช้ของเจ้าของ: sudo chown youruserid /home/DATA เพื่อเปลี่ยนการใช้กลุ่ม:sudo chgrp users /home/DATA

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