¿Cuál es la diferencia entre sync
y async
opciones de montaje desde el punto de vista del usuario final? ¿El sistema de archivos montado con una de estas opciones funciona más rápido que si se monta con otra? ¿Qué opción es la predeterminada, si ninguna de ellas está configurada?
man mount
dice que esa sync
opción puede reducir la vida útil de la memoria flash, pero puede ser por la sabiduría convencional obsoleta. De todas formas esto me preocupa un poco, porque mi disco duro principal, donde las particiones /
y /home
se colocan, es duro SSD.
Ubuntu instalador (14.04) no han especificado sync
ni async
opción de /
partición, pero se han establecido async
para /home
la opción defaults
. Aquí está mi /etc/fstab
, agregué algunas líneas adicionales (ver comentario), pero no cambié nada en las líneas hechas por el instalador:
# / was on /dev/sda2 during installation
UUID=7e4f7654-3143-4fe7-8ced-445b0dc5b742 / ext4 errors=remount-ro 0 1
# /home was on /dev/sda3 during installation
UUID=d29541fc-adfa-4637-936e-b5b9dbb0ba67 /home ext4 defaults 0 2
# swap was on /dev/sda4 during installation
UUID=f9b53b49-94bc-4d8c-918d-809c9cefe79f none swap sw 0 0
# here goes part written by me:
# /mnt/storage
UUID=4e04381d-8d01-4282-a56f-358ea299326e /mnt/storage ext4 defaults 0 2
# Windows C: /dev/sda1
UUID=2EF64975F6493DF9 /mnt/win_c ntfs auto,umask=0222,ro 0 0
# Windows D: /dev/sdb1
UUID=50C40C08C40BEED2 /mnt/win_d ntfs auto,umask=0222,ro 0 0
Así que si mi /dev/sda
es SSD, debería hacerlo - en aras de reducir el desgaste - Añadir async
opción para /
y /home
sistemas de archivos? ¿Debo establecer sync
u async
opción para particiones adicionales que definí en mi /etc/fstab
? ¿Cuál es el enfoque recomendado para las unidades SSD y HDD?
Respuestas:
async
es lo contrario desync
, que rara vez se usa.async
es el valor predeterminado, no necesita especificarlo explícitamente.La opción
sync
significa que todos los cambios en el sistema de archivos correspondiente se vuelcan inmediatamente al disco; Se esperan las respectivas operaciones de escritura. Para las unidades mecánicas, eso significa una gran desaceleración, ya que el sistema tiene que mover los cabezales del disco a la posición correcta; consync
el proceso userland tiene que esperar a que se complete la operación. En contraste, conasync
el sistema amortigua la operación de escritura y optimiza las escrituras reales; mientras tanto, en lugar de ser bloqueado, el proceso en userland continúa ejecutándose. (Si algo sale mal, entoncesclose()
regresa-1
conerrno = EIO
).SSD: no sé qué tan rápido se compara la memoria SSD con la memoria RAM, pero ciertamente no es más rápida, por lo que
sync
es probable que afecte el rendimiento, aunque no es tan malo como con las unidades de disco mecánicas. A lo largo de la vida, la sabiduría sigue siendo válida, ya que escribir en un SSD mucho "la desgasta". El peor escenario sería un proceso que haga muchos cambios en el mismo lugar; consync
cada uno de ellos golpea el SSD, mientras que conasync
(el valor predeterminado) el SSD no verá la mayoría de ellos debido al almacenamiento en búfer del kernel.Al final del día, no te molestes
sync
, lo más probable es que estés bienasync
.fuente
sync
ofsync
ofdatasync
llamadas al sistema en una sincronización montado fs?async
. Sin embargo, si esto es un problema, entoncessync
no es la respuesta: la penalización de rendimientosync
es simplemente prohibitiva.Palabras de precaución: el uso de la opción de montaje 'asíncrono' podría no ser la mejor idea si tiene un soporte en el que se escribe constantemente (por ejemplo, registros valiosos, grabaciones de cámaras de seguridad, etc.) y no está protegido contra cortes de energía repentinos . Puede resultar en registros faltantes o datos incompletos (inútiles). Ejemplo no tan inteligente: imagine a un ladrón entrando en una tienda e inmediatamente cortando el cable de alimentación de la cámara. La grabación de video del robo se grabó, pero es posible que no se haya vaciado / sincronizado con el disco ya que (o partes de él) podrían haberse almacenado en la memoria intermedia, por lo que se perdió cuando la cámara perdió energía.
fuente