【问题标题】:How to confirm whether a block device is not being written anymore after a file write?文件写入后如何确认块设备是否不再被写入?
【发布时间】:2020-07-25 14:06:32
【问题描述】:

当我完成将文件写入设备块(例如,/dev/sda)时,我必须等待一段时间以确保缓冲区仍未被写入设备。我必须设置回调以在完成时触发 UI 事件。

我尝试过使用ejectable property from udisks2,正如文档所述,这只是一个猜测。在我的实验中它并不可靠。

我注意到,当刷新完成时,我的文件管理器 (Nautilus) 允许我卸载设备。什么 API 为我提供了这样的设备属性?

【问题讨论】:

    标签: linux filesystems dbus udisks


    【解决方案1】:

    在设备的文件描述符上调用fsync确认缓冲区已完成写入。

    【讨论】:

      猜你喜欢
      • 2015-03-14
      • 1970-01-01
      • 1970-01-01
      • 2012-06-26
      • 2013-10-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多