2016-09-26 2 views
2

Мы буферизируемся на USB-накопителе, и после x-минут это будет отправлено на наш сервер. потому что это связано с большим количеством циклов записи и удаления. USB быстро умирает (от 1,5 до 6 месяцев).Попытка увеличить срок службы USB

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

Однако я пытаюсь найти способ увеличить срок службы USB, даже если это небольшое улучшение. Я читал об ограниченных циклах записи и удаления, и мне было интересно, могу ли я спасти жизнь на USB, изменив файлы вместо создания и удаления файлов.

Текущий размер файла составляет около 524 B ... это не так много, в то время как размер блока равен 16.384 B. Как я понял из всей информации, которую я собрал, это пространство будет зарезервировано по умолчанию, поэтому я должен иметь возможность пишите еще 30 раз в этот блок, прежде чем он будет использовать другой блок, правильно?

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

Итак, реальный вопрос: будет ли изменение файла сохранить (возможно) любое время жизни для USB, а не создавать и удалять файлы постоянно или это не имеет значения?

ответ

1

Первый. Pendrive и SD, используйте блок из N байтов, N может быть 128, 256, 512 и так далее.

Маленький блок лучше, потому что, если одно программное обеспечение записывает пример, каждый из 128 байтов или каждый кружок времени не равен, пишите одно время 128, это два раза 256 байт или четыре раза 512 байт.

Итак, я попытаюсь получить меньше блока размера, но это означает, что максимальный размер файлов ниже.

Во-вторых, и что более важно, не пытайтесь использовать caché write through, потому что он всегда записывает на диск. Лучше хранить все в памяти и писать раз в pendrive или SD. Этот момент недействителен для первого размера блока.

В-третьих, в Linux вы можете свести к минимуму доступ к диску Возможно, вы захотите настроить journald для хранения своих журналов в ОЗУ, например. путем создания настраиваемого файла конфигурации: /etc/systemd/journald.conf.d/usbstick.conf

[Journal] 
Storage=volatile 
RuntimeMaxUse=30M 
Смежные вопросы