ทำไมฉันไม่สามารถเขียนไปยังบล็อกสุดท้ายของการ์ด SDXC ของฉันบน MBP ได้


9

ฉันมีการ์ดหน่วยความจำ SanDisk SDXC 64GB ซึ่งฉันต้องการใช้กับ MacBook Pro และช่องเสียบการ์ด SD ของฉัน อย่างไรก็ตามฉันมีปัญหาในการฟอร์แมต / การแยก SD การ์ดของฉันและฉันไม่สามารถเข้าใจได้ว่าเกิดอะไรขึ้น

  • เมื่อฉันใส่การ์ด SD ลงในช่องฉันได้รับสิ่งต่อไปนี้จาก Lion: คอมพิวเตอร์ที่คุณใส่ไม่สามารถอ่านดิสก์ที่คุณใส่ เริ่มต้น ... อิงหรือดีดออก

  • หากฉันเปิดดิสก์ยูทิลิตี้ฉันเห็นดิสก์ที่ระบุว่าเป็นApple SDXC Reader Mediaและเมื่อฉันพยายามฟอร์แมตจากแท็บ "ลบ" (เช่น exFAT หรือรูปแบบอื่น ๆ ) ฉันได้รับข้อผิดพลาดต่อไปนี้: การลบดิสก์ล้มเหลวด้วยข้อผิดพลาด: ไม่สามารถเขียนไปยังบล็อกสุดท้ายของอุปกรณ์

พื้นหลังเล็กน้อย: การ์ด SDXC ทำงานได้ดีเมื่อฉันซื้อครั้งแรก แต่ฉันเริ่มใช้sabnzbd http://sabnzbd.org/เพื่อดาวน์โหลดและเขียนไฟล์โดยตรงไปยังการ์ด SD มีบางอย่างเกิดขึ้น (ฉันจำไม่ได้ว่าข้อผิดพลาดคืออะไร) และตั้งแต่นั้นมาฉันก็ไม่สามารถเขียนลงในการ์ดของฉันได้ ฉันพยายามจัดรูปแบบเพื่อแก้ไขปัญหา แต่ดูเหมือนว่าปัญหาจะค่อนข้างลึก

วิธีที่ดีที่สุดในการฟอร์แมตการ์ดเป็น exFAT ผ่านทางเทอร์มินัลคืออะไร? นั่นอาจเป็นสิ่งต่อไปที่ฉันลอง

คุณมีข้อเสนอแนะสำหรับการจัดรูปแบบ / แก้ไขการ์ด SD นี้หรือไม่?


การ์ดมีอายุเท่าไหร่? ถ้าเป็นรุ่นเก่ามันอาจจะมีบล็อกที่ไม่ดีที่คุณไม่สามารถใช้อีกต่อไป diskutilหากคุณต้องการที่จะลองผ่านช่องตรวจสอบ
ughoavgfhw

ฉันซื้อในปี 2011 ดังนั้นจึงค่อนข้างใหม่ นอกจากนี้ฉันเชื่อว่า SDXC นั้นค่อนข้างใหม่ ฉันดู diskutil แล้ว แต่ฉันได้รับข้อผิดพลาดเดียวกัน
Patrick DeVivo

คำตอบ:


5

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

  1. ก่อนที่จะใส่การ์ด SD ลงใน Mac ของคุณตรวจสอบให้แน่ใจว่าสวิตช์ป้องกันการเขียน (ล็อค) ปิดอยู่
  2. เปิดหน้าต่าง Terminal และพิมพ์ diskutil list
  3. ใส่การ์ด
  4. หากข้อความ OS X ปรากฏขึ้นขอให้คุณ "กำหนดค่าเริ่มต้น ... อินชอร์หรือดีด" ให้เลือก "ละเว้น"
  5. จากหน้าต่าง Terminal ให้พิมพ์diskutil listอีกครั้ง
  6. ตรวจสอบความแตกต่างระหว่างผลลัพธ์ของเทอร์มินัลสองตัวเพื่อกำหนดหมายเลขดิสก์สำหรับการ์ด SD ของคุณ คุณควรมองคอลัมน์ซ้ายสุดเพื่อหาสิ่งที่ต้องการ/dev/disk3หรือ 4 หรือ 5 เป็นต้น
  7. ตอนนี้พิมพ์diskutil unmountDisk /dev/disk#โดยที่ # คือหมายเลขที่คุณกำหนดไว้ก่อนหน้านี้
  8. ที่นี่เป็นที่ที่คุณต้องระวังให้มาก ป้อนข้อมูลต่อไปนี้sudo dd if=/dev/zero of=/dev/rdisk# bs=64kและอย่าลืมแทนที่ # ด้วยหมายเลขดิสก์ก่อนหน้า บันทึก 'r' ไว้ด้านหน้า rdisk ในกรณีที่คุณพิมพ์ด้วยมือแทนที่จะคัดลอก / วางข้อความ คุณควรได้รับแจ้งให้ใส่รหัสผ่านเพื่อเรียกใช้คำสั่งนี้เนื่องจากเป็นอันตราย
  9. อดทนจนกว่าจะเสร็จสิ้น คุณสามารถประมาณเวลาด้วยการเปิดแอปพลิเคชั่น "การตรวจสอบกิจกรรม" ในยูทิลิตี้และคลิกที่แท็บ "ดิสก์" ที่ด้านล่างคุณจะเห็นข้อมูลที่เขียน / วินาทีเป็นสีแดง มันควรเป็นตัวเลขบางส่วนใน MB เช่น 5 (64 x 1000 / n) / 60 = minutes until it finishesโดยที่ n คืออัตราเป็น MB ที่คุณเพิ่งกำหนดหรือ 5 ในตัวอย่างของฉัน
  10. เมื่อคำสั่งก่อนหน้านี้เสร็จสมบูรณ์การ์ดควรจะถูกลบอย่างสมบูรณ์และพร้อมสำหรับการจัดรูปแบบ ณ จุดนี้คุณสามารถปิดเทอร์มินัลของคุณและเปิดแอปพลิเคชัน Disk Utility เพื่อสร้างพาร์ติชัน exFAT เหมือนที่คุณเคยทำมาก่อนหน้านี้

Michael Yasumoto - ฉันพยายามทำวิธีของคุณแล้วและฉันได้รับข้อผิดพลาดอินพุต / เอาท์พุต:> dd: / dev / rdisk1: ข้อผิดพลาดอินพุต / เอาท์พุต>> 16385 + 0 บันทึกใน>> 16384 + 0 บันทึกออก>> 1073741824 ไบต์ ถ่ายโอนใน 68.214149 วินาที (15740749 ไบต์ / วินาที) มีความคิดอะไรบ้าง?

1
ข้อความนั้นไม่ใช่ปัญหา เป็นเพราะคณิตศาสตร์ไม่ได้เพิ่มขึ้น เพื่อความเร็วเราเขียน 64kB ลงในการ์ดในเวลาเดียวกัน แต่ขนาดของการ์ดนั้นไม่ได้ถูกหารด้วย 64kB ดังนั้นก้อนสุดท้ายของ 64kB ไม่ได้ถูกเขียนลงในไดรฟ์ โดยทั่วไปคุณพยายามที่จะลบ 1.01GB บนการ์ดที่มีพื้นที่ว่างเพียง 1.00GB เท่านั้นและมันก็บ่นว่ามีของเหลือ 0 ไม่สามารถเขียนได้ หากสิ่งนี้ช่วยคุณได้โปรด +1 คำตอบ ขอบคุณ
Michael Yasumoto

สำหรับขั้นตอนที่ 8 คุณจะต้องลงชื่อเข้าใช้ด้วยบัญชีผู้ดูแลระบบเพื่อที่จะทำงานsudo
nohillside

3
ฉันได้รับ: sudo dd bs = 64k if = / dev / zero of = / dev / rdisk5 dd: / dev / rdisk5: ทรัพยากรไม่ว่าง 1 + 0 บันทึกใน 0 + 0 บันทึก 0 0 0 0 0 0 ไบต์ใน 020 ไบต์โอนย้ายใน 3.020179 วินาที (0 ไบต์ / วินาที)
Joakim

1
เพียงแค่ทราบ: ในขั้นตอนที่ 9 คุณสามารถรับความเร็วปัจจุบันได้โดยการกดctrl + T(ใช่, ctrl , ไม่ใช่คำสั่ง) ในหน้าต่างเทอร์มินัลในขณะที่กระบวนการกำลังทำงาน จากนั้นจะแสดงสถิติบางอย่าง(4643369 bytes/sec)ที่มีในตอนท้าย นี่เป็นบิตที่แม่นยำยิ่งขึ้นเนื่องจากเป็นเพียงความเร็วของกระบวนการทำงานไม่ใช่การเข้าถึงดิสก์โดยรวมของระบบทั้งหมด (ซึ่งคุณได้รับจากการตรวจสอบกิจกรรม)
สูงสุด
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.