LINUX.ORG.RU

Не удаляются файлы с SD карты

 , ,


0

2

Есть SD карточка на 64Гб, удаление файлов происходит без ошибок, файлы становятся невидны, т. е. как будто реально удалились. Но если карточку размонтировать, а потом смонтировать заново, то все файлы остаются на своих прежних местах. При попытке сделать dd if=/dev/zero of=/dev/mmcblk0 status=progress такой вывод:

66445824 bytes (66 MB, 63 MiB) copied, 29 s, 2.3 MB/s
dd: writing to '/dev/mmcblk0': Input/output error
133505+0 records in
133504+0 records out
68354048 bytes (68 MB, 65 MiB) copied, 96.963 s, 705 kB/s

Карточка повреждена? Как ещё можно это проверить?

Попробовать другой картридер.

Или через blkdiscard Нужно ли «форматировать» карты памяти, флешки? (комментарий)

(судя по /dev/mmcblk0, как раз и используется ридер на шине PCI/PCIe)

greenman ★★★★★
()
Последнее исправление: greenman (всего исправлений: 1)
Ответ на: комментарий от greenman

Я пробовал на встроенном в ноутбук ридере, но флешка не моя, мне её принесли со словами, что там ничего не удаляется. Соответственно, на другом компьютере были те же симптомы.

ottomencke
() автор топика

При любых первых глюках карточка должна улетать в мусор. А то подведёт в самый неподходящий момент.

ox55ff ★★★★★
()

В dmesg вот такое

[474209.781680] mmc0: cannot verify signal voltage switch
[474220.197747] blk_update_request: I/O error, dev mmcblk0, sector 710848 op 0x0:(READ) flags 0x80700 phys_seg 1 prio class 0
[474240.682599]  mmcblk0: p1
[474271.729557] mmc0: cannot verify signal voltage switch
[474282.149301] blk_update_request: I/O error, dev mmcblk0, sector 710848 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
[474282.149321] Buffer I/O error on dev mmcblk0, logical block 88856, async page read
[474524.249826] mmc0: cannot verify signal voltage switch
[474524.364934] blk_update_request: I/O error, dev mmcblk0, sector 0 op 0x3:(DISCARD) flags 0x4000 phys_seg 1 prio class 0
[474524.365827] blk_update_request: I/O error, dev mmcblk0, sector 7307264 op 0x3:(DISCARD) flags 0x0 phys_seg 1 prio class 0
[474524.366538] blk_update_request: I/O error, dev mmcblk0, sector 8380416 op 0x3:(DISCARD) flags 0x4000 phys_seg 1 prio class 0
[474524.367130] blk_update_request: I/O error, dev mmcblk0, sector 15687680 op 0x3:(DISCARD) flags 0x0 phys_seg 1 prio class 0
[474524.367924] blk_update_request: I/O error, dev mmcblk0, sector 16760832 op 0x3:(DISCARD) flags 0x4000 phys_seg 1 prio class 0
[474524.368451] blk_update_request: I/O error, dev mmcblk0, sector 24068096 op 0x3:(DISCARD) flags 0x0 phys_seg 1 prio class 0
[474524.369016] blk_update_request: I/O error, dev mmcblk0, sector 25141248 op 0x3:(DISCARD) flags 0x4000 phys_seg 1 prio class 0
[474524.369682] blk_update_request: I/O error, dev mmcblk0, sector 32448512 op 0x3:(DISCARD) flags 0x0 phys_seg 1 prio class 0
[474524.370273] blk_update_request: I/O error, dev mmcblk0, sector 33521664 op 0x3:(DISCARD) flags 0x4000 phys_seg 1 prio class 0
[474524.370779] blk_update_request: I/O error, dev mmcblk0, sector 40828928 op 0x3:(DISCARD) flags 0x0 phys_seg 1 prio class 0
[474524.384334]  mmcblk0: p1
[474531.513040] print_req_error: 20 callbacks suppressed
[474531.513043] blk_update_request: I/O error, dev mmcblk0, sector 0 op 0x3:(DISCARD) flags 0x4000 phys_seg 1 prio class 0
[474531.513701] blk_update_request: I/O error, dev mmcblk0, sector 7307264 op 0x3:(DISCARD) flags 0x0 phys_seg 1 prio class 0
[474531.514214] blk_update_request: I/O error, dev mmcblk0, sector 8380416 op 0x3:(DISCARD) flags 0x4000 phys_seg 1 prio class 0
[474531.514837] blk_update_request: I/O error, dev mmcblk0, sector 15687680 op 0x3:(DISCARD) flags 0x0 phys_seg 1 prio class 0
[474531.515361] blk_update_request: I/O error, dev mmcblk0, sector 16760832 op 0x3:(DISCARD) flags 0x4000 phys_seg 1 prio class 0
[474531.515944] blk_update_request: I/O error, dev mmcblk0, sector 24068096 op 0x3:(DISCARD) flags 0x0 phys_seg 1 prio class 0
[474531.516404] blk_update_request: I/O error, dev mmcblk0, sector 25141248 op 0x3:(DISCARD) flags 0x4000 phys_seg 1 prio class 0
[474531.516896] blk_update_request: I/O error, dev mmcblk0, sector 32448512 op 0x3:(DISCARD) flags 0x0 phys_seg 1 prio class 0
[474531.517387] blk_update_request: I/O error, dev mmcblk0, sector 33521664 op 0x3:(DISCARD) flags 0x4000 phys_seg 1 prio class 0
[474531.517915] blk_update_request: I/O error, dev mmcblk0, sector 40828928 op 0x3:(DISCARD) flags 0x0 phys_seg 1 prio class 0
[474531.530671]  mmcblk0: p1
[474550.695540] print_req_error: 20 callbacks suppressed
[474550.695544] blk_update_request: I/O error, dev mmcblk0, sector 0 op 0x3:(DISCARD) flags 0x4000 phys_seg 1 prio class 0
[474550.696188] blk_update_request: I/O error, dev mmcblk0, sector 7307264 op 0x3:(DISCARD) flags 0x0 phys_seg 1 prio class 0
[474550.696769] blk_update_request: I/O error, dev mmcblk0, sector 8380416 op 0x3:(DISCARD) flags 0x4000 phys_seg 1 prio class 0
[474550.697469] blk_update_request: I/O error, dev mmcblk0, sector 15687680 op 0x3:(DISCARD) flags 0x0 phys_seg 1 prio class 0
[474550.698076] blk_update_request: I/O error, dev mmcblk0, sector 16760832 op 0x3:(DISCARD) flags 0x4000 phys_seg 1 prio class 0
[474550.698783] blk_update_request: I/O error, dev mmcblk0, sector 24068096 op 0x3:(DISCARD) flags 0x0 phys_seg 1 prio class 0
[474550.699326] blk_update_request: I/O error, dev mmcblk0, sector 25141248 op 0x3:(DISCARD) flags 0x4000 phys_seg 1 prio class 0
[474550.699919] blk_update_request: I/O error, dev mmcblk0, sector 32448512 op 0x3:(DISCARD) flags 0x0 phys_seg 1 prio class 0
[474550.700549] blk_update_request: I/O error, dev mmcblk0, sector 33521664 op 0x3:(DISCARD) flags 0x4000 phys_seg 1 prio class 0
[474550.701274] blk_update_request: I/O error, dev mmcblk0, sector 40828928 op 0x3:(DISCARD) flags 0x0 phys_seg 1 prio class 0
[474550.714467]  mmcblk0: p1

ottomencke
() автор топика

Было такое, карточка - всё.

goingUp ★★★★★
()

Странное поведение карточек. Тоже запорол самсунг эво на 16ГБ, причем запарывает именно работа с gparted.

Писано-записано на ту карточку было у меня %-ов 10 от объема, она тупо грелась в андройд приставке, да и то, не шибко.

Возможно производители хитромудрые, в прошивке карточки определяют интенсивность I/O и тип ФС, после чего делают еще более хитромудрый вывод о пригодности карточки.

anonymous
()

Карточка повреждена?

Нет. Ей просто хана.

anonymous
()

Подтверждаю подход «заглючила - в мусор сразу».

dk__
()

исчерпались блоки на замену поврежденных - и все, карточка залочилась в ридонли. ну или глюк фирмвари и лок в ридонли.

можно конечно пытаться гуглить вендор-утилиты, но что-то я не встречал их для микросд (для юсб флэш еще можно найти).

NiTr0 ★★★★★
()
Ответ на: комментарий от dk__

настолько. нет background scrubbing, но есть wear leveling (причем, похоже, под него юзается свободное место + резервная зона, данные не трогаются) и ессно резервная область.

потому микросд достаточно один раз засрать на 100% и потом активно что-то позаписывать чтобы она умерла.

NiTr0 ★★★★★
()

Карта сдохла, покупай новую.

Ну либо ищи сервисные утилиты для работы с контроллером и переразмечай память.

Но лучше купи новую.

anonymous
()

скорее всего «да» – контроллер принял «обет readonly».

бекапь свои ценные данные на другой(ие) носитель(и). а карточку можешь смело форматировать в линуксе/винде/внешнем картридере/цифровом фотоаппарате/смартфоне/… ей уже ничего не угрожает. по этой же причине совет про печку совсем не шутка (особенно если на карте есть что-либо не для посторонних глаз/ушей), естественно после бекапа

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.