一、起因
想要通过配置内核菜单,使内核能支持nfs,键入make menuconfig
后,逐级菜单寻找不到NFS client suppor
的开关项。
二、分析
考虑到菜单是由Kconfig文件生成的,打开内核源码中nfs目录下的Kconfig,可以看到:
从图中不难看出这个三态开关的存在依赖于变量INET``FILE_LOCKING``MULTIUSER
,换言之,只要把这三个变量配置好,那么nfs的配置开关就能出现了。
三、解决方法
先通过在内核顶层目录运行grep -r "FILE_LOCKING"
,得到:
从图中不难看出FILE_LOCKING对应的Kconfig位于fs目录下,于是打开该Kconfig文件,搜索FILE_LOCKING,得到:
从上图可见,该变量在内核配置菜单中的描述为"Enable POSIX file locking API",下面就去菜单中勾选上这个配置就好了。
对于MULTIUSER
变量,同理:
从上图可以看到,这个变量在.config
中已经是配置好的状态。
最后,去到nfs级菜单,看到有关配置选项已经有了,只要进行选中即可完成配置,下图为最后配置好的界面: