linux lsof线程,linux – 为什么rpc.lockd会从netstat / lsof输出中隐藏?

序幕:

在许多恰好充当NFS客户端的计算机上,netstat报告两个打开的端口,没有为关联的守护程序列出PID.通常这可能有点令人担忧.

# netstat -lnp | egrep -- '- +$'

tcp 0 0 0.0.0.0:57448 0.0.0.0:* LISTEN -

udp 0 0 0.0.0.0:48933 0.0.0.0:* -

另外netcat确认TCP端口确实是开放的.

# nc -v localhost 57448

localhost [127.0.0.1] 57448 (?) open

^C

然而,lsof没有报告这两个端口.阴谋增长.

# lsof -i TCP:57448 -i UDP:48933

然而,rpcinfo最终指出了我们正确的方向.它由nlockmgr保持打开,也就是为NFS锁定.取消搜索.

# rpcinfo -p | egrep '57448|48933'

100021 1 udp 48933 nlockmgr

100021 3 udp 48933 nlockmgr

100021 4 udp 48933 nlockmgr

100021 1 tcp 57448 nlockmgr

100021 3 tcp 57448 nlockmgr

100021 4 tcp 57448 nlockmgr

很明显,在挂载NFS导出时会调用lockd / rpc.lockd.这是一个内核线程(它总是吗?),它将自己绑定到临时范围内的一个TCP和一个UDP端口.端口通常可使用fs.nfs.nlm_tcpport和fs.nfs.nlm_udpport sysctls进行重新配置.

问题:

我很感兴趣.会喜欢一些内核内部的洞察力.

>为什么netstat不能看到内核线程的PID?

>为什么lsof不能看到绑定的端口?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值