我正在使用內核模組參數,我發現自己有點困惑。
特別是,我正在嘗試為 XFS 檔案系統啟用 posix ACL 支援。這需要載入XFS模組並將參數XFS_POSIX_ACL
設為yes。如果沒有它,嘗試使用“setfacl”設定 ACL 會導致“不支援操作”錯誤。
在測試環境中,我執行命令“modprobe -v xfs XFS_POSIX_ACL=y”。儘管現在知道您需要先刪除模組才能設定參數,但此命令出現了已經工作了。運行它後,我成功地運行了“setfacl”,設定了一些 ACL 並測試它們的完整功能。
不過,轉移到生產環境,似乎 - 毫不奇怪 - 簡單地運行“modprobe -v xfs XFS_POSIX_ACL=y”似乎並沒有啟用 ACL 支持,可能是因為我沒有先卸載模組。執行該命令不會產生任何輸出,並嘗試設定 ACL 會導致「不支援操作」錯誤。
我遇到的問題是,返回測試環境並嘗試“正確翻轉參數開關”後,運行modprobe -r xfs
“modprobe -v xfs XFS_POSIX_ACL=n" 不會關閉 ACL 支援。我已在詳細模式下運行 modprobe -r,並且該模組實際上已卸載 (rmmod /lib/modules/...xfs.ko) ,但使用 ACL 參數集重新加載它為NO沒有任何影響。
有什麼想法我可能做錯了什麼嗎?
RHEL 4.9、2.6.9-89
更新
看來是我參數寫錯了。運行 modprobe xfs XFS_POSIX_ACL=N 後查看 dmesg:
xfs: Unknown parameter `XFS_POSIX_ACL'
SGI XFS with ACLs, security attributes, large block/inode numbers, no debug enabled
SGI XFS Quota Management subsystem
我在這裡找到了ACL參數: http://how-to.wikia.com/wiki/How_to_configure_the_Linux_kernel/fs/xfs
知道正確的參數可能是什麼嗎? modinfo -p xfs 什麼也沒返回,我在網上找到它很費勁。
答案1
@John K:您上面發布的連結中的所有選項都不是xfs
模組的參數,它們是依賴項選項。
xfs
模組有...沒有參數:
# modinfo xfs
filename: /lib/modules/2.6.18-194.el5/kernel/fs/xfs/xfs.ko
license: GPL
description: SGI XFS with ACLs, security attributes, large block/inode numbers, no debug enabled
author: Silicon Graphics, Inc.
srcversion: DE0AE7E45DF5E1EA03F6EC6
depends:
vermagic: 2.6.18-194.el5 SMP mod_unload gcc-4.1
module_sig: 883f3504bb64522c596239a507de7fd112864709d128ea990dfa46df295317acd048b4a6cd39abde0a0beb9a93708040775f3bac9d185e1eb73cda7c
我所說的依賴項是指:XFS 配額、ACL 等僅在您選擇時才會展開XFS 檔案系統支援:
<M> XFS filesystem support
[ ] XFS Quota support
[*] XFS POSIX ACL support
[ ] XFS Realtime subvolume support
[ ] XFS Debugging support (EXPERIMENTAL)