Optimizar el sistema de archivos para acelerar la integridad

1

En Linux, uso el noatime,nodiratime,nobarrier,data=writeback mount optioins en /etc/fstab para intercambiar la seguridad / consistencia / integridad del sistema de archivos por velocidad que tenga sentido para el desarrollo local. ¿Hay alguna manera de hacer algo similar o de lo contrario hacer un intercambio para los otros desarrolladores de OS X en mi equipo?

    
pregunta Ross Patterson 06.02.2015 - 20:40

1 respuesta

2

Ir con el sistema de archivos predeterminado en una instalación de OS X / macOS

La página del manual para mount en macOS enumera solo dos opciones relacionadas con el rendimiento de hfsplus:

 - async         All I/O to the file system should be done asynchronously.
                 This can be somewhat dangerous with respect to losing
                 data when faced with system crashes and power outages.
                 This is also the default.  It can be avoided with the
                 noasync option. 

- noatime        Do not update the file access time when reading from a
                 file.  This option is useful on file systems where there
                 are large numbers of files and performance is more criti-
                 cal than updating the file access time (which is rarely
                 ever important).

Por lo tanto, solo queda la opción noatime para mejorar aún más el comportamiento predeterminado. Como no hay fstab en macOS, tiene que (re) montar sus sistemas de archivos de otra manera.

El el motor de búsqueda más popular para lograr un montaje automático enumera este método:

Crea un archivo llamado com.noatime.plist en /Library/LaunchDaemons . Si solo tiene 1 partición SSD, desde donde arranca su sistema operativo, es todo lo que necesita.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
    <dict>
        <key>Label</key>
        <string>com.noatime.root</string>
        <key>ProgramArguments</key>
        <array>
            <string>/sbin/mount</string>
            <string>-vuwo</string>
            <string>noatime</string>
            <string>/</string>
        </array>
        <key>RunAtLoad</key>
        <true/>
    </dict>
</plist>

Establezca la propiedad del archivo con el comando

sudo chown root:wheel /Library/LaunchDaemons/com.noatime.plist
sudo chmod 644 /Library/LaunchDaemons/com.noatime.plist

Reinicia el sistema o

sudo launchctl load -w /Library/LaunchDaemons/com.noatime.root.plist

Para verificar, ingrese el comando mount en un indicador de Terminal. Debería ver noatime listado como un atributo de su sistema de archivos.

¿Pero qué hace? Bueno, en pocas palabras: ejecuta este comando en el momento del inicio (bueno, después del inicio, durante la secuencia de carga para el resto)

mount -vuwo noatime /

Supongo que tienes una pista de lo que hace el comando " mount ", pero mira las opciones:

-v = verbose; en realidad ... esto no es absolutamente necesario ya que es un comando sin cabeza arriba; aunque es de suponer que podría aparecer en el registro del sistema en algún lugar y en casos de error

-u el indicador -u indica que se debe cambiar el estado de un sistema de archivos ya montado. (En este punto de la secuencia de carga, nuestros sistemas de archivos ya se han montado)

-w monta el sistema de archivos de lectura-escritura (probablemente no se necesite el 100%)

-o noatime (establecer la opción noatime)

Ir con las opciones alternativas del sistema de archivos

Los sistemas de archivos de Apple son bastante malos desde el principio y falta soporte para sistemas de archivos alternativos. Pero eso no significa que estés completamente sin opciones.

  • Puede ir a RAM- Discos
  • Puede intentar usar sistemas de archivos alternativos como ZFS o otro sistema de archivos a tu gusto a través de fusible .
  • Puede probar y usar el de Sierra, hm, 'usable' nuevo sistema de archivos AFPS (advertencias más fuertes: aún es beta y se comportará como una durante los próximos meses)
  • Es posible que sea un jefe de bloque conservador y gastos generales cosas como el diario o volúmenes de almacenamiento con cifrado (de lo contrario no se recomendaría, pero considerando sus necesidades especiales ...). Por desgracia, estas no son opciones de montaje, pero necesitan que proporcione particiones en ese estilo. (Y mientras que la opción de montaje noatime también podría aplicarse allí, no tengo benchmarks listo para compare en un sistema Sierra moderno que ejecuta sistemas de archivos no compartidos versus los valores predeterminados.)
respondido por el LangLangC 09.09.2017 - 12:13

Lea otras preguntas en las etiquetas