วิธีการฟอร์แมทแท่ง USB (แฟลชไดรฟ์) ด้วย FAT32 สำหรับใช้งานบน Linux และ Windows


11

ฉันต้องการฟอร์แมตเมมโมรี่สติ๊กสำหรับการย้ายข้อมูลระหว่าง Windows 7 และเซิร์ฟเวอร์ Ubuntu ที่ไม่ใช่เครือข่าย (แม่นยำ)

ฉันไม่แน่ใจว่าวิธีใดวิธีหนึ่งที่ฉันลองใช้นั้นถูกต้องแม้ว่าฉันจะสามารถอ่านและเขียนลงในไดรฟ์ได้จากทั้งสองเครื่อง

ฉันได้รับรายชื่อพาร์ทิชันที่ดูแปลก ๆfdiskหากฉันฟอร์แมตไดรฟ์บน Windows (โดยใช้เครื่องมือการจัดการดิสก์) แต่ดูเหมือนว่าจะใช้ได้ในแง่ของการอ่านและการเขียนบน Linux และ Windows

อิมเมจแสดงเอาต์พุตของ fdisk สำหรับไดรฟ์ที่ฟอร์แมต Windows

และcfdiskรายงาน

FATAL ERROR: Bad primary partition 1: Partition begins after end-of-disk.

ถ้าในฐานะผู้สนับสนุนบางคนฉันใช้cfdiskเพื่อสร้างพาร์ติชันหลักแบบเต็มสำหรับดิสก์b(หรือfdiskเพื่อสร้างพาร์ติชันที่เริ่มต้นที่บล็อกสองพันและบางอย่าง) จากนั้นออก

sudo mkfs.vfat -n some_label /dev/sdf1

จากนั้น Windows จะไม่รู้จักระบบไฟล์ (หลังจากคิดล่วงหน้า)

Linux และ Windows จะอ่านและเขียนไดรฟ์ 2GB อย่างมีความสุขถ้าฉันสร้างพาร์ติชันเดียวกัน แต่จากนั้นออก:

sudo mkfs.vfat -I -n some_label /dev/sdf

แต่เรื่องนี้ทำให้เต็มรูปแบบดิสก์แสดงพาร์ทิชันเป็นพื้นที่ฟรีในcfdiskและfdiskและ Windows ไม่ชอบไดรฟ์ 16GB

ฉันได้ลองใช้partedด้วย แต่ Windows ก็ไม่เคยพอใจกับพาร์ติชั่นใด ๆ ที่ฉันสร้างบน Linux

ฉันกังวลว่าในขณะที่ไดรฟ์ดูเหมือนว่าจะใช้งานได้ฉันอาจพบว่าข้อมูลไม่ได้ถูกถ่ายโอนอย่างซื่อสัตย์

ฉันกำลังใช้ไดรฟ์ SanDisk Cruzer ในหลากหลายช่วงอายุรสชาติและขนาด

วิธีที่ถูกต้องในการจัดรูปแบบบน windows และละเว้นปัญหาที่ cfdisk และ fdisk มีหรือมีวิธีที่ถูกต้องที่ทุกคนมีความสุขกับไดรฟ์หรือไม่


คุณลองใช้เครื่องมือ "HP USB Format" แทน diskmgmt.msc หรือไม่?
GENIEBEN

1
ใช้ gparted สร้างดิสก์ NTFS ใช้ใน windows อีกวิธีคือเพียงแค่ลบทุกอย่างออกจากมัน (ไม่มีพาร์ติชันเลย) จากนั้นแบ่งพาร์ติชันใน windows ด้วย compmgmt.msc หรือ HP USB Tool จากนั้นใช้ใน Windows และ linux
72DFBF5B A0DF5BE9

@GENiEBEN ฉันไม่ได้และฉันก็ดูเหมือนจะไม่สามารถหาแหล่งที่เชื่อถือได้สำหรับมัน
jah

คำตอบ:


9

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

mount /dev/sdf /mnt

คุณสามารถใช้mkfs, fsckและเครื่องมืออื่น ๆ ในลักษณะที่คล้ายกัน คุณสามารถใช้ในการตรวจสอบนี้ในขณะที่blkid blkid /dev/sdfถ้ามันบอกคุณว่า/dev/sdfเป็นระบบไฟล์ FAT (หรืออื่น ๆ ) แล้วสมมติฐานของฉันถูกต้อง

หากดิสก์มีข้อมูลที่คุณไม่ต้องการที่จะรักษาและคุณต้องการที่จะสร้างระบบแฟ้มสดในนั้นคุณสามารถทำได้ในทั้งดิสก์หรือคุณสามารถใช้fdisk, partedหรือบางเครื่องมืออื่น ๆ เพื่อสร้างความสดใหม่ (ว่าง) ตารางพาร์ทิชัน ในสิ่งfdiskนี้คุณต้องทำด้วยoคำสั่งที่เมนูหลัก สิ่งนี้จะล้าง "พาร์ทิชัน" ที่มีอยู่ (ซึ่งอาจfdiskเป็นความพยายามอย่างยิ่งยวดที่จะตีความภาคแรกของระบบไฟล์ FAT) และสร้างตารางพาร์ติชันใหม่ที่ว่างเปล่า จากนั้นคุณจะใช้nเพื่อสร้างพาร์ติชันใหม่บันทึกการเปลี่ยนแปลงด้วยwและใช้mkfsหรือmkdosfsนอกfdiskเพื่อสร้างระบบไฟล์/dev/sdf1ใหม่

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


1
ระเบียบที่รายงานโดย fdisk (ดูภาพหน้าจอในคำถาม) สามารถแก้ไขได้โดย zeroing ไดรฟ์ด้วยdd if=/dev/zero of=/dev/sdfหรือshred -n 0 -z /dev/sdfก่อนสร้างพาร์ติชัน
jah

3
สร้างพาร์ติชันด้วยfdisk /dev/sdf(โดยใช้ค่าเริ่มต้นที่แสดงในโหมดการโต้ตอบ) ชนิดb (Windows95)(ทำให้เป็นชนิดc (Windows95 (LBA))สำหรับไดรฟ์ 16GB - นี่คือสิ่งที่ Windows ทำ) และจัดรูปแบบโดยใช้อย่างใดอย่างหนึ่งmkfs.vfat /dev/sdf1หรือใน Windows ด้วยเครื่องมือ Disk Management (ซึ่งรายงานระบบไฟล์ว่า 'RAW' เมื่อเสียบปลั๊กไดรฟ์ครั้งแรก) ทั้งสองวิธีจะส่งผลให้ไดรฟ์ที่ fdisk รายงานอย่างสม่ำเสมอ หมายเหตุว่าผลนี้ในพาร์ทิชันซึ่งไม่ได้เป็น 'ทั้งดิสก์' และเพื่อให้เป็นที่หนึ่งไปยัง/dev/sdf1 mount
jah

ฉันไม่สามารถยืนยันสมมติฐานของคุณสมิ ธ @Rod เพราะไดรฟ์นี้ไม่ได้ในขณะนี้ 'ทั้งดิสก์': sudo blkid /dev/sdfรายงานอะไรเลย แต่ไม่รายงานsudo blkid /dev/sdf1 TYPE="vfat"ขอบคุณมากสำหรับคำตอบของคุณตอนนี้ผมมีไดรฟ์ที่ทำงานผมมีความเชื่อมั่นใน.
Jah
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.