3. El subsistema rc y los sistemas de archivos de solo lectura

La inicialización posterior al arranque de un sistema FreeBSD embebido es controlada por /etc/rc.initdiskless.

/etc/rc.d/var monta /var como sistema de archivos en memoria, crea una listado configurable de directorios en /var con el comando mkdir(1) y cambia los modos en algunos de esos directorios. En la ejecución de /etc/rc.d/var, otra variable de rc.conf entra en juego: varsize. /etc/rc.d/var crea una partición /var basándose en el valor de la variable en rc.conf:

varsize=8192

Recuerde que por defecto este valor está en sectores.

El hecho de que /var sea un sistema de archivos de lectura y escritura es una distinción importante, ya que la partición / (y cualquier otra partición que pueda tener en su medio flash) se debe montar como solo lectura. Recuerde que en la Sección 1, “Dispositivos de disco de estado sólido” detallamos las limitaciones de la memoria flash, específicamente, la capacidad de escritura limitada. La importancia de no montar sistemas de archivos en medios flash de lectura-escritura, y la importancia de no usar swap, no es exagerada. Un archivo swap en un sistema concurrido puede deteriorar un medio flash en menos de un año. Un logging intenso o la creación y destrucción de archivos temporales puede hacer lo mismo. Por lo tanto, además de quitar la entrada swap de su /etc/fstab, también debe cambiar el campo Options para cada sistema de archivos a ro de la siguiente forma:

# Device                Mountpoint      FStype  Options         Dump    Pass#
/dev/ad0s1a             /               ufs     ro              1       1

Algunas aplicaciones en el sistema comenzarán a fallar inmediatamente como resultado de este cambio. Por ejemplo, cron no se ejecutará correctamente al faltar las cron tabs en /var creadas por /etc/rc.d/var, además, syslog y dhcp encontrarán problemas como resultado de montar el sistema de archivos como solo lectura y la falta de elementos en /var que ha creado /etc/rc.d/var. Sin embargo, esto son solo problemas temporales y se tratan, junto con las soluciones para la ejecución de otros programas de uso común en la Sección 5, “Estrategias para entornos pequeños y de solo lectura”.

Una cosa importante a recordar es que un sistema de archivos que fue montado como solo lectura con /etc/fstab puede ser montado como lectura-escrita en cualquier momento ejecutando el comando:

# /sbin/mount -uw partition

y se puede cambiar de nuevo a solo lectura con el comando:

# /sbin/mount -ur partition

Puede descargar éste y muchos otros documentos desde ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/

Si tiene dudas sobre FreeBSD consulte la documentación antes de escribir a la lista <questions@FreeBSD.org>.

Envíe sus preguntas sobre la documentación a <doc@FreeBSD.org>.