Эти методы должны увеличить срок службы SD-карты, сводя к минимуму количество операций чтения / записи различными способами:
Отключить своп
Подкачка - это процесс использования части карты SD в качестве энергозависимой памяти. Это увеличит объем доступной оперативной памяти, но приведет к большому количеству операций чтения / записи. Вряд ли это значительно повысит производительность.
Отключить обмен с помощью swapoff
команды:
sudo swapoff --all
Вы также должны предотвратить его возвращение после перезагрузки:
- Для Raspbian, который использует dphys-swapfile для управления файлом подкачки (вместо «обычного» раздела подкачки), вы можете просто
sudo apt-get remove dphys-swapfile
удалить его навсегда. Лучше всего удалить, потому что установка в CONF_SWAPSIZE
0, как объяснено в этом ответе , кажется, не работает и все еще создает файл подкачки размером 100 МБ после перезагрузки.
- Для других дистрибутивов, которые используют раздел подкачки вместо файла подкачки, удалите соответствующую строку из
/etc/fstab
Отключение ведения журнала в файловой системе
Использование файловой системы журналирования, такой как ext3
или ext4
БЕЗ журнала, позволяет уменьшить число операций чтения / записи. Очевидным недостатком использования файловой системы с отключенным ведением журнала является потеря данных в результате некорректного отключения (т. Е. После сбоя питания, блокировки ядра и т. Д.).
Вы можете отключить ведение журнала ext3
, подключив его как ext2
.
Вы можете отключить ведение журнала на отключенном ext4
диске следующим образом:
tune4fs -O ^has_journal /dev/sdaX
e4fsck –f /dev/sdaX
sudo reboot
Флаг Noatime Mount
Присвойте флаг монтирования noatime разделам, находящимся на SD-карте, добавив его в раздел параметров раздела /etc/fstab
.
Чтение доступа к файловой системе больше не приведет к обновлению временной информации, связанной с файлом. Важность параметра noatime заключается в том, что он устраняет необходимость в системе выполнять запись в файловую систему для файлов, которые просто читаются. Поскольку запись может быть несколько дорогой, как упоминалось в предыдущем разделе, это может привести к ощутимому повышению производительности. Обратите внимание, что информация о времени записи в файл будет обновляться каждый раз, когда в файл записывается эта опция.
Каталоги в оперативной памяти
Часто используемые каталоги, такие как /var/tmp/
и, возможно, /var/log
могут быть перемещены в RAM /etc/fstab
следующим образом:
tmpfs /var/tmp tmpfs nodev,nosuid,size=50M 0 0
Это позволит /var/tmp
использовать 50 МБ оперативной памяти в качестве дискового пространства. Единственная проблема, связанная с этим, заключается в том, что любые диски, установленные в ОЗУ, не сохранятся после перезагрузки. Таким образом, если вы монтируете /var/log
и ваша система обнаруживает ошибку, которая приводит к ее перезагрузке, вы не сможете выяснить, почему.
Каталоги на внешнем жестком диске
Вы также можете смонтировать некоторые каталоги на постоянном жестком диске USB. Более подробную информацию об этом можно найти в этом вопросе .
Raspberry Pi также может загрузить свой корневой раздел с внешнего диска. Это может быть через USB или Ethernet и означает, что SD-карта будет использоваться только для делегирования другому устройству во время загрузки. Для этого требуется небольшой взлом ядра, так как я не думаю, что ядро по умолчанию поддерживает USB-накопитель. Вы можете найти больше информации в этом вопросе или в этом внешнем сообщении в блоге .