首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >数据同步写入磁盘:sync

数据同步写入磁盘:sync

作者头像
心跳包
发布2020-08-31 10:28:34
发布2020-08-31 10:28:34
2.5K0
举报

在Linux/Unix系统中,在文件或数据处理过程中一般先放到内存缓冲区中,等到适当的时候再写入磁盘,以提高系统的运行效率。sync命令则可用来强制将内存缓冲区中的数据立即写入磁盘中。用户通常不需执行sync命令,系统会自动执行update或bdflush操作,将缓冲区的数据写 入磁盘。只有在update或bdflush无法执行或用户需要非正常关机时,才需手动执行sync命令。

语法

代码语言:javascript
复制
sync(选项)

选项

代码语言:javascript
复制
--help:显示帮助;
 --version:显示版本信息。

buffer与cache

  • buffer:为了解决写磁盘的效率
  • cache:为了解决读磁盘的效率

linux系统为了提高读写磁盘的效率,会先将数据放在一块buffer中。在写磁盘时并不是立即将数据写到磁盘中,而是先写入这块buffer中了。此时如果重启系统,就可能造成数据丢失。

sync命令用来flush文件系统buffer,这样数据才会真正的写到磁盘中,并且buffer才能够释放出来,flush就是用来清空buffer。sync命令会强制将数据写入磁盘中,并释放该数据对应的buffer,所以常常会在写磁盘后输入sync命令来将数据真正的写入磁盘。

如果不去手动的输入sync命令来真正的去写磁盘,linux系统也会周期性的去sync数据。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019/05/07 ,如有侵权请联系 cloudcommunity@tencent.com 删除
目录
  • 语法
  • 选项
  • buffer与cache
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档