¿Cómo puedo extender la vida útil de mi tarjeta SD?

252

No estoy tan interesado en comprar un disco duro USB, pero soy consciente de que las tarjetas SD no son adecuadas para muchas repeticiones de lectura y escritura.

¿Hay algún paso que pueda tomar para extender la vida útil de mi tarjeta SD mientras mi Raspberry Pi la está utilizando?

Altamente irregular
fuente
19
Si le escribe a toda velocidad todo el día y noche, 24/7, un 16gb durará aproximadamente 30 días. En el uso normal, puede esperar unos 27 años en función de 10.000 ciclos de escritura. Si usa 100,000 ciclos de escritura durante 50 años. Cuanto más grande sea la tarjeta, más durará gracias a la inteligente lógica de nivelación de desgaste
Piotr Kula
Wow, es genial saberlo, no tenía idea sobre su primer punto de 16 gb sd que duró 30 días con escritura a toda velocidad. Supongo que grabar video constantemente en el SD y luego transferirlo no es la mejor idea.
SSH Este
3
Con todos los éxitos de rendimiento que obtendrá de estas soluciones, ¿por qué no solo pagar $ 10 cada pocos años?
Alexander

Respuestas:

243

Estos métodos deberían aumentar la vida útil de la tarjeta SD al minimizar el número de lecturas / escrituras de varias maneras:

Deshabilitar intercambio

El intercambio es el proceso de usar parte de la tarjeta SD como memoria volátil. Esto aumentará la cantidad de RAM disponible, pero dará como resultado una gran cantidad de lecturas / escrituras. Es poco probable que aumente significativamente el rendimiento.

Deshabilite el intercambio con el swapoffcomando:

sudo swapoff --all

También debe evitar que vuelva después de reiniciar:

  • Para Raspbian, que utiliza dphys-swapfile para administrar un archivo de intercambio (en lugar de una partición de intercambio "normal"), simplemente puede sudo apt-get remove dphys-swapfileeliminarlo permanentemente. Es mejor eliminarlo porque establecerlo CONF_SWAPSIZEen 0, como se explica en esta respuesta , no parece funcionar y aún crea un archivo de intercambio de 100 MB después del reinicio.
  • Para otras distribuciones que usan una partición de intercambio en lugar de un archivo de intercambio, elimine la línea apropiada de /etc/fstab

Deshabilitar el registro en diario en el sistema de archivos

El uso de un sistema de archivos de diario como ext3o ext4SIN un diario es una opción para disminuir las lecturas / escrituras. El inconveniente obvio de usar un sistema de archivos con el registro en diario deshabilitado es la pérdida de datos como resultado de un desmontaje desafortunado (es decir, falla de energía posterior, bloqueo del kernel, etc.).

Puede deshabilitar el registro en diario ext3montándolo como ext2.

Puede deshabilitar el registro en diario en ext4una unidad desmontada como esta:

tune4fs -O ^has_journal /dev/sdaX
e4fsck –f /dev/sdaX
sudo reboot

La bandera del monte noatime

Asigne el indicador de montaje de noatime a las particiones que residen en la tarjeta SD agregándolo a la sección de opciones de la partición en /etc/fstab.

Leer los accesos al sistema de archivos ya no dará como resultado una actualización de la información atime asociada con el archivo. La importancia de la configuración de noatime es que elimina la necesidad del sistema de realizar escrituras en el sistema de archivos para los archivos que simplemente se leen. Dado que las escrituras pueden ser algo caras como se mencionó en la sección anterior, esto puede resultar en ganancias de rendimiento medibles. Tenga en cuenta que la información del tiempo de escritura en un archivo continuará actualizándose cada vez que se escriba en el archivo con esta opción habilitada.

Directorios en RAM

Directorios muy utilizados como /var/tmp/y posiblemente /var/logse pueden reubicar en RAM de /etc/fstabesta manera:

tmpfs /var/tmp tmpfs nodev,nosuid,size=50M 0 0

Esto permitirá /var/tmpusar 50 MB de RAM como espacio en disco. El único problema al hacer esto es que las unidades montadas en RAM no persistirán más allá de un reinicio. Por lo tanto, si monta /var/logy su sistema encuentra un error que hace que se reinicie, no podrá averiguar por qué.

Directorios en disco duro externo

También puede montar algunos directorios en un disco duro USB persistente. Más detalles de esto se pueden encontrar en esta pregunta .

La Raspberry Pi también puede iniciar su partición raíz desde una unidad externa. Esto podría ser a través de USB o Ethernet y significa que la tarjeta SD solo se usará para delegar a diferentes dispositivos durante el arranque. Esto requiere un poco de pirateo del núcleo para lograrlo, ya que no creo que el núcleo predeterminado admita el almacenamiento USB. Puede encontrar más información en esta pregunta o en esta publicación de blog externa .

Jivings
fuente
17
noatimedebería ser un defecto.
Alex Chamberlain
3
@AlexChamberlain: noatimeno es el predeterminado, al menos en Arch.
Jivings
20
Está en las últimas versiones de Raspian.
Oli
44
De acuerdo con esto: superuser.com/a/168126/105936 no es una gran idea ponerla /var/tmpen la memoria. Tal vez lo confundiste con /tmp.
inf3rno
1
Tenga en cuenta que si le noatimecausa problemas, también puede usarlos, lo relatimeque reduce significativamente las escrituras de disco en lectura en lugar de eliminarlos por completo.
Mark Booth
79

Si las opciones proporcionadas por Jivings no son posibles para su aplicación, entonces otra opción para extender sustancialmente su vida es usar una tarjeta SD que sea mucho más grande de lo que necesita.

Deje mucho espacio libre

La mayoría de las tarjetas SD decentes usan algoritmos de nivelación de desgaste para minimizar la cantidad de veces que se escribe cada bloque, por lo que si la tarjeta SD es más grande de lo que necesita, el desgaste puede extenderse en un área mucho más grande de espacio libre.

Parte de la razón por la que la nivelación de desgaste es tan importante es que algunos sistemas de archivos, como FAT (el formato predeterminado para muchas tarjetas SD), martillan los mismos sectores una y otra vez.

Para obtener más información sobre esto, consulte las respuestas a la pregunta ¿Es cierto que una tarjeta SD / MMC se desgasta con su propio controlador? en el intercambio de pila electrónica , especialmente esta respuesta .

Una estadística interesante de esta respuesta es que

tomar una tarjeta de 2 GB y escribirla comienza a terminar una y otra vez promedia aproximadamente 10 TB antes de que la tarjeta se agote y ya no se pueda escribir.

Pero lo preocupante es que

Las tarjetas SD no le avisarán cuando los datos sean malos, es decir, no devolverán un error de E / S como lo hará un disco duro de PC.

Esto puede hacer que su elección del sistema de archivos sea importante si necesita garantizar un almacenamiento confiable.

Una nota final: duplicar el tamaño de la tarjeta SD podría más que duplicar su longevidad.

Es decir, si tiene una tarjeta SD de 2 GB con 200 MB libres, cambiar a una tarjeta de 4 GB le dará 11 veces más espacio libre, capacidad de nivelación de desgaste y, por lo tanto, longevidad, mientras que cambiar a una tarjeta de 16 GB le dará 71 veces más espacio.

Mark Booth
fuente
1
Para permitir que la tarjeta SD realice una nivelación de desgaste en primer lugar, debe saber qué bloques son realmente libres de usar para eso. fstrim podría ayudarlo a hacerlo.
JimmyB
El recorte no es necesario, pero sin él, un bloque solo se reutiliza cuando el sistema operativo reutiliza un bloque en lugar de cuando deja de usarlo. Hasta donde sé, trim es una función SSD y no es compatible con tarjetas SD a las que se accede mediante un protocolo mucho más simple.
Mark Booth
@ Mark, tu primer punto es exactamente correcto. - En cuanto a su segundo punto, existe el MMC_ERASEcomando (opcional) definido en algún lugar del estándar MMC / SD para este propósito. Aunque de todas las tarjetas SD que he probado, solo una (la que vino con mi Pi-) en realidad lo admite.
JimmyB
¿Importa el tamaño de la partición en este caso? Quiero decir, si tengo una tarjeta de 16GB y un sistema con una partición ext4 única de 4GB, ¿también aprovechará los 12GB restantes para nivelar el desgaste?
natenho
Es difícil decirle a @natenho sí para una tarjeta SD con buena nivelación de desgaste, no para una con una implementación deficiente (o no).
Mark Booth
26

Lo único que veo es NO cambiar la tarjeta SD.

El intercambio en la tarjeta Sd es probablemente lo que podría matar su tarjeta SD.

Si necesita más RAM, puede intentar usar zram, hay una publicación en http://raspberry.pi.gw.gd/t50-Using-ZRAM.html que brinda algunos detalles sobre el uso de ZRAM en la frambuesa pi

Más información para zram en http://en.wikipedia.org/wiki/ZRam

También se sabe que las tarjetas SD más recientes son mucho más sólidas que las antiguas, comprar una nueva tarjeta SD de clase 10 es probablemente una buena opción si desea que dure mucho tiempo.

neofutur
fuente
14

Podría intentar ejecutar Puppy Linux, que es completamente residente en ram. Es muy pequeño y cegadoramente rápido, ya que se ejecuta completamente en la memoria al copiar la imagen de almacenamiento (en la tarjeta SD en su caso) en la RAM en el arranque y luego enjuagar los cambios periódicamente de nuevo al almacenamiento. La frecuencia de este guardado es controlada por el usuario, incluso manualmente.

Puppy utiliza el sistema de archivos en capas aufs o unionfs más antiguo con cualquiera de los sistemas de archivos Linux estándar como ext3 o ext4. También puede residir en particiones FAT o NTFS.

Hay al menos un par de versiones de Puppy específicamente diseñadas para el RPi, una de ellas creada por el "Puppy Master", Barry Kauler.

Para más información, vaya a http://puppylinux.org/wikka/Puppi

DocSalvager
fuente
13

La mayoría de las personas aquí hablan de sus suposiciones y no de su experiencia personal.

He estado usando mi RaspberryPi con RasPBX como una centralita de la compañía con 8 extensiones y un fax. Tenemos 3 líneas troncales basadas en ip y una línea fija a través de LinkSYS SPA3000. Tomó solo 1 mes para que mi tarjeta SD Kingston 4 GB inicial mordiera el polvo.

Todavía estaba experimentando y no tenía una copia de seguridad. Por cierto, el Pi está conectado a un UPS APC. Luego volví a configurar todo el RasPBX desde cero, pero esta vez moví / var / log y / var / lib / mysql a nuestro NAS corporativo. Esta SD todavía estaba bien después de 3 meses.

Luego tuvimos un verano muy caluroso. Durante el tercer mes, el pi comenzó a no detectar el ethernet de la nada. Entonces, un día descubrí que todos los Leds están tenues y no arrancaba.

He reemplazado el Pi con uno nuevo y listo para usar. El fuera de servicio comenzó a funcionar después de enfriarse, pero funciona bastante errático y cuando se inicia en RasPBX, el modo de video no cambiará a gráficos, permanece en 80 * 25 Texto. Realmente estaba en mal estado. He pedido un conjunto de disipador de calor desde entonces. El nuevo Pi funciona con él ahora por más de 2 meses 7/24.

Entonces, si va a usar el pi en un entorno 7/24, no sea barato: compre el disipador térmico y evite usar / var / log y otros directorios ocupados sobre la TARJETA SD.

Kerem Ersoy
fuente
Asegurarse de que var / log esté en un dispositivo adecuado parece un excelente consejo. Por interés, en ese mes problemático inicial, ¿también estaba almacenando buzones de correo de voz en la tarjeta USD? Me pregunto si las tarjetas uSD de alta resistencia como las diseñadas para el uso de Dash Cam podrían ser mejores para mi implementación de RasPBX si decido habilitar los buzones de correo de voz.
Mark Booth
11

He comparado todas las soluciones que utilizan TMPFS y la mejor respuesta es una síntesis del script prepare-dirs (ver http://grenzdebiel.dyndns.org/wordpress/?p=98 ) con un apropiado / etc / defaults / tmpfs ( (ver http://www.a-netz.de/2013/02/ramdisks-for-the-raspberry/ ).

Los pasos necesarios para realizar en raspbian son:

1. editar /etc/default/tmpfsy configurar :

RAMLOCK=yes
RAMSHM=yes
RAMTMP=yes

Recomiendo los siguientes tamaños:

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

2. habilitar directorios adicionales usando / 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. use el script /etc/init.d/prepare-dirspara crear directorios faltantes /var/logpara que todos los demonios comiencen

Vea al final lo que contiene en mi caso.

4. Haga que el script sea ejecutable chmod 755 /etc/initd/prepare-dirs.

5. Asegúrese de que el script se iniciará primero en el arranque antes de que comiencen sus demonios: update-rc.d prepare-dirs defaults 01 99

contenido de /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

Eso es.

usuario13222
fuente
Puppy Linux también usa TMPFS para todo.
DocSalvager
7

Deshabilitar Swapfile:

sudo dphys-swapfile swapoff

No es necesario desinstalarlo; sin embargo, si no lo está utilizando y desea el espacio, puede eliminarlo con seguridad. Comando alternativo para eliminar:

desinstalar sudo dphys-swapfile

Uso: / sbin / dphys-swapfile {setup | swapon | swapoff | uninstall}

Dave Henderson
fuente
5

Flash Cell Endurance:

  • Para Flash de celda de varios niveles (MLC), hasta 10,000 ciclos de escritura por sector físico.
  • Para Flash de celda de nivel único (SLC), hasta 100,000 ciclos de escritura por sector físico.
  • Las SSD más nuevas ofrecen 1 millón de ciclos de escritura por sector físico.

Es puramente matemático en tarjetas grandes y en uso normal. Si tuviera que escribir en una tarjeta flash tipo MLC de 8GB día y noche una y otra vez, tardaría unos 30 días en eliminarla.

El episodio 99 en Techsnap habla sobre el desgaste de los SSD y Allen explica cómo es imposible usar un SSD en el uso diario y no tenemos que preocuparnos por desactivar el intercambio, los crons y todo eso. ¡Simplemente funciona ahora! La nivelación de desgaste inteligente se encarga de todo.

El uso normal según lo citado por Kingston debería darle 27 años de vida de por vida en una cámara digital profesional.

Lo que para las cámaras DSLR normales puede llenar una vez cada pocos meses ... depende de cuánto viaje. Teniendo en cuenta un Pi, si experimentas asignar y volver a flashear a menudo, entonces puede costar más. Por lo general, una vez que está satisfecho con una distribución ... no la vuelve a mostrar durante meses o años. Por lo tanto, para prolongar el desgaste de SD sería bueno seguir algunos consejos sobre la reducción de IO en SD.

El precio del flash ha caído y la tecnología es mucho mejor.

¡La mayoría de las tarjetas SD sobrevivirán a dos o tres generaciones de dispositivos y para entonces se considerará pequeño y demasiado lento para usar con una actualización mucho mejor y más barata disponible!

Piotr Kula
fuente
Una Raspberry Pi configurada con una cámara web por motivos de seguridad puede estar escribiendo datos las 24 horas, los 7 días de la semana. Supongo que en ese caso un SSD es probablemente mejor.
Muy irregular
1
Sí, pero no está escribiendo TODOS los sectores TODO el tiempo secuencialmente. Se gestiona con el menor desgaste y los datos nuevos siempre van al sector / área con menos accesos. El video no sobrescribirá los archivos del sistema de archivos o los archivos de paginación. ¿Cuántas horas puede obtener en una unidad flash de 16 GB? ¡Por lo general, se debe poder acceder al CCTV 15-30 días después! Utilice una unidad de 1 TB o NAS para almacenar con fines históricos. ¡Incluso a corto plazo para el almacenamiento y la transferencia, obtendrá años con una tarjeta SD! Mejor aún, use una SD de 32 gb pero limite la carpeta a 16 GB. ¡Duplicará la vida útil con esa técnica!
Piotr Kula
44
@ppumkin, ¿puede decirnos cómo usa realmente sus tarjetas SD en sus RPi (s)? Muchos de nosotros (Google "sd dañado de frambuesa") hemos encontrado fallas fatales (más de uno, incluido Kingston, ahora que lo mencionas) con sus configuraciones predeterminadas de Raspbian, a pesar de los impresionantes números de proveedores ... Puede ser RPi, no SD, pero sus cifras en papel aún no tienen fundamento sin ninguna referencia a los problemas de RPi SD (¿debería decir bien conocido?), Sus propias prácticas de campo reales o, mejor aún: estudios de casos que desacreditan experimentalmente los "rumores" de daños de SD.
Sz.
1
Mira, todo lo que hablo está vinculado a la referencia. OK, ¿quieres saber cómo lo uso? ¡Yo no! ¡Porque el Pi, es realmente un gran dolor en el culo! Las tarjetas SD siguen fallando y no es la falla de la tarjeta SD. O el hardware o el software de Pi está bloqueando estas cosas. Creo que son los voltajes inestables proporcionados por las fuentes de alimentación USB baratas. El nuevo B + tiene reguladores en ellos. ¡Gracias a Dios! Este WiFi fijo, respuesta de sonido y le pido a Dios que bloquee las tarjetas SD. Todavía necesito ordenar algunos, pero estoy jugando con Netduino ahora, ninguna SD se ha bloqueado aún.
Piotr Kula
1
@ppumkin Usé SanDisk. No los de eBay. Hay una gran diferencia entre volver a flashear una tarjeta SD (para reutilizar en una cámara, por ejemplo) y usarla como el hogar de un sistema operativo. Debes ser más específico en cuanto a cómo usas exactamente el tuyo y cuánto duraron. No es necesario que repita el comentario de Lunakids, pero estoy totalmente de acuerdo con él o ella. .
RolfBly
4

Como se mencionó anteriormente, el problema principal son los archivos y directorios que no vale la pena guardar entre reinicios, pero se escriben con bastante frecuencia, es decir, archivos de caché, carpetas de descarga, etc.

Raspbian, así como Debian y Ubuntu tienen un paquete llamado unburden-home-dir cuyo propósito principal es vincular dichos archivos a un lugar menos problemático como, por ejemplo, un tmpfsmontaje o un disco duro externo que es menos propenso a desgastarse.

Comúnmente se ejecuta en el momento de inicio de sesión en X y está dirigido a los archivos de caché de la aplicación GUI, pero también se puede llamar desde scripts o similares y se configura para archivos arbitrarios en el directorio de inicio de un usuario.

Axel Beckert
fuente
3

Estas son mis recomendaciones para un Debian 8.0 (Jessie)

Se basan en iotop -bktoqqqy iostat -dzp 5. Primero debe ejecutar estos comandos para tener una idea del problema y su solución.

1. Desactivar intercambio

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

2. Use las opciones de montaje y RAM

Monte todas las particiones en la tarjeta SD con las noatime,commit=1800opciones y monte los siguientes directorios en la RAM con estas entradas en su /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

Commit retrasará las escrituras y las recogerá primero.

3. Registre los archivos de registro más frecuentes en /var/tmp/log/

Ver mi descripción ¿Cómo puedo reducir la escritura en archivos de registro ?

4. Evita que Chromium golpee la tarjeta SD

Resulta que Chromium escribe mucho y no se puede detener (ver 176727 , 52663 ). Esto afecta el caché y el directorio de datos del usuario. Las cromo / Consejos y trucos explican cómo esto se puede mover a la memoria RAM. Como la Raspberry no tiene mucha RAM, el Suspender de pestañas sugerido es útil para ahorrar RAM.

a) caché

Limite el tamaño de caché y muévalo a RAM editando /etc/chromium-browser/customizations/00-rpi-varsa

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

Ahora el caché es lo suficientemente pequeño como para moverlo al disco RAM cambiando la XDG_CACHE_HOMEentrada /etc/security/pam_env.confa

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

Ahora mis dos usuarios tienen un pequeño caché de navegador en RAM. Si eso no es suficiente, cambie el caché o / tmp / size según sea necesario.

b) Directorio de datos del usuario

También el directorio de datos de usuario ( .config/chromium/) experimenta escrituras pesadas. El perfil de sincronización-daemon es recomendado por el cromo / Consejos y trucos . Fue desarrollado para administrar el perfil de su navegador en tmpfs y sincronizarlo periódicamente con su disco físico. Lamentablemente, el paquete aún no forma parte de la distribución Raspbian 8.0 (Jessie). Así que aún no he probado esto.

5. Espacio libre en la tarjeta SD

Espacio libre al desinstalar paquetes y archivos que no necesita. Esto debería extender el uso de manera más uniforme en sus particiones.

¡Hecho!

Ahora ejecute una iotop -bktoqqqy iostat -dzp 5otra vez y vea una reducción significativa en el acceso de escritura cuando el sistema está inactivo. Nada se escribe en mi disco durante muchos minutos. Y no se preocupe por el parpadeo del LED verde ACT . Aparentemente no es un buen indicador de acceso de escritura.

Frank Breitling
fuente
2

Solo se puede alcanzar una pequeña reducción de los ciclos de escritura al transmitir la salida de syslog a otro servidor. Por supuesto, tener dicho servidor con una syslogdejecución es una condición previa. Sin embargo, dado que Pi es un juguete para los entusiastas de Linux, este es probablemente el caso. :-)

Para activar esta transmisión, simplemente inserte una declaración como

*.*    @myserver.mydomain

en la parte superior del archivo /etc/rsyslog.conf, comente todas las demás líneas y reinicie el registro mediante la emisión service rsyslog restart. Después de esto, los mensajes deberían llegar al servidor seleccionado.

Un claro efecto secundario ventajoso de esto es que puede monitorear fácilmente su Pi junto con otras máquinas en el mismo servidor. Una desventaja es que durante el inicio y apagado del sistema puede perder algunos mensajes cuando la conexión de red aún no se ha establecido o ya se ha cerrado.

Marcus Rickert
fuente
Tenga en cuenta que los sistemas Linux modernos (incluidos CentOS 7 y Debian 8, y los sistemas basados ​​en aquellos como Raspbian 8) realizan todos los registros en los journaldque los almacena en el diario systemd. También se configuran journaldpara reenviar los registros al socket de syslog en el que rsyslogdestá escuchando; que coloca copias adicionales de los mensajes en los archivos de registro debajo /var/log. Si se siente cómodo usando journalctlpara explorar sus registros (y funciona mucho mejor que /var/loguna vez que esté familiarizado con él), puede deshabilitar por completo rsyslogy guardar algunas escrituras.
Curt J. Sampson el
1

Nota: El límite de 100,000 ciclos es una hipótesis que se aplica a todos los dispositivos informáticos, incluso a las teclas de un teclado. Creo que ejecutar Pi en condiciones de enfriamiento adecuadas y ciclos de apagado / inicio adecuados le dará mejores resultados en lugar de entrar en analogías.

También esto puede aumentar mi opinión anterior.

Agregue un nuevo usuario además del usuario Pi [predeterminado]. Apunte el directorio de inicio del nuevo usuario en la unidad externa [pulgar / disco duro]. Otorgue al nuevo usuario, permisos de superusuario y comience a usarlo como su cuenta principal.

Espero que esto ayude..

piedra de toque
fuente
Siempre trato de escribir menos para ahorrar en los teclados;)
Piotr Kula
Agregar un nuevo usuario no evitará ocupado /var/logy /var/tmp. Además, tener evidencia de la experiencia de que un enfriamiento adecuado hace la diferencia es mucho mejor que decir "Creo".
RolfBly
0

Utilice el demonio syslog de busybox (en el paquete busybox-syslogd en Raspbian / Debian / Ubuntu) en lugar del demonio syslog predeterminado (generalmente rsyslog). Por defecto en Raspbian / Debian / Ubuntu, el syslogd de busybox solo se registra en el buffer de anillo en la memoria y no en el disco. El búfer de anillo tiene un tamaño de 128kB por defecto, es decir, las entradas de registro antiguas giran muy pronto y desaparecen. Pero puede configurarlo para usar más RAM.

Sin embargo, esta es una solución mucho mejor que no tener un demonio syslog en absoluto, es decir, aún puede iniciar sesión y leer las entradas de registro de aprox. últimas horas o días (según el tamaño configurado del búfer de anillo) con el comando logread. También puede usar logread -fpara obtener un tail -fcomportamiento similar para, por ejemplo, almacenar solo entradas de registro interesantes usando un script de filtro o para reenviar entradas de registro a través de la red en otro lugar, por ejemplo, usando stunnelo tal.

Axel Beckert
fuente
-1

Un par de cosas que hice:

chmod del dphys-swapfile (en algún lugar de / etc - no cerca del PI en este momento) para:

sudo chmod a-x dphys-swapfile

Recibo errores menores en el arranque (no puedo iniciar el servicio dphys-swapfile) - Supongamos que hay una mejor manera ... rc-update ??

Además, capturo imágenes del módulo de la cámara para ponerlas en mi servidor web (Pi). Formateé / dev / ram0 en ext2, lo monté como / media / ramdrive (usando /etc/init.rc, creo). Son 4megs, lo suficientemente grandes como para una instantánea. No escribe en SD.

El servidor (oululife.dnsdynamic.com) es experimental, pero en la web. Para realmente estresarlo, dejo que también transmita un episodio MP4 de 'Heartbeat *'. Ejecuta lighttpd, Mysql, PHP, WordPress, e incluso cuando transmito remotamente a través de la web apenas me cuesta sudar, el promedio de carga es de aproximadamente 0,2. Sin exceso de reloj en absoluto. Modelo-B rev. 2, hasta 24/7. Entonces, si puedo obtener mis archivos de registro en el otro 15 / dev / ramX, creo que mi tarjeta Micro-SD 16G durará años ...

usuario10419
fuente