¿Hay alguna manera de sincronizar solo una partición?


Respuestas:


10

puede volver a montar con la opción de sincronización y luego volver a montarlo con asíncrono:

mount -o remount,sync /mountpoint
mount -o remount,async /mountpoint

El uso de la opción de remontaje no alterará los procesos que usan el sistema de archivos remontado.


2
¿Por qué crees que son necesarios 2 montajes? En al menos 2.6.32 kernel do_remount_sb realiza sync_filesystem, que es la misma función que se llama en la llamada al sistema syncfs introducida en lwn.net/Articles/433384 .
Yuriy Nazarov

5

Hay una función estándar para sincronizar datos (y los metadatos) de un archivo: fsync. No hay un comando de shell estándar o común para acceder a él, pero puede usar el syncmétodo de perl en IO::Handle:

perl -MIO::File -e 'new IO::File($ARGV[0], "r+")->sync()' filename

No hay una función estándar o común o comando de shell para sincronizar solo una partición.

En sistemas Linux recientes , existe la syncfsllamada al sistema (introducida en el kernel 2.6.39, y expuesta desde glibc 2.14 ). No creo que esta llamada al sistema esté expuesta en coreutils o util-linux todavía.


1
La última oración sobre syncfses la parte más relevante.
Poolie

3

Montar la partición con la syncopción puede ser una solución.


2

Si te refieres a la syncutilidad que descarga datos en la memoria al disco, entonces la respuesta es no. Esto se debe al hecho de que syncgeneralmente se usa durante un procedimiento de apagado o reinicio, donde es aconsejable que los datos se escriban de forma segura en el disco, y el objetivo real de la operación es la memoria, no los discos, y sacar los datos almacenados en la memoria RAM a un lugar seguro Los discos son justo donde terminan los datos.


Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.