linux通过哪个命令可以查看某个服务及其端口、进程号

linux通过哪个命令可以查看某个服务及其端口、进程号

2023年7月13日发(作者:)

linux通过哪个命令可以查看某个服务及其端⼝、进程号netstat/lsof

netstat命令⽤于显⽰与IP、TCP、UDP和ICMP协议相关的统计数据,⼀般⽤于检验本机各端⼝的⽹络连接情况

-a 显⽰⼀个所有的有效连接信息列表(包括已建⽴的连接,也包括监听连接请求的那些连接)

-n 显⽰所有已建⽴的有效连接

-t tcp协议

-u udp协议

-l 查询正在监听的程序

-p 显⽰正在使⽤socket的程序识别码和程序名称

例如:netstat -ntupl|grep processname

如何只查询tomcat的连接?

netstat -na|grep ESTAB |grep 80 |wc-l

netstat -na|grep ESTAB |grep 8080 |wc-l

常⽤端⼝介绍:

端⼝:21

服务:FTP服务器所开放的端⼝,⽤于上传、下载。

端⼝: 22

服务:ssh

端⼝: 80

服务:HTTP ⽤于⽹页浏览

端⼝:389

服务:LDAP ILS 轻型⽬录访问协议和NetMeetingInternet Locator Server

端⼝:443

服务:⽹页浏览端⼝ 能提供加密和通过安全端⼝传输的另⼀种HTTP

端⼝:8080

服务:代理端⼝

打开终端,执⾏如下命令,查看各进程占⽤端⼝情况:

# ps -ef|wc -l //查看后台运⾏的进程总数

# ps -fu csvn //查看csvn进程

# netstat -lntp //查看开启了哪些端⼝

# netstat -r //本选项可以显⽰关于路由表的信息

# netstat -a //本选项显⽰⼀个所有的有效连接信息列表

# netstat -an|grep 8080

# netstat -na|grep -i listen //可以看到⽬前系统侦听的端⼝号

# netstat -antup //查看已建⽴的连接进程,所占⽤的端⼝。

netstat -anp|grep1487

lsof -i:1487

查看哪些进程打开了指定端⼝1487

关闭端⼝实际上是关闭其对应的服务,⽐如80端⼝是HTTPD 关闭80端⼝可以通过关闭httpd服务来实现

每个端⼝都有⼀个守护进程,kill掉这个守护进程就可以了

主机的端⼝分为监听端⼝与随机可⽤的⾼级端⼝

监听端⼝:监听端⼝就是主机开启了哪些服务,这个服务会在linux系统⾥启⽤⼀个端⼝来监听客户端的请求

随机可⽤的⾼级端⼝:

linux要向某个主机请求服务时,linux主机需要启⽤⼀个端⼝来对外连接linux会随机去⽤⼀个未被使⽤且端⼝号⼤于1024的端⼝进⾏连接

只有root⽤户可以开启1-1024端⼝表明拥有root权限

netstat-n 显⽰连接状态

netstat-tl 显⽰当前正在监听的服务名称

linux是⼀个列出当前系统打开⽂件的⼯具,在linux环境下,任何事物都以⽂件的形式存在。

lsof输出信息 即可显⽰系统打开的⽂件默认显⽰所有进程打开的所有⽂件

lsof filename 显⽰打开指定⽂件的所有进程

lsof -c string 显⽰command列中包含指定字符的进程所有打开的⽂件

lsof -u username 显⽰所属user进程打开的⽂件

lsof -g gid 显⽰归属gid的进程情况

lsof -i 显⽰符合条件的进程情况

lsof -d 显⽰指定⽂件描述符的进程

lsof -a 标⽰两个参数都必须满⾜时才显⽰结果

例如: lsof-i:1487

查看所属root⽤户进程所打开的⽂件类型为txt的⽂件:

lsof -a -u root -d txt

lsof使⽤实例

1.查找使⽤⽂件系统

卸载⽂件系统时,如果⽂件系统中有任何打开的⽂件,就会出错。可以通过lsof可以找出那些进程在使⽤当前卸载的⽂件系统

# lsof /GTES11/ COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME

bash 4208 root cwd DIR 3,1 40962 /GTES11/

vim 4230 root cwd DIR 3,1 40962 /GTES11/

2.恢复删除的⽂件

当linux计算机受到⼊侵时,常见的情况是⽇志⽂件被删除,管理错误也会导致意外删除重要的⽂件。

当进程打开了某个⽂件时,只要该进程保持打开该⽂件时,即使删除,依然存在于磁盘上。这意味着,进程并不知道⽂件已被删除,在/proc⽬录下,其中包含了反映内核和进程树的各种⽂件。

当系统中的某个⽂件被意外地删除了,只要这个时候系统中还有进程正在访问⽂件,可以通过lsof从/proc⽬录下恢复该⽂件

使⽤lsof来查看当前是否有进程打开/var/logmessages⽂件

# lsof |grep /var/log/messages syslogd 1283 root 2w REG 3,3 5381017 1773647 /var/log/messages (deleted) 从/proc/1283/fd/2

对于许多应⽤程序,尤其是⽇志⽂件和数据库,这种恢复删除⽂件的⽅法⾮常有⽤

发布者:admin,转转请注明出处:http://www.yc00.com/xiaochengxu/1689200106a220000.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信