深入探索Linux的lsof命令

Hey小伙伴们,今天来聊聊Linux下的神器——lsof命令!它简直就是查看哪些进程在霸占哪些文件的好帮手。
接下来,就让我带你深入了解一下这个强大的工具吧!
首先,得说说它的来头。
lsof这个宝贝是由Victor A. Abbell在1 9 8 7 年开发的,主要就是为了解决Unix系统的问题。
如今,它已经成为了Linux系统中不可或缺的诊断利器。

那么,它的工作原理是什么呢?简单来说,lsof通过访问Linux的/proc文件系统,获取进程的文件和网络连接信息。
这个文件系统里头藏着实时的系统运行数据,而lsof则把这些数据转换成我们容易理解的样子。

接下来,我们得聊聊lsof的用法。
比如,想看看系统的网络连接情况,就用lsofi;想追踪某个用户的文件打开情况,就用lsofu加上用户名;特定程序呢,用lsofc加上程序名;要查看某个进程打开的文件,那就用lsofp加上进程ID;要是想看看哪个进程在监听特定端口,就用lsofi加上端口号。

看到lsof的输出结果,你得知道怎么解读。
比如,文件描述符显示的是打开文件的描述符,比如标准输入、标准输出啥的;文件类型有REG、DIR之类的;文件名嘛,自然就是打开的文件名了,可能是文件系统路径、网络连接,或者是内存映射啥的。

使用lsof时,有几个注意事项。
首先,得弄明白每个参数的含义,这样才能正确地执行命令。
然后,从输出结果里提取关键信息,这样我们才能定位问题和管理资源。

最后,总结一下,lsof这个工具真是Linux系统管理者的福音。
它能帮助我们深入挖掘文件和网络活动的信息,从而优化资源使用和提高性能。
所以,掌握lsof的使用方法和参数,对于我们进行系统管理和故障排查来说,那可是至关重要的哦!

Linux查看端口号占用情况

嘿,小伙伴们,想在Linux下弄清楚哪个端口被占用了吗?来来来,用lsof和netstat这两个小帮手就能搞定!lsof可是个高手,能帮你列出系统里所有的开放文件,要检查端口就输入lsof-i,记得哦,这活儿得root老大来做。
比如说,想看看服务器上的8 08 0端口谁在用?简单,就是lsof-i命令。
想更细致一点?比如只看8 08 0端口,那就加个:8 08 0;想看哪个文件被哪个进程开着?就用lsof文件名;看哪个进程打开了哪些文件?用lsof-c进程名。
还有更多玩法,比如指定进程号、查找特定目录下的文件等等,具体参数你可以在网上搜一搜。

然后咱们再来聊聊netstat,这货也是好帮手,专门负责TCP和UDP端口信息的。
比如,你想看看8 000端口怎么样?那就用netstat-tulnp|grep8 000。
这样一弄,就能找到占用端口的进程啦。

要是发现某个进程占着端口不让别人用,你还可以用kill命令把它踢掉。
比如,如果8 08 0端口被pid为1 2 3 4 的进程霸占了,那就执行kill-9 1 2 3 4 来结束这个进程。
就这么简单!

【干货】linux查看端口占用情况,【收藏】linux查看端口占用情况

嘿,小伙伴们!今天要给大家分享一个小技巧,就是如何用lsof和netstat查看端口占用情况。
比如,想看看8 0端口的使用情况,就输入lsof-i:8 0,或者用netstat-tunlp|grep端口号,比如netstat-tunlp|grep8 0。
至于top,这里是指最后的福利时间啦!
最近,好多小伙伴都在求Linux学习资料,我就熬夜整理了一份「1 0GLinux学习资料大全」,免费给大家!听说有人靠着这份资料成功进入BAT,所以一定要好好利用哦!这份资料几乎涵盖了Linux基础学习的所有内容,非常适合新手入门。
资料按目录编排,每一章都有详细的内容,包括:

Linux常用命令汇总
Linux经典入门书籍
Linux网络编程教程
Linux成神学习线图
2 2 份BAT面经pdf合集
另外,我还建立了一个「Linux编程交流群」,每天大家都在群里交流学习心得,还有美女程序媛小江答疑解惑。
如果你是Linux新手,相信很快就能融入这个大家庭,认识更多编程大牛。
这份资料也能帮助你快速度过新手阶段,轻松上手Linux。

想要这份「1 0GLinux学习资料大全」和加入编程交流群的小伙伴,可以点击下方的卡片扫码进群免费领取哦!🎉🎉🎉

linux 如何查看端口被哪个程序占用

【步骤一】使用lsof -i命令来查看满足特定条件的进程信息。
lsof,全称list open files,它能够帮我们列出系统当前打开的文件。
如果你是root用户,执行这个命令就会看到相关信息,图示如下。

【步骤二】想查看某个端口的占用情况?那就用lsof -i:端口号,比如要查看2 2 号端口,就输入lsof -i:2 2 ,效果如图所示。

【步骤三】接下来,用netstat -tunlp来展示TCP和UDP端口以及相关的进程信息,具体图示见下图4
【步骤四】想要更精确地找到某个端口的进程?那就把netstat -tunlp的结果通过grep过滤一下,比如查看2 2 端口的进程,就可以使用netstat -tunlp | grep 2 2 ,结果也请参考下图。