Existe uma maneira de sincronizar apenas uma partição em vez de todas as partições?
Algo como "sync / dev / sdc1".
Existe uma maneira de sincronizar apenas uma partição em vez de todas as partições?
Algo como "sync / dev / sdc1".
Respostas:
você pode remontar com a opção sync e remontar novamente com async:
mount -o remount,sync /mountpoint
mount -o remount,async /mountpoint
Usar a opção remontar não interferirá nos processos que usam o sistema de arquivos remontado.
Há uma função padrão para dados de sincronização (e metadados) de um arquivo: fsync
. Não existe um comando shell padrão ou comum para acessá-lo, mas você pode usar o sync
método do perl em IO::Handle
:
perl -MIO::File -e 'new IO::File($ARGV[0], "r+")->sync()' filename
Não há função padrão ou comum ou comando de shell para sincronizar apenas uma partição.
Nos sistemas Linux recentes , existe a syncfs
chamada do sistema (introduzida no kernel 2.6.39 e exposta desde o glibc 2.14 ). Eu não acho que essa chamada de sistema esteja exposta no coreutils ou no util-linux ainda.
syncfs
é a parte mais relevante.
Se você quer dizer o sync
utilitário que libera dados da memória para o disco, a resposta é não. Isso se deve ao fato de que sync
geralmente é usado durante um procedimento de desligamento ou reinicialização, onde é aconselhável obter dados gravados com segurança no disco, e o objetivo real da operação é a memória, não os discos, e a retirada desses dados em buffer da RAM para algum lugar seguro. Os discos são exatamente onde os dados terminam.