EBay'den 64 GB SD kart satın aldım. Bir Arch Linux ARM görüntüsünü yaktığımda ve Raspberry Pi'mi başlatmak için kullandığımda iyi çalışıyor.
Ancak, kartın tüm kapasitesini kullanmak için tek bir ext4 bölümü oluşturmaya çalıştığımda hatalar oluşuyor. mkfs.ext4
her zaman mutlu biter; ancak, bölüm mount
düzenlenemez, her zaman bir hata atar ve dmesg
çekirdek mesajları içerir gösterir Cannot find journal
. Bunun en az iki platformda olduğu kanıtlanmıştır: Arch Linux ARM ve Ubuntu 13.04.
Diğer yandan hatasız bir FAT32 bölümü oluşturabilir ve monte edebilirim (tam kapasite kontrolü yapılmadı).
Bazı kötü adamların SD kart arayüzünü işletim sistemine yanlış bir kapasite bildirmek için değiştirebileceğini duydum (yani kart gerçekten sadece 2 GB, ancak 64 GB olarak rapor ediyor), kartı daha iyi bir fiyata satmak için.
badblocks
SD kartta kötü bloklar olup olmadığını kontrol etmek için benim gibi araçların olduğunu biliyorum . badblocks
Böyle sorunları tespit edebilir mi? Değilse, kartı test etmem için başka hangi çözümler var?
İdeal olarak aldatılıp alınıp alınmadığımı bilmek istiyorum; sonuç kötü bir ürün aldığımı gösterirse, sadece satıcıya geri dönebilirim, daha ziyade birinin beni kandırmaya çalıştığını eBay'e rapor edebilirim.
GÜNCELLEME
işlemler ve mesajlar:
~$ sudo mkfs.ext4 /dev/sde1
mke2fs 1.42.5 (29-Jul-2012)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
4096000 inodes, 16383996 blocks
819199 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=4294967296
500 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424
Allocating group tables: done
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done
~$ dmesg | tail
...
[4199.749118]...
~$ sudo mount /dev/sde1 /mnt
mount: wrong fs type, bad option, bad superblock on /dev/sde1,
missing codepage or helper program, or other error
In some cases useful info is found in syslog - try
dmesg | tail or so
~$ dmesg | tail
...
[ 4199.749118]...
[ 4460.857603] JBD2: no valid journal superblock found
[ 4460.857618] EXT4-fs (sde1): error loading journal
GÜNCELLEME
Ben çalıştım badblocks /dev/sde
ama hiçbir hata rapor. Bu, kalan nedenlerin:
SD araç iyidir ancak herhangi bir nedenle
mke2fs
veyamount
çekirdeğin soruna neden olan bir hata vardır.badblocks
Yenilgiyi tespit edemeyecek şekilde aldatılmıştım . Bu akla yatkındır çünkü bencebadblocks
bazı yerinde yazma-okuma testi yapıyor. Ancak, hile yapan, giden alanlara erişimin bazı gelen bloklara geri bağlanmasını sağlayabilir. Bu durumda, yerinde yazma-okuma denetimi sorunu algılayamaz.
Uygulamanın uygun testi yapamaması durumunda, sınamak için basit bir C programı yazmaya çalışabileceğimi düşünüyorum.
dmesg
gösterileri mesajları çekirdek ve ben önce ve sonra onları karşılaştırıldığında bunu yaptı çünkü emin hatalar aynı anda gösterilebilir olduğunu duyuyorum. Kontrol syslog
etmedim çünkü dmesg
mesajları göstereceğine inanıyorum .