Sistem file rusak pada kartu SD

19

Jika saya menggunakan Pi sedikit, korupsi filesystem segera muncul.

Misalnya, file ini diubah ke yang lain:

$ ls -alt  /etc/apt/apt.conf.d
total 16
lrwxrwxrwx 1 root root   13 Oct  2 22:18 50raspi -> ../init.d/ntp

Atau /var/lib/dpkg/info/fake-hwclock.listmenjadi file biner, yang berarti dpkg tidak lagi berfungsi:

dpkg: unrecoverable fatal error, aborting:
 files list file for package 'fake-hwclock' is missing final newline
E: Sub-process /usr/bin/dpkg returned an error code (2)

fsckpada filesystem menemukan banyak kesalahan dan mengirim lusinan file ke lost+found:

Pass 1D: Reconciling multiply-claimed blocks
(There are 34 inodes containing multiply-claimed blocks.)

File /etc/fake-hwclock.data (inode #26, mod time Thu Aug 16 02:20:47 2012) 
  has 1 multiply-claimed block(s), shared with 1 file(s):
        ... (inode #30, mod time Thu Aug 16 02:20:47 2012)

...

Inode 30 ref count is 1, should be 3.  Fix? yes

dmesg menampilkan apa yang tampak seperti kesalahan I / O:

[   49.082758] mmc0: final write to SD card still running
[   59.088233] mmc0: Timeout waiting for hardware interrupt - cmd12.
[   59.089411] mmcblk0: error -110 sending stop command, original cmd response 0x900, card status 0x900

Saya mencoba dengan empat kartu SD yang berbeda, dari membuat SanDisk SDHC 16 GB dan Duracell SDHC 16 GB. Jadi, sepertinya bukan kartunya.

Saya juga mencoba dengan Raspbian 2012-08-16-wheezy dan ArchLinux 13-06-2012. Keduanya memiliki masalah yang sama jadi saya menganggap itu bukan bug di OS.

Mengikuti saran dari @gnibbler dan @Avio, saya menjalankan memtester (yang, tidak seperti memtest86 pada PC, berjalan setelah kernel dan karena itu tidak dapat menguji semua RAM) dan dilaporkan tidak ada masalah. "memtester 200 2" -> semuanya baik-baik saja

Setelah diskusi di http://www.raspberrypi.org/phpBB3/viewtopic.php?f=29&t=6201&start=400 , saya mencoba dari gambar baru dengan config.txt yang ditulis untuk sedikit underclocking:

core_freq 240
arm_freq 650
sdram_freq 350

tapi itu memperburuk masalah (banyak timeout pada kartu)

Saya hanya punya satu Raspberry Pi jadi saya tidak bisa mengecek dengan yang lain. Masalah yang diketahui? Perangkat keras yang rusak?

bortzmeyer
sumber
Ukur tegangan suplai - pastikan benar-benar 5V dan stabil. Bisa disebabkan oleh ram yang salah atau sesuatu. Bisakah Anda menjalankan memtest di atasnya?
John La Rooy
Saya tidak memiliki voltmeter sekarang (saya tidak banyak perangkat keras pria). Setelah keyboard USB, charger dan kabel HDMI, Pi kecil dan murah ini akan menjadi cukup mahal jika saya harus membeli voltmeter.
bortzmeyer
Bukankah pesan "Waktu tunggu menunggu gangguan perangkat keras" merupakan indikasi yang jelas bahwa ada sesuatu yang salah dengan pembaca kartu SD?
bortzmeyer
Saya tidak menemukan gambar dengan memtest. Google tidak menyukai saya atau saya tidak cukup pintar untuk itu. Ada penunjuk?
bortzmeyer
Terima kasih banyak, @ oliver-salzbug, untuk pengeditannya, dan maaf untuk hasil cetakan yang saya masukkan.
bortzmeyer

Jawaban:

5

Mungkin untuk segera menjawab pertanyaan saya sendiri, tetapi, sampai sekarang, opsi yang paling sukses adalah:

over_voltage=2

Sampai sekarang (ini hanya beberapa hari), sepertinya lebih baik (belum ada korupsi atau kartu habis waktu).

Saya bukan ahli dalam masalah listrik jadi, sebelum menggunakan ini pada Pi Anda sendiri, silakan lakukan riset.

Apakah ini berarti Pi saya memiliki masalah tegangan, seperti yang disarankan oleh @gnibbler?

bortzmeyer
sumber
2
Menerima jawaban saya sendiri karena tampaknya berhasil dan saran lainnya tidak.
bortzmeyer
1
Ganti catu daya dengan yang baik yang mengisi daya ponsel modern dan menyediakan 1A nyata atau lebih.
avra
2

Ada kemungkinan yang sangat bagus bahwa Anda memiliki masalah dengan RAM dan, mungkin, Anda tidak mengalami pembekuan kernel karena arsitektur Raspberry Pi entah bagaimana toleran pada tingkat tertentu kerusakan memori .

Hal pertama yang harus dilakukan adalah mengubah pemisahan memori, mengurangi memori video ke minimum, untuk memaksimalkan jumlah RAM yang tersedia ( 240 MB RAM dan 16 MB VRAM ). Saya sarankan untuk memulai dengan yang baru raspbian, yang baru disalin ke SD. Kemudian Anda dapat menginstal dan menjalankan memtester.

sudo aptitude install memtester

Di sini ada tutorial kecil tentang cara meluncurkan memtester, dan ini adalah halaman manual. Baris perintah harus berupa:

sudo memtester 200 2

Di mana 200jumlah MB untuk diuji dan 2jumlah lintasan. Ingat bahwa solusi ini berfungsi murni userspace, sehingga jumlah memori bebas kurang dari jumlah total memori yang tersedia. Jika Anda ingin nomor pastinya, ketik:

cat /proc/meminfo

Namun, mengingat masalahnya bukan pada kartu memori Anda dan Raspberry Pi cukup "monolitik", mungkin satu-satunya pilihan yang tersedia adalah mengembalikan Pi ke pengecer Anda.

Avio
sumber
Saya selalu mengatur memori split ke 240/16 (Saya menggunakan mesin ini untuk pemantauan jaringan, bukan media center).
bortzmeyer
1

Ini adalah pukulan panjang, tetapi setiap kali saya menjalankan rpi-updateuntuk memperbarui firmware sistem file entah bagaimana rusak sehingga saya tidak dapat lagi membuat gambar kartu SD menggunakan dd (lihat pertanyaan saya ). Saya pertama kali memperhatikan ketika mencoba memperbarui firmware secara manual untuk menginstal ffmpegdan baru saja ketika omxplayer mencoba memperbarui firmware.

puk
sumber