【问题标题】:linux dirty_writeback_centisecs kernel parameter has no effectlinuxdirty_writeback_centisecs内核参数无效
【发布时间】:2018-01-15 19:13:43
【问题描述】:

今天,我正在学习 linux 文件系统。我了解了.dirty 内核参数。当我想测试dirty_writeback_centisecs参数时,发现dirty_writeback_centisecs没有效果。

我将dirty_writeback_centisecs 内核参数设置为值5000。

理论上,内存中的脏数据可能会刷新到磁盘。但是我用 Python 打开一个文件hello,然后用文件句柄将“hello world”写入内存。我等了 500 秒,文件hello 还是空的。

测试前,文件hello为空:

linux-4gcq:/tmp # cat hello
linux-4gcq:/tmp #

使用python写文件:

f = open('/tmp/hello','w')
f.write('hello world')

我等了很久,但文件还是空的。

【问题讨论】:

  • 你试过关闭文件吗? f.close()

标签: linux parameters kernel


【解决方案1】:

Python 使用f.write 缓冲输出。您需要使用f.flush

与内核参数无关。无论这些内核参数如何,您都会看到文件内容,它们仅影响某些内容到达媒体时,而不是当您在文件系统中看到它时。

【讨论】:

    猜你喜欢
    • 2021-07-21
    • 1970-01-01
    • 2016-03-24
    • 1970-01-01
    • 1970-01-01
    • 2011-12-25
    • 1970-01-01
    • 1970-01-01
    • 2018-10-26
    相关资源
    最近更新 更多