Raspberry Pi ของฉันเสียหายอย่างถาวรการ์ด SD?


26

Raspberry Pi ของฉันทำงานได้ดีเป็นเวลาสองเดือน จากนั้นบางไฟล์ใน/usr/binได้รับความเสียหายและมีข้อผิดพลาดมากมายในการรีบูต

ฉันพยายามเขียนภาพสด แต่ddจะบล็อกและไม่ทำอะไรเลย

sudo dd if=~/2013-02-09-wheezy-raspbian.img of=/dev/mmcblk0 bs=4M

ฉันสังเกตเห็นว่าการ์ด SD ของฉันไม่ได้อยู่ในรายการที่เข้ากันได้ดังนั้นฉันจึงเริ่มต้นด้วยการ์ด SD ที่รองรับใหม่เมื่อสัปดาห์ที่แล้วและตอนนี้สิ่งเดียวกันก็เกิดขึ้น

การ์ดดูเหมือนจะติดอยู่ในสถานะอ่านอย่างเดียวและddและfdiskไม่มีผลกระทบ

ฉันดึงสายไฟสองสามครั้งเพื่อเริ่มระบบใหม่หลังจากsshหยุดทำงาน - ฉันใช้งานโดยไม่มีจอภาพและแป้นพิมพ์

เป็นไปได้หรือไม่ที่จะเกิดความเสียหายกับการ์ด SD อย่างถาวรโดยดึงสายไฟ?

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

มีอะไรอีกบ้างที่ฉันสามารถลองใช้งานการ์ด SD ได้อีกครั้ง

หากฉันพยายามฟอร์แมตการ์ดด้วยกล้องของฉันจะมีข้อความระบุว่า "format error"

เมื่อฉันใส่การ์ด SD แสดงdmesg

...
[52254.614980] end_request: I/O error, dev mmcblk0, sector 1696056
[52254.614983] end_request: I/O error, dev mmcblk0, sector 1696064
[52254.614987] end_request: I/O error, dev mmcblk0, sector 1696072
[52254.615058] Aborting journal on device mmcblk0p2-8.
...
[52666.031183] journal commit I/O error
[52666.031186] journal commit I/O error
....
[52666.031220] journal commit I/O error
[52666.031227] journal commit I/O error
[52666.083902] EXT4-fs error (device mmcblk0p2): ext4_put_super:819:     
Couldn't clean up the journal
[52666.083910] EXT4-fs (mmcblk0p2): Remounting filesystem read-only

อัปเดต: ฉันมีการจัดการในการเขียนภาพสดไปยังการ์ด SD ที่สอง แต่การ์ดแรก (คิงส์ตัน 8 GB ชั้น 4 ไม่ได้อยู่ในรายการที่รองรับ) ยังคงเสีย เพราะมันเป็นการ์ดใบเดียวซึ่งดูเหมือนว่าจะพังผมไม่ได้กังวลมากนักว่ามันจะเกิดขึ้นต่อไป ฉันเดาว่านี่เป็นครั้งเดียว

Raspberry Pi ของฉันตอนนี้ไม่ค่อยบูท ฉันตรวจสอบแรงดันไฟฟ้าที่ Raspberry Pi และมันค่อนข้างต่ำดังนั้นฉันสงสัยว่ามันเป็นสาเหตุของปัญหาของฉัน ฉันได้สั่งแหล่งจ่ายไฟใหม่ อย่างไรก็ตามฉันไม่รู้ว่าทำไม Raspberry Pi จึงใช้งานได้นานมาก


1
คุณช่วยยืนยันได้ไหมว่าเมื่อคุณพยายามที่จะเขียนการ์ดที่เสียคุณกำลังใช้คอมพิวเตอร์เครื่องอื่นกับเครื่องอ่านการ์ด SD ที่ทำงานได้ดีกับการ์ดอื่น? คุณสามารถให้ddคำสั่งที่คุณใช้เพื่อเขียนไปยังการ์ดได้หรือไม่? คุณช่วยกรุณาตรวจสอบdmesgเพื่อดูว่ามีข้อผิดพลาด I / O เกี่ยวกับบัตรของคุณ?
Krzysztof Adamski

หากคุณกำลังจะลดกำลังไฟลงไปที่ Pi ตรวจสอบให้แน่ใจว่ามันทำงานได้ทันทีและไม่ช้า การดึงสายไฟออกอย่างช้าๆสามารถทำได้และจะทำให้การ์ด SD ของคุณเสียหายในที่สุด ฉันขอแนะนำอย่างยิ่งให้รับแหล่งพลังงานด้วยสวิตช์ไฟ เมื่อฉันเริ่มใช้สวิตช์ไฟแทนที่จะดึงสายไฟจาก Pi ฉันไม่เคยมีการ์ด SD เสียหาย นอกจากนี้การเลือกแหล่งจ่ายไฟของคุณเป็นสิ่งสำคัญมาก ตรวจสอบให้แน่ใจว่ามีอย่างน้อย 1,000 mA และมีเอาต์พุตที่สอดคล้องกัน ฉันจะไม่ใช้พลังงาน Pi จากฮับ USB เดียวกันที่คุณใช้เชื่อมต่อกับอุปกรณ์
Jerry Gagnon

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

ฉันมีราสเบอรี่สามตัวและมีปัญหาเดียวกัน ตอนนี้ฉันมีการ์ด SD สองใบเกิดความเสียหายและอ่านได้อย่างเดียวและไม่มีลูกเล่นใด ๆ ที่ใช้ fsck, fdisk หรือยูทิลิตี้อื่น ๆ ใน Linux หรือ Windows ได้ทำการแก้ไข ฉันตัดสินใจที่จะโยนไพ่หนึ่งใบลงในกล้อง Samsung ของฉันและลองฟอร์แมตการ์ด เพื่อความประหลาดใจและความสุขของฉันฟังก์ชั่นการจัดรูปแบบในกล้องเรียกคืนการ์ดและใช้งานได้อีกครั้ง น่าเสียดายที่ฉันไม่สามารถกู้คืนการ์ดอื่นด้วยสิ่งนี้เนื่องจากเป็นการ์ด SD ขนาดเต็มและไม่ใช่ MicroSD ที่มีอะแดปเตอร์และกล้องของฉันมีช่องเสียบ MicroSD กล้องเป็น Samsung ST72 เพียงแค่ FYI
Kelli Mac

คำตอบ:


11

ปัญหาและความเสียหายที่อาจเกิดขึ้น

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

วิธีแก้ไข

  1. Mac

เสียบการ์ด SD เข้ากับ Mac จากนั้นเปิดDisk Utilityและลบพาร์ติชันของคุณ จากนั้นเรียกคืน ในที่สุดภาพบัตรอีกครั้ง หากคุณต้องการความช่วยเหลือเพิ่มเติมโปรดดูบทช่วยสอนนี้

  1. ของ windows

ใช้Win32 ดิสก์ Imager ซอฟแวร์ อีกครั้งให้ลบพาร์ติชั่นคืนค่าแล้วทำการอิมเมจการ์ดอีกครั้ง

  1. ลินุกซ์

หากต้องการรีเซ็ต SD เป็นอ่าน - เขียนให้พิมพ์hdparm -r0 /dev/xxxลงในเทอร์มินัล คุณอาจต้องลบพาร์ติชันก่อน

วิธีการหลีกเลี่ยง

จากนี้ไปคุณไม่ควรปิด Raspberry Pi โดยการถอดปลั๊กออก ให้ไปที่คอนโซลและพิมพ์:

sudo shutdown -h now

หรือหากคุณใช้งานอยู่startxให้คลิกปุ่มออกจากระบบแล้วเลือกปิดเครื่อง


14
เท่าที่ฉันรู้ว่ามันเป็นไปไม่ได้ที่จะทำลาย SD card ของตัวเองโดยการดึงพลังงาน อย่างไรก็ตามเป็นไปได้ที่จะทำให้ระบบไฟล์เสียหายบนการ์ด
Krzysztof Adamski

2
ระบบไฟล์ที่ทันสมัยส่วนใหญ่กำลัง journeling ระบบไฟล์และจะไม่เสียหายโดยการสูญเสียพลังงานด้วยวิธีนี้ (แม้ว่าพวกเขาอาจสูญเสียการเปลี่ยนแปลงล่าสุด) อย่างไรก็ตามการ์ดหน่วยความจำมักจะโกหกเคอร์เนลเกี่ยวกับสิ่งที่ซิงค์ออกมา สิ่งนี้นำไปสู่ระบบไฟล์ที่เสียหาย
DonGar

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

อีกวิธีที่สั้นกว่าในการปิด Pi คือ 'sudo halt'
แมทธิว

วิธีที่ดีกว่ากับบัตรฟอร์แมต SD บน Windows และ Mac OS คือการใช้ของ SD Association ของSD ฟอร์แมต มันเป็นวิธีที่เป็นทางการที่คุณควรจะจัดรูปแบบฮาร์ดการ์ด
scruss

5

ปัญหาคือคุณไม่สามารถไปที่คอนโซลได้เนื่องจาก Raspberry Pi หยุดทำงาน SSH ทำงานบางส่วน แต่จะไม่ยอมรับรหัสผ่านและ WebIDE ของ Adafruit หยุดทำงานและจะไม่รับอินพุต ไม่มีทางเลือกนอกจากดึงปลั๊ก ประมาณ 25% ของเวลาที่ใช้งานได้ แต่ก็หลีกเลี่ยงไม่ได้ที่ระบบไฟล์จะได้รับความเสียหายในที่สุด มันแย่ลงเรื่อย ๆ แม้ว่าบูตโหลดเดอร์จะทำให้คุณหยุดเคอร์เนลและมันก็ไม่สามารถพิมพ์อะไรได้เลย การแปลใหม่หมายถึงการสูญเสียงานทั้งหมดของคุณ เราต้องการทางออกที่ดีกว่า


2

คุณสามารถใช้ 'hdparm -r0 / dev / xxx' เพื่อรีเซ็ตเป็นอ่าน - เขียน ส่วนตัวแล้วฉันต้องลบพาร์ติชันและใส่ sdcard ใหม่เพื่อให้สามารถใช้ dd เพื่อคัดลอกภาพใหม่ไปยังการ์ดได้


ฉันลองสิ่งนี้ แต่ dd ยังบล็อกอยู่ ฉันคิดว่าการ์ดต้องแตก
Thomas Rynne

0

มีวิธีแก้ปัญหาที่ดีกว่า - เพียงนำการ์ดเข้าไปในเครื่องอ่านที่แนบมากับเครื่องอื่นแล้วเรียกใช้ fsck จากเครื่องนั้น [หวังว่ามันจะใช้งานได้!] แน่นอนว่าปัญหาที่แท้จริงคือการเรียกใช้ fsck ตั้งแต่แรกซึ่งสามารถหลีกเลี่ยงได้โดยการปิดเครื่องอย่างถูกต้องซึ่งตรงข้ามกับการดึงพลังงานโดยไม่คำนึงถึงว่าหัวขาดหรือไม่


0

หลังจาก DD ล้มเหลวในการ์ด SD ซ้ำ ๆ ผมใช้เครื่อง Windows 7 เพื่อลบพาร์ทิชันและฟอร์แมตเป็นFAT32 เท่านั้นจากนั้นจะให้ภาพ Raspberry Pi ที่ทำงานได้

ตอนนี้ฉันมักจะเรียกใช้ต่อไปนี้ก่อน dd (หรือ dcfldd) - ทำภาพใหม่:

time dcfldd if=/dev/zero of=/dev/sdc statusinterval=1 sizeprobe=of

แหล่งที่มาที่แนะนำ/dev/zeroทราบว่ากระบวนการอาจทำให้อายุการใช้งานของการ์ดสั้นลง

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