歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> 刷新文件在Linux 放棄讀緩存磁盤訪問時間

刷新文件在Linux 放棄讀緩存磁盤訪問時間

日期:2017/2/28 16:16:03   编辑:Linux教程

我提出的訪問時間來分析一些構建過程,但它不是我想要的方式工作:訪問時間是我第一次更新了讀取文件,然後它就會在停留很長一段時間相同,或直至在下一次重新啟動。 例如:

$ ll -u some_file
-rw-r--r-- 1 root root 1.3M 2010-04-07 10:03 some_file
$ grep abcdef some_file
$ ll -u some_file
-rw-r--r-- 1 root root 1.3M 2010-04-07 11:24 some_file
# The access time is updated

# waiting a few minutes...
$ grep abcdef some_file
$ ll -u some_file
-rw-r--r-- 1 root root 1.3M 2010-04-07 11:24 some_file
# The access time has not been updated :(
我認為該文件是由Linux在自由緩沖存儲器,僅此副本被訪問速度的原因,隨後的時間。 一個解決辦法是拋棄在內存中的緩沖區。 一些論壇搜索後,我發現:

sync
echo 1 > /proc/sys/vm/drop_caches
echo 2 > /proc/sys/vm/drop_caches
echo 3 > /proc/sys/vm/drop_caches
但它不工作,它似乎只寫緩沖區保持同步,而不是讀的。 也許它是由於一些在我的發行版(Fedora 9中)定制的內核配置?

或者我在這裡失去了一些東西? 有沒有辦法實現這一訪問時間刷新?

還請注意,我不想在我的整個模擬一些文件樹寫道。 由於我使用的一些Makefile的編譯系統,這將導致整個項目將在重新建造。

我使用的是標准的ext3文件系統,無需特殊的選項。

/dev/sda1 on / type ext3 (rw)
我試圖重新安裝它strictatime (未確認)和atime (沒有什麼區別,我想這是默認值)。

標簽:Linux文件系統緩存時間
答1:
好吧,這種行為實際上是由於具體的Fedora 9內核停用標准的訪問時間更新優化的理由(寫為每個磁盤讀是非常耗時)。

選項DEFAULT_RELATIME (在我的情況內核2.6.27.25)成立,這禁止訪問時間,如果最後刷新刷新前發生不到一天。

內核編譯選項文檔給出了內核引導選項norelatime它禁用此功能... 但它沒有工作!

要修改成功這個問題,我真的做到:

echo 60 > /proc/sys/fs/relatime_interval
這是減少到1分鐘的間隔。

感謝您的幫助使我的這個解決方案。

答2:
您是否使用noatime選項或relatime安裝選項? 你可以看到,如果你與mount的命令:

[kbrandt@kbrandt-opadmin: ~] mount
/dev/sda1 on / type ext3 (rw,relatime,errors=remount-ro)
如果是這樣,重新掛載文件系統的選項,如果沒有那些(或可能的情況這將是更好的編輯選擇出/etc/fstab ,只是重新啟動)。 這些選項是文件系統無關 。 選項說明這些都是在“文件系統獨立山選項”,在man mount ,但基本上他們阻止或限制性能被更新atime的增加。

我不知道這是您的問題的解決方案,但由於您在訪問時間而定,我建議你這樣做反正。


--------------------------------------------------------------------------------

順便說一句,你可能要問您的具體生成過程進行分析,以確定的atime這裡或stackoverflow是正確的道路可走。


--------------------------------------------------------------------------------

更新: 是否stat -c "%x" filename表現出同樣的事情嗎? (忽略我的最後一次更新,沒有注意到-u選項...),但也許有些事情,你去與ll的別名,所以我會檢查與統計,以確保。

另外,你說/沒有noatime選項,但你做對根系這些測試,而不是另一個文件系統,就像一個NFS裝載的東西?

是否touch -a -t 199812130530設法改變訪問時間?

LapTop006:注意relatime最近成為默認,所以你可能需要強制它使用``strictatime掛載選項。 `芒鄰重新安裝,strictatime掛載點`可以讓你改變這個線上
:是的,“統計”提供了相同的結果,我訪問我的根文件系統。 但是你檢查你的系統? 是否的atime總是在每個文件刷新讀取? 我想知道如果故障是由於我的Linux的味道,而不是一個標准的Linux行為。
凱爾勃蘭特:在我的Ubuntu的桌面上,是中,grep更新訪問時間,如果沒有relatime noatime選項或重新安裝。
:THX的,這個信息給了我一個暗示... 現在看來,這是由於內核編譯選項,我需要重新啟動才能確認,我將提供更多的細節。

Copyright © Linux教程網 All Rights Reserved