Как я могу продлить жизнь моей SD-карты?


252

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

Могу ли я предпринять какие-либо шаги для продления срока службы моей SD-карты, пока она используется моей Raspberry Pi?


19
Если вы напишите ему на полной скорости все время днем ​​и ночью 24/7 - 16 ГБ будет длиться около 30 дней. При нормальном использовании вы можете рассчитывать на 27 лет при 10000 циклах записи. Если он использует 100 000 циклов записи в течение 50 лет. Чем больше карта, тем дольше она прослужит благодаря умной логике выравнивания износа
Петр Кула

Вау, это здорово знать, я понятия не имел о твоем первом пункте 16 Гб SD, продолжительностью 30 дней с полной скоростью записи. Я полагаю, что постоянно записывать видео на SD и затем передавать его не лучшая идея.
SSH это

3
Со всеми хитами производительности, которые вы получите от этих решений, почему бы просто не платить 10 долларов каждые несколько лет?
Александр

Ответы:


243

Эти методы должны увеличить срок службы SD-карты, сводя к минимуму количество операций чтения / записи различными способами:

Отключить своп

Подкачка - это процесс использования части карты SD в качестве энергозависимой памяти. Это увеличит объем доступной оперативной памяти, но приведет к большому количеству операций чтения / записи. Вряд ли это значительно повысит производительность.

Отключить обмен с помощью swapoffкоманды:

sudo swapoff --all

Вы также должны предотвратить его возвращение после перезагрузки:

  • Для Raspbian, который использует dphys-swapfile для управления файлом подкачки (вместо «обычного» раздела подкачки), вы можете просто sudo apt-get remove dphys-swapfileудалить его навсегда. Лучше всего удалить, потому что установка в CONF_SWAPSIZE0, как объяснено в этом ответе , кажется, не работает и все еще создает файл подкачки размером 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-накопитель. Вы можете найти больше информации в этом вопросе или в этом внешнем сообщении в блоге .


17
noatimeдолжно быть по умолчанию.
Алекс Чемберлен

3
@AlexChamberlain: noatimeне по умолчанию, по крайней мере, на Arch.
Jivings

20
Это в последних сборках Raspian.
Оли

4
В соответствии с этим: superuser.com/a/168126/105936 это не очень хорошая идея, чтобы положить /var/tmpв память. Может быть, вы перепутали это с /tmp.
inf3rno

1
Обратите внимание, что если это noatimeвызывает у вас проблемы, вы также можете использовать, relatimeчто значительно сокращает объем записи на диск при чтении, а не удаляет их полностью.
Марк Бут

79

Если опции, предоставляемые Jivings , для вашего приложения невозможны, то другой способ существенно продлить его жизнь - это использовать SD-карту, которая намного больше, чем вам нужно.

Оставьте много свободного места

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

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

Для получения дополнительной информации см. Ответы на вопрос. Правда ли, что карта SD / MMC изнашивается с собственным контроллером? на бирже электроники стека , особенно этот ответ .

Одна интересная статистика из этого ответа заключается в том, что

Взятие карты объемом 2 ГБ и ее запись, начинающаяся снова и снова, в среднем составляют около 10 ТБ до того, как карта перестает работать и больше не доступна для записи.

Но беспокоит то, что

SD-карты не сообщат вам, когда данные плохие, то есть не вернут ошибку ввода-вывода, как жесткий диск ПК.

Это может сделать ваш выбор файловой системы важным, если вам нужно гарантировать надежное хранение.

И последнее замечание: удвоение размера SD-карты может более чем удвоить срок ее службы.

То есть, если у вас есть SD-карта объемом 2 ГБ с 200 МБ свободного места, то переход на карту объемом 4 ГБ даст вам в 11 раз больше свободного места, емкость для выравнивания износа и, следовательно, долговечность, а при переходе на карту объемом 16 ГБ - в 71 раз больше. пространство.


1
Чтобы позволить SD-карте выполнять выравнивание износа в первую очередь, необходимо указать, какие блоки на самом деле можно использовать для этого. Фстрим может помочь в этом.
JimmyB

Обрезка не требуется, но без нее блок используется повторно только тогда, когда ОС повторно использует блок, а не тогда, когда он прекращает его использование. Насколько я знаю, trim является функцией SSD и не поддерживается SD-картами, доступ к которым осуществляется по гораздо более простому протоколу.
Марк Бут

@ Марк, твоя первая точка зрения совершенно верна. - Что касается вашего второго пункта, MMC_ERASEдля этой цели в стандарте MMC / SD определена (необязательная) команда. Хотя из всех SD-карт, которые я пробовал, только одна (та, которая пришла с моим Pi-) на самом деле поддерживает это.
JimmyB

Имеет ли значение размер раздела в этом случае? Я имею в виду, если у меня есть карта на 16 ГБ и система с уникальным разделом ext4 на 4 ГБ, будет ли она использовать оставшиеся 12 ГБ для выравнивания износа?
Натенхо

Трудно сказать @natenho да для SD-карты с хорошим выравниванием износа, нет для того, у кого плохая (или нет) реализация.
Марк Бут

26

Единственное, что я вижу, это НЕ менять местами на SD-карте.

Обмен на SD-карте, вероятно, может убить вашу SD-карту.

Если вам нужно больше оперативной памяти, вы можете попробовать использовать zram, в этом посте на http://raspberry.pi.gw.gd/t50-Using-ZRAM.html, содержащем некоторые подробности об использовании ZRAM на raspberry pi

Более подробная информация о Zram на http://en.wikipedia.org/wiki/ZRam

Также известно, что самые последние SD-карты гораздо надежнее старых, поэтому покупка SD-карты нового класса 10, вероятно, является хорошим вариантом, если вы хотите, чтобы она прослужила долго.


14

Вы можете попробовать запустить Puppy Linux, который является полностью ram-резидентом. Он очень маленький и ослепительно быстрый, поскольку он полностью работает в памяти, копируя образ хранилища (на вашем SD-карте) в ОЗУ при загрузке, а затем периодически сбрасывая изменения обратно в хранилище. Частота этого сохранения контролируется пользователем, в том числе вручную.

Puppy использует многоуровневую файловую систему aufs или более раннюю версию unionfs с любой из стандартных файловых систем Linux, например ext3 или ext4. Он также может находиться на разделах FAT или NTFS.

Существует по крайней мере несколько версий Puppy, специально разработанных для RPi, одна из которых была создана "Puppy Master" Барри Каулером.

Для получения дополнительной информации перейдите на http://puppylinux.org/wikka/Puppi


13

Большинство людей здесь говорят о своих предположениях, а не о личном опыте.

Я использовал свой RaspberryPi с RasPBX в качестве коммутатора компании с 8 добавочными номерами и факсом. У нас есть 3 транка на основе IP и один стационарный через LinkSYS SPA3000. Моя первоначальная карта памяти Kingston 4 ГБ SDCard заняла всего 1 месяц, чтобы укусить пыль.

Я все еще экспериментировал и у меня не было резервной копии. Кстати, Pi подключен к ИБП APC. Затем я заново установил весь RasPBX с нуля, но на этот раз я переместил / var / log и / var / lib / mysql на наш корпоративный NAS. Этот SD все еще был в порядке через 3 месяца.

Тогда у нас было очень жаркое лето. В течение третьего месяца пи начал не обнаруживать Ethernet на ровном месте. Затем однажды я обнаружил, что все светодиоды тусклые, и он не загружается.

Я заменил Пи свежим из коробки работающим. Не по порядку начал работать после охлаждения, но работает довольно хаотично, и когда он загружается в RasPBX, режим видео не переключается на графику, он остается в тексте 80 * 25. Это было действительно запутано. Я заказал комплект радиатора с тех пор. Новый Pi работает с ним уже более 2 месяцев 24.07.

Поэтому, если вы будете использовать pi в среде 7/24, не стесняйтесь покупать радиатор и избегайте использования / var / log и других занятых каталогов поверх SD CARD.


Убедиться, что var / log находится на подходящем устройстве, звучит как отличный совет. Из интереса, в тот начальный проблемный месяц, вы тоже хранили ящики голосовой почты на карте USD? Мне просто интересно, могли бы лучше подойти для моего развертывания RasPBX высоконадежные карты USB, подобные тем, которые предназначены для использования Dash Cam, если я решу включить ящики голосовой почты.
Марк Бут

11

Я сравнил все решения, используемые утилитой TMPFS, и лучший ответ - это синтез скрипта prepare-dirs (см. Http://grenzdebiel.dyndns.org/wordpress/?p=98 ) с правильным / etc / defaults / tmpfs ( (см. http://www.a-netz.de/2013/02/ramdisks-for-the-raspberry/ ).

Необходимые шаги для выполнения на raspbian:

1. отредактируйте /etc/default/tmpfsи установите :

RAMLOCK=yes
RAMSHM=yes
RAMTMP=yes

Я бы порекомендовал следующие размеры:

TMPFS_SIZE=10%VM
RUN_SIZE=10M
LOCK_SIZE=5M
SHM_SIZE=10M
TMP_SIZE=25M

2. включить дополнительные каталоги, используя / etc / fstab

tmpfs   /var/log                tmpfs   size=20M,defaults,noatime,mode=0755 0 0 
tmpfs   /var/cache/apt/archives tmpfs   size=100M,defaults,noexec,nosuid,nodev,mode=0755 0 0
tmpfs   /var/spool/cups         tmpfs   size=100M,defaults,noatime,mode=0755 0 0
tmpfs   /var/spool/cups/tmp     tmpfs   defaults,noatime,mode=0755 0 0

3. использовать скрипт /etc/init.d/prepare-dirsдля создания отсутствующих каталогов, /var/logчтобы все демоны запускались

Посмотрите в конце, что он содержит в моем случае.

4. Сделайте скрипт исполняемым chmod 755 /etc/initd/prepare-dirs.

5. Убедитесь, что скрипт будет запущен при загрузке, прежде чем ваши демоны запустятся: update-rc.d prepare-dirs defaults 01 99

содержание /etc/init.d/prepare-dir:

#!/bin/bash
#
### BEGIN INIT INFO
# Provides:          prepare-dirs
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Required-Start:
# Required-Stop:
# Short-Description: Create needed directories on /var/log/ for tmpfs at startup
# Description:       Create needed directories on /var/log/ for tmpfs at startup
### END INIT INFO
# needed Dirs
DIR[0]=/var/log/lighttpd
DIR[1]=/var/log/cups
DIR[2]=/var/log/apt
DIR[3]=/var/log/ConsoleKit
DIR[4]=/var/log/fsck
DIR[5]=/var/log/news
DIR[6]=/var/log/ntpstats
DIR[7]=/var/log/samba
DIR[8]=/var/log/lastlog
DIR[9]=/var/log/exim
DIR[10]=/var/log/watchdog
case "${1:-''}" in
  start)
        typeset -i i=0 max=${#DIR[*]}
        while (( i < max ))
        do
                mkdir  ${DIR[$i]}
                chmod 755 ${DIR[$i]}
                i=i+1
        done
        # set rights
        chown www-data.www-data ${DIR[0]}
    ;;
  stop)
    ;;
  restart)
   ;;
  reload|force-reload)
   ;;
  status)
   ;;
  *)
   echo "Usage: $SELF start"
   exit 1
   ;;
esac

Вот и все.


Puppy Linux также использует TMPFS для всего.
DocSalvager

7

Отключить файл подкачки:

sudo dphys-swapfile swapoff

Нет необходимости удалять, однако, если вы не используете его, и действительно хотите пространство, вы можете безопасно удалить его. Альтернативная команда для удаления:

sudo dphys-swapfile удалить

Использование: / sbin / dphys-swapfile {setup | swapon | swapoff | uninstall}


5

Flash Cell Endurance:

  • Для многоуровневых ячеек (MLC) Flash до 10 000 циклов записи на физический сектор.
  • Для одноуровневой ячейки (SLC) Flash - до 100 000 циклов записи на физический сектор.
  • Более новые SSD предлагают 1 миллион циклов записи на физический сектор.

Это чисто математическое на больших картах и ​​нормальный износ. Если бы вам приходилось писать на флэш-карту типа MLC 8 ГБ день и ночь снова и снова, для ее уничтожения потребовалось бы около 30 дней.

Эпизод 99 в Techsnap рассказывает о износе SSD, и Аллен объясняет, как невозможно изнашивать SSD при повседневном использовании, и нам не нужно беспокоиться об отключении свопов, крон и тому подобного. Это просто работает сейчас! Умное выравнивание износа заботится обо всем.

Нормальный износ, как указано в Kingston, должен дать вам 27 лет жизни на профессиональной цифровой камере.

Который для обычных зеркальных камер вы можете заполнять раз в несколько месяцев ... зависит от того, сколько вы путешествуете. Принимая во внимание Pi, если вы экспериментируете с выделением и часто вспыхиваете, то это может потребовать больше потерь. Обычно, когда вы довольны дистрибутивом ... вы не пишете его месяцами или годами. Таким образом, чтобы продлить износ SD, было бы хорошо следовать некоторым советам по снижению IO на SD.

Цена на флеш упала, а технология намного лучше.

Большинство SD-карт переживет два или три поколения устройств, и к тому времени они будут считаться маленькими и слишком медленными для использования с гораздо более доступным и дешевым обновлением!


Raspberry Pi, настроенный с веб-камерой в целях безопасности, вполне может записывать данные 24/7. Я думаю, что в этом случае SSD, вероятно, лучше.
Сильно нерегулярный

1
Да, но он не пишет ВСЕ сектора последовательно ВСЕ время. Он управляется для наименьшего износа, и новые данные всегда направляются в сектор / область с наименьшим доступом. Видео не перезаписывает файлы файловой системы или файлы подкачки. Сколько часов вы можете получить на 16 ГБ флешке? Обычно CCTV должно быть доступно через 15-30 дней! Вместо этого используйте накопитель емкостью 1 ТБ или NAS для хранения в исторических целях. Даже короткий срок для хранения и передачи вы получите годы от SD-карты! Еще лучше использовать SD на 32 ГБ, но ограничить папку до 16 ГБ - Вы удвоите время жизни, используя эту технику!
Петр Кула

4
@ppumkin, расскажите, пожалуйста, как вы на самом деле используете свои SD-карты в своих RPi? Многие из нас (Google "Raspberry поврежденный SD") столкнулись с фатальными сбоями (я больше, чем один, в том числе Кингстон, теперь, когда вы упоминаете) с их настройками Raspbian по умолчанию, несмотря на впечатляющие числа поставщиков ... Это может быть RPI, а не SD, но ваши бумажные данные все еще необоснованны без каких-либо ссылок на (я должен сказать, хорошо известны?) Проблемы SD RPi, ваши собственные фактические полевые практики или, еще лучше: тематические исследования, экспериментально опровергающие «слухи» об ущербе SD.
Сз.

1
Смотри, все, о чем я говорю, связано со ссылкой. ОК, вы хотите знать, как я это использую? Я не! Потому что пи, действительно большая боль в заднице! Карты SD продолжают терпеть неудачу в этом, и это не ошибка карты SD. Либо аппаратное, либо программное обеспечение Pi блокирует эти вещи. Я думаю, что это нестабильные напряжения, обеспечиваемые дешевыми блоками питания USB. Новый B + имеет регуляторы на них. Слава Богу! Это исправленный WiFi, звуковая обратная связь, и я молюсь, чтобы Бог поразил карты SD. Мне все еще нужно заказать что-нибудь, но я сейчас играю с Netduino, пока на этом не разбился SD.
Петр Кула

1
@ppumkin Я использовал SanDisk. Не на ebay. Существует большая разница между перепрошивкой SD-карты (скажем, для повторного использования в камере) и использованием ее в качестве домашней операционной системы. Вы должны быть более конкретными относительно того, как именно вы используете свои, и как долго они длились. Мне не нужно повторять комментарий Лунакидса, но я полностью согласен с ним или с ней. ,
RolfBly

4

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

В Raspbian, а также в Debian и Ubuntu есть пакет unburden-home-dir , основная цель которого - создать символическую ссылку на такие файлы в менее проблемное место, например, на tmpfsмонтирование или внешний жесткий диск, который менее подвержен износу.

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


3

Это мои рекомендации для Debian 8.0 (Джесси)

Они основаны на iotop -bktoqqqи iostat -dzp 5. Сначала вы должны выполнить эти команды, чтобы получить представление о проблеме и ее решении.

1. Отключить своп

sudo systemctl disable dphys-swapfile
sudo rm /var/swap

2. Используйте параметры монтирования и оперативную память

Смонтируйте все разделы на SD-карте с noatime,commit=1800опциями и смонтируйте следующие каталоги в RAM с этими записями в вашем /etc/fstab/:

/dev/mmcblk0p1  /boot           vfat    defaults,noatime,commit=1800  0       2
/dev/mmcblk0p2  /               ext4    defaults,noatime,commit=1800  0       1

tmpfs           /tmp            tmpfs   size=50M,nodev,nosuid     0       0
tmpfs           /var/tmp        tmpfs   size=10M,nodev,nosuid     0       0
tmpfs           /var/cache/samba tmpfs   size=5M,nodev,nosuid     0       0

Фиксация задержит записи и соберет их в первую очередь.

3. Записывайте самые частые файлы журнала на /var/tmp/log/

Смотрите мое описание Как я могу уменьшить запись в лог-файлы .

4. Остановите Chromium от удара карты SD

Как оказалось, Chromium пишет много и не может быть остановлен (см. 176727 , 52663 ). Это влияет на кэш и каталог пользовательских данных. В Chromium / Советы и хитрости объяснить , как это может быть перемещен в оперативную память. Так как Raspberry не имеет большого объема оперативной памяти, предлагаемый Tab Suspender полезен для экономии оперативной памяти.

а) кеш

Ограничить размер кэша и переместить его в память путем редактирования /etc/chromium-browser/customizations/00-rpi-varsв

CHROMIUM_FLAGS="--disable-quic --enable-fast-unload --enable-tcp-fast-open --disk-cache-size=10000000 --media-cache-size=5000000"

Теперь кэш достаточно мал, чтобы его можно было перенести на RAM-диск, изменив XDG_CACHE_HOMEзапись /etc/security/pam_env.confна

XDG_CACHE_HOME  DEFAULT=/tmp/@{PAM_USER}/cache

Теперь у моих двух пользователей небольшой кеш браузера в оперативной памяти. Если этого недостаточно, измените кеш или / tmp / size по мере необходимости.

б) Данные пользователя dir

Также пользовательские данные dir ( .config/chromium/) испытывают тяжелые записи. Профиль синхронизации-демон рекомендован Chromium / Советы и хитрости . Он был разработан для управления профилем вашего браузера в tmpfs и периодической синхронизации его с вашим физическим диском. К сожалению, пакет еще не является частью дистрибутива Raspbian 8.0 (Jessie). Так что я еще не проверял это.

5. Свободное место на SD-карте

Освободите место, удалив ненужные пакеты и файлы. Это должно распределить износ более равномерно по вашим перегородкам.

Готово!

Теперь запустите iotop -bktoqqqи iostat -dzp 5снова и увидите значительное сокращение доступа на запись, когда система простаивает. Ничего не записывается на мой диск в течение многих минут. И не беспокойтесь о мигании зеленого светодиода ACT . Видимо, это не очень хороший индикатор доступа для записи.


2

Небольшое сокращение циклов записи может быть достигнуто путем потоковой передачи вывода системного журнала на другой сервер. Конечно, наличие такого сервера с syslogdработающим является предварительным условием. Однако, учитывая, что Pi - игрушка для энтузиастов Linux, это, вероятно, очень часто случается. :-)

Чтобы активировать этот поток, просто вставьте оператор

*.*    @myserver.mydomain

в верхней части файла /etc/rsyslog.confзакомментируйте все остальные строки и перезапустите протоколирование, выполнив команду service rsyslog restart. После этого сообщения должны поступить на выбранный сервер.

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


Обратите внимание, что современные системы Linux (в том числе CentOS 7 и Debian 8, а также системы, основанные на таких, как Raspbian 8) делают все записи, journaldкоторые хранятся в журнале systemd. Они также настраивают journaldпересылку журналов в сокет системного журнала, который rsyslogdпрослушивает; это помещает дополнительные копии сообщений в файлы журнала под /var/log. Если вам удобно journalctlпросматривать журналы (и это работает намного лучше, чем /var/logкогда-то, вы уже знакомы с ним), вы можете полностью отключить rsyslogи сохранить некоторые записи.
Курт Дж. Сэмпсон

1

Примечание. Предел в 100 000 циклов - это гипотеза, которая применима к каждому вычислительному устройству, даже к клавишам на клавиатуре. Я полагаю, что запуск Pi в надлежащих условиях охлаждения и надлежащие циклы выключения / запуска дадут вам лучшие результаты, а не переходят к аналогиям.

Также это может дополнить мое мнение выше.

Добавьте нового пользователя в дополнение к пользователю Pi [по умолчанию]. Укажите домашний каталог нового пользователя на внешнем диске [большой палец / жесткий диск]. Дайте новому пользователю права суперпользователя и начните использовать его в качестве основной учетной записи.

Надеюсь, это поможет..


Я всегда стараюсь печатать меньше, чтобы сэкономить на клавиатуре;)
Петр Кула

Добавление нового пользователя не предотвратит занятость /var/logи /var/tmp. Кроме того, наличие свидетельств из опыта, что правильное охлаждение имеет значение, намного лучше, чем говорить «я верю».
RolfBly

0

Используйте демон syslog busybox (в пакете busybox-syslogd на Raspbian / Debian / Ubuntu) вместо демона syslog по умолчанию (обычно rsyslog). По умолчанию в Raspbian / Debian / Ubuntu syslogd busybox регистрируется только в кольцевом буфере в памяти, а не на диске. Размер кольцевого буфера по умолчанию составляет 128 КБ, т. Е. Старые записи в журнале довольно быстро исчезают и исчезают. Но вы можете настроить его на использование большего объема оперативной памяти.

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


-1

Пара вещей, которые я сделал:

chmod из файла dphys-swapfile (где-то в / etc - сейчас нет рядом с PI) для:

sudo chmod a-x dphys-swapfile

Я получаю незначительные ошибки при загрузке (не могу запустить службу dphys-swapfile) - Предположим, есть лучший способ ... rc-update ??

Кроме того, я снимаю изображения с модуля камеры, чтобы в конечном итоге поставить на свой веб-сервер (Pi). Я отформатировал / dev / ram0 в ext2, смонтировал его как / media / ramdrive (думаю, с использованием /etc/init.rc). Это 4 мг, достаточно большой для одного щелчка. Нет записи на SD.

Сервер (oululife.dnsdynamic.com) является экспериментальным, но в Интернете. Чтобы действительно подчеркнуть это, я позволил ему также транслировать эпизод MP4 «Heartbeat *». Он запускает lighttpd, Mysql, PHP, WordPress, и даже когда я удаленно транслирую через Интернет, он почти не потеет, средняя нагрузка около 0,2. Никакого разгона вообще. Модель-B ред. 2, до 24/7. Итак, если я смогу получить свои файлы журналов в другой 15 / dev / ramX, я считаю, что моя карта Micro-SD 16G прослужит долгие годы ....

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.