Intereting Posts
Браузеры не видят псевдонимов в / etc / hosts Netbeans не отображает на моем компьютере Bash: изменить переменную, определенную в верхней части скрипта Полноэкранный выбор сеанса TMUX Печать статистики текстового файла Сценарий Awk работает только в том случае, если я редактирую текстовый файл вручную Как извлечь журналы между двумя отметками времени Анализ файлов журнала с помощью sed -e. Нужно учитывать уникальные имена классов Итерация по нескольким файлам в папке и присвоение значения Перечислите переменные с префиксом, где префикс хранится в другой переменной Выполнить скрипт на Linux Mint с Windows Machine Пользователь Netatalk как в rwlist, так и в rolist Почему find с -delete удаляет файлы в каталоге / save /, когда find без удаления не смог найти их? Как настроить среду рабочего стола Linux Mint на использование типа mime? Невозможно изменить название вкладки gnome-terminal из сеанса ssh на удаленной машине debian 8

Стресс (запись) Проверьте SD-карту на уничтожение с помощью простого сценария оболочки

Я хотел бы узнать, сколько циклов записи я могу получить с моей SD-карты.

У меня есть googled и нашел хорошие ответы как это, но это слишком сложно для нормального человека, подобного мне.

Скажем, его 64-битная отформатированная карта exfat.

Невозможно просто написать большой файл с размером 59 ГБ. Удали это. Сделайте счет. И повторите весь цикл, пока карта не сработает (я предполагаю, что что-то окончательно предотвратит операцию записи).

  1. Я думаю, что 59-гигабайтный случайный файл может быть создан следующим образом:

    dd if=/dev/urandom of=/dev/sdd1/file.txt bs=61865984 count=1024 
  2. Удалите файл:

     rm /dev/sdd1/file.txt 
  3. Я не уверен, как выполнить операцию подсчета или выполнить цикл, или если в файл .sh есть другой синтаксис / ограничения. Не могли бы вы мне помочь?

Моя идея выше (приемлемо). Я не пытаюсь быть совершенным.

Также есть ли готовое программное обеспечение / скрипт, который это делает?

(Я понимаю, что для этого мне нужно будет оставить ПК на несколько месяцев, но я в порядке с этим. Или, может быть, когда я запустил скрипт после перезагрузки, он добавит только к предыдущему счету.)

Спасибо. :-).

PS: Почему я это делаю? Я нахожу, что есть огромные карты microsd емкости, доступные от марок oem / no name, которые довольно дешевы по сравнению с хорошими картами. Люди говорят, что эти карты ненадежны. Я просто хотел увидеть, насколько они были на самом деле. Практически я думал, что через 5 лет я могу записать всего 1 ТБ на карточку. Это всего лишь 17 циклов! Я думаю, что даже худшая карта могла бы это сделать. : -) …………

Я думаю, что ваша идея может работать.

Вы можете записать данные непосредственно на узел устройства накопителя (например, /dev/sdd ). Команда rm невозможна или необходима (на самом деле она не удаляет много данных, rm только обновляет метаданные в файловой системе. Возможно, вы захотите записать все в один цикл, а затем все нули в следующем цикле.

Хитрость заключается в том, чтобы сделать постоянный счетчик, который вы можете получить после перезагрузки. Это можно легко выполнить с помощью файла, в примере COUNT_FILE – «$ HOME / .counter». Счет может быть ниже фактического, потому что система могла быть перезагружена или и т. Д. До завершения dd .

Вы также можете вызвать что-то подобное в /etc/rc.local чтобы запустить его автоматически при загрузке системы.

 #!/bin/ss COUNT_FILE="$HOME/.counter" read COUNT < "$COUNT_FILE" if echo "$COUNT" | grep '[^0-9]' > /dev/null then echo >&2 "$0: ERROR: non-integer counter found in $COUNT_FILE." exit 1 fi while true do echo dd if=/dev/urandom of=/dev/sdd bs=61865984 COUNT=$(( COUNT + 1 )) echo $(( COUNT )) > "$COUNT_FILE" done 

Вы также можете исследовать команду badblocks которая записывает шаблоны на диск и считывает их обратно. Хорошая идея использования badblocks заключается в том, что он пишет, считывает и сравнивает каждый байт в каждом цикле, поэтому вы должны начинать видеть все больше и больше чисел badblock когда диск начинает терпеть неудачу.

Кроме того, если вы случайно получаете другой USB-накопитель, подключенный как /dev/sdd , тогда вы полностью уничтожите его при запуске этого скрипта.

Когда вы получите ответ, эта конкретная SD-карта мертва. Это может дать вам некоторое представление о долговечности других карт с одним и тем же брендом и моделью (или это может быть не … индивидуальные карты меняются, и, что еще хуже, базовое оборудование может измениться без изменения номера модели – производители делают злое, что все время).

Мое предложение – не заботиться. Купите запасную SD-карту и убедитесь, что вы регулярно делаете резервные копии любых важных данных на карте.