重新啟動後 fs.* 有變化嗎?

重新啟動後 fs.* 有變化嗎?

重新啟動我的機器後,sysctl -a給了我不同的輸出(一些變化如kernel.sched_domain.cpu0.domain0.max_newidle_lb_cost預期):

16c16
< fs.dentry-state = 37641       15280   45      0       0       0
---
> fs.dentry-state = 407249      384656  45      0       0       0
19,22c19,22
< fs.file-max = 19473815
< fs.file-nr = 624      0       19473815
< fs.inode-nr = 36402   297
< fs.inode-state = 36402        297     0       0       0       0       0
---
> fs.file-max = 19473810
> fs.file-nr = 864      0       19473810
> fs.inode-nr = 285420  308
> fs.inode-state = 285420       308     0       0       0       0       0

但我不太明白為什麼 fs 相關設定發生了變化,因為我沒有改變/etc/sysctl.conf(也沒有sysctl間接改變)。

更新nr_inodes特別是目錄快取條目的總數和總數的 急劇增加( 中的第一個值fs.dentry-state)。這不像我在重新啟動後創建了 390K+ 目錄。

任何想法或建議都將受到高度讚賞。

答案1

這些參數在運行時會發生變化,並且在重新啟動後預計會有所不同。

https://www.kernel.org/doc/Documentation/sysctl/fs.txt

fs.dentry-state提供目錄快取的狀態。

  1. 第一個數字顯示目錄快取條目的總數
  2. 第二個數字顯示未使用的條目數。
  3. 第三個數字表示目錄被釋放和可以回收之間的秒數。
  4. 第四個測量系統目前請求的頁面。
  5. 最後兩個數字未使用,僅顯示零。
  6. 始終為 0。

fs.file-nr可調參數顯示三個參數:

  1. 總數分配的文件句柄
  2. 的數量目前使用的文件句柄(2.4 核心);或數量目前未使用檔案句柄(2.6 核心)。
  3. 可以指派的最大檔案句柄(也可在 /proc/sys/fs/file-max 中找到)。

前兩個數字參數當然會在運行時和重新啟動後發生變化。

包含fs.inode-nr nr_inodes 和nr_free_inodes。
Nr_inodes 代表系統已指派的 inode 數量。 nr_free_inodes表示空閒inode的數量(?)

相關內容