fdisk - ฉันต้องการมันหรือฉันสามารถสร้างระบบไฟล์ได้โดยตรง?


9

ฉันอ่านเกี่ยวกับ fdisk ความสามารถในการสร้างพาร์ติชั่น / ซึ่งจะแยกดิสก์ฟิสิคัลออกเป็นโลจิคัลพาร์ติชันหลายตัว

หากฉันตั้งใจจะใช้ประโยชน์จากทั้งดิสก์โดยรวมฉันยังจำเป็นต้องใช้หรือไม่

1) เพื่อ fdisk และสร้างพาร์ติชันหลักที่ใช้ขนาดของดิสก์ทั้งหมดหรือ

2) ฉันสามารถไปข้างหน้าและ mkfs.ext4 โดยไม่ต้องทำ fdisk ใด ๆ ?

3) และทำไม ->

แก้ไข -> หลังจากอ่านความคิดเห็นทั้งหมด (ของบางใช่และไม่ใช่) ฉันคิดว่ามันจะดีถ้ามีคนสามารถชี้ให้ฉันในสิ่งที่ fdisk ทำจริง? เพื่อให้ฉันสามารถเข้าใจเพิ่มเติมว่าทำไมเราถึงต้องการใช้มันจริง ๆ หากเปรียบเทียบกับที่เราไม่ได้ทำ

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

ฉันได้ลอง mkfs บนดิสก์โดยตรงและติดตั้งเพื่อจัดเก็บข้อมูลและไฟล์ (ดูเหมือนจะไม่มีปัญหา) - ดังนั้นสิ่งนี้ทำให้ฉันอยากรู้มากขึ้นเกี่ยวกับสิ่งที่ fdisk ทำกับดิสก์จัดเก็บข้อมูลจริง

คำตอบ:


5

ไม่คุณไม่ต้องการมัน ดิสก์และระบบไฟล์ของคุณจะทำงานได้ดีโดยไม่มีตารางพาร์ติชัน บาง BSDs เก่าแม้จะทำอย่างนี้ไปโดยปริยายหากคุณเลือกเฉพาะอันตราย

อย่างไรก็ตามขอแนะนำอย่างยิ่งสำหรับเหตุผลด้านความเข้ากันได้


ค่อนข้าง verbose เพิ่มเติม:

คุณสามารถเรียกใช้ mkfs.ext4 ได้โดยตรงที่ / dev / sdb ที่จะได้ผล จากนั้นคุณสามารถเมานต์ได้โดยไม่มีปัญหา ( mkfs.ext4 -F -F /dev/sdb)

คุณสามารถตั้งค่าดิสก์ที่บูตได้ด้วยวิธีนี้ มันจะยังคงต้องใช้รหัสในการบูต ซึ่งหมายความว่าคุณต้องข้ามบิตแรกของดิสก์ (เช่นพื้นที่ที่ใช้โดย MBR และภาคส่วนดั้งเดิมแบบดั้งเดิม) ที่ยังคงเป็นเทคนิคไม่ได้ใช้ MBR แม้ว่าคุณจะหลวมพื้นที่เทียบเท่า

สำหรับการติดตั้งที่ทันสมัยใด ๆ แต่ไม่กี่ภาคส่วนเหล่านั้นมีความจุไดรฟ์เล็กน้อย ฉันขอแนะนำให้ใช้ GPT (หรือในระบบโบราณ MBR) แต่คุณสามารถทำได้โดยไม่ต้อง


ปรากฏว่า mkfs.ext4 ใช้พารามิเตอร์ -F เพื่อบังคับให้สร้างระบบไฟล์แม้ว่าจะปรากฏว่าเป้าหมายไม่ใช่พาร์ติชันหรือแม้ว่าอุปกรณ์เป้าหมายนั้นจะถูกเมาท์ก็ตาม! ฉันคิดว่าสิ่งนี้ชี้ให้เห็นถึงความเสี่ยงโดยธรรมชาติในการทำเช่นนั้น ...
David W

ตกลง และ "ตัวเลือกนี้จะต้องระบุสองครั้ง" เป็นข้อควรระวังที่สอง
Hennes

@Hennes ฉันได้อัปเดตโพสต์ดั้งเดิมของฉันหวังว่าคุณจะดู
Noob

1
เปรียบเทียบ fdisk กับการเขียนดัชนีสำหรับหนังสือ ผู้คนคาดหวังว่าจะมีดัชนีและสับสนเมื่อไม่มี หนังสือที่ไม่มีดัชนีและมีเนื้อเรื่อง / บทเดียวก็ยังใช้ได้อยู่
Hennes

1

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


แม้ว่าฉันตั้งใจจะใช้ที่เก็บข้อมูลเป็นอุปกรณ์ดิบ? ฉันยังต้องการ fdisk หรือไม่ ฉันอ่านเกี่ยวกับการสร้างพาร์ติชัน fdisk แต่ฉันไม่เข้าใจว่าทำไมมันถึงจำเป็น
Noob

1
ถ้าฉันส่งดิสก์ที่มีไบต์ดิบให้คุณและไม่มีข้อมูลอื่นคุณจะตีความมันเพื่อให้ได้ข้อมูลจากมันได้อย่างไร คุณทำไม่ได้ มันเป็นการทำให้ใหญ่เกินไป แต่นั่นคือสิ่งที่ตารางพาร์ทิชันทำ มันบอกว่า "นี่คือที่เก็บข้อมูลบนดิสก์ (ตำแหน่งเริ่มต้น / หยุด / รูปทรงกระบอก / แทร็ค) และนี่คือวิธีการจัดระเบียบ (ระบบไฟล์)"
David W

จริงๆแล้วคุณทำได้ ใช้ฟลอปปี้ เราถือว่าหนึ่งพาร์ติชัน / โวลุ่ม เราระบุระบบไฟล์ที่ใช้ (เนื่องจากเราไม่มี MBR ที่จะบอกเราว่ามีการใช้อะไรเราจำเป็นต้องระบุด้วยตนเองหรือใส่ไว้ใน / etc / fstab) และอ่านข้อมูลสำหรับ filesytem ตัวอย่างคลาสสิก: Floppies และ FAT12
Hennes

1
ไม่มีข้อมูลในตารางพาร์ติชันมาตรฐานที่ไม่มีหรือสามารถทำให้เป็นได้อย่างง่ายดายอยู่แล้วในบันทึกปริมาณการบูตของระบบไฟล์ การพึ่งพาซอฟต์แวร์ใด ๆ บนตาราง MBR / พาร์ติชันเพื่อรับรู้และ / หรือการบูตอย่างถูกต้องจากระบบไฟล์นั้นเป็นสิ่งประดิษฐ์โดยสิ้นเชิง
kreemoweet

1
ไม่คุณไม่จำเป็นต้องมีตารางพาร์ติชั่นและไม่ระบบไฟล์จะถูกละเว้น แต่จะใช้ลำดับของไบต์ (“ วิเศษ”) แทนเพื่อกำหนดประเภทของระบบไฟล์ หากคุณต้องการบู๊ตจากดิสก์มันเป็นสิ่งที่แตกต่างแน่นอน
Daniel B

0

คุณสามารถสร้างระบบไฟล์บนไดรฟ์เปล่า ๆ แต่มันก็ไม่ค่อยได้ผล บางคนก็จัดระเบียบ pendrives แต่สำหรับฮาร์ดไดรฟ์คุณไม่ต้องการ

ถ้ามันจะเป็นไดรฟ์หลัก / ตัวเดียวของคุณมันจะไม่สามารถบูตได้เลยถ้าคุณสร้างมันขึ้นมา สิ่งที่ BIOS ทำคืออ่านเซกเตอร์แรกของไดรฟ์และดำเนินการ (หรือข้ามไปที่ไบท์แรก) คุณไม่ต้องการเรียกใช้ข้อมูลเมตาของระบบไฟล์หรือไม่? โชคดีที่คุณไม่ทำเช่นนั้นเนื่องจากไบออสมีความล้มเหลว - สองไบต์สุดท้ายของเซกเตอร์นั้นจะต้องเป็น 0x55 0xaa สำหรับไบออสเพื่อพิจารณาว่าไดรฟ์นั้นสามารถบู๊ตได้หรือไม่ และคุณคุณมีระบบ UEFI มันยิ่งแย่ลงเนื่องจาก UEFI ต้องการพาร์ติชัน FAT ที่แตกต่างกันในการทำงาน

ถ้ามันจะเป็นฮาร์ดไดรฟ์รองของคุณสิ่งนี้อาจใช้งานได้ แต่ยังคงหมดกำลังใจ - ไม่มีการตรวจจับอัตโนมัติจะทำงานได้เครื่องมือส่วนใหญ่จะบอกคุณว่าไม่ได้ฟอร์แมตไดรฟ์และต้องการแบ่งพาร์ติชัน (ซึ่งจะทำลายข้อมูลของคุณ)

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


ข้อมูลเพิ่มเติมเกี่ยวกับตัวอย่างของ pendrive: นอกจากนี้ยังใช้กับ floppies และ pendrives โดยไม่มี MBR ซึ่งมักเรียกว่า 'รูปแบบ superfloppy'
Hennes

@Torinthiel ฉันได้อัปเดตโพสต์ดั้งเดิมของฉันหวังว่าคุณจะดู
Noob

-1

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

เมื่อฉันแนะนำผู้คนให้รู้จักกับแนวคิดของพาร์ติชั่นและระบบไฟล์ให้กับคนที่ปกติคิดว่า"harddrives, empty vs full"คือสิ่งนี้: ฮาร์ดไดรฟ์เป็นอาคารในขณะที่พาร์ทิชันเป็นห้องจริง คุณจัดรูปแบบพาร์ติชันด้วยระบบแฟ้มที่เฉพาะเจาะจงจากนั้นทำให้สามารถใช้งานได้และในการเปรียบเทียบอาคารสิ่งนี้สอดคล้องกับการประกาศประเภทห้องเช่นห้องครัว vs ห้องนอน (ในคำอื่น ๆ วิธีการใช้งาน)

ตอนนี้เพื่อกลับไปที่คำถามเดิมของคุณคุณไม่สามารถวางระบบไฟล์ลงในไดรฟ์ที่ไม่มีการแบ่งพาร์ติชันได้เนื่องจากตารางพาร์ติชัน (512 ไบต์แรกของไดรฟ์) มีข้อมูลเกี่ยวกับตำแหน่งบนฟิสิคัลไดรฟ์ สำหรับคุณที่จะมีระบบไฟล์มันจะต้องเริ่มต้นที่ไหนสักแห่งที่ตารางพาร์ทิชันสามารถอ้างอิงและมันไม่สามารถอ้างอิงระบบไฟล์ที่ไม่มีพื้นที่ที่กำหนดเช่นพาร์ทิชัน

และถ้าเราจะวางตารางพาร์ติชันในการเปรียบเทียบสิ่งปลูกสร้างฉันคิดว่ามันจะสอดคล้องกับพิมพ์เขียวของอาคาร

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


1
Nope มันไม่จำเป็นต้องเป็น ฉันได้ใช้โดยไม่ต้อง ยังคงแนะนำเป็นอย่างยิ่ง แต่คุณสามารถทำได้โดยไม่ต้อง
Hennes

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