linux查看端口占用
在Linux中,假如端口随意设置就有可能呈现端口被占用情况,这时候就需要找到对应的程序进行处理。
运用ss检查
ss一般用于转储套接字计算信息。它还能够显现所有类型的套接字计算信息,包括PACKET、TCP、UDP、DCCP、RAW、Unix域等。
ss-lntpd|grep:22
tcpLISTEN01280.0.0.0:220.0.0.0:*users:((“sshd”,pid=6806,fd=3))tcpLISTEN0128[::]:22[::]:*users:((“sshd”,pid=6806,fd=4))
通过grep来获取到对应的记载,假如是自身用户能够直接检查到pid信息,假如是其他用户的程序一般运用root权限就能够检查到所有程序的进程信息。
运用netstat检查
netstat能够显现网络连接、路由表、接口计算信息、伪装连接以及多播成员。现在netstat已经过时了,都推荐运用ss来代替。
netstat-tnlp|grep:22
tcp000.0.0.0:220.0.0.0:*LISTEN6806/sshdtcp600:::22:::*LISTEN6806/sshd
同理,要检查到所有程序需要有root权限。
运用lsof检查
lsof(listopenfiles)是一个列出系统上被进程翻开的文件的相关信息。
lsof-itcp:22
COMMANDPIDUSERFDTYPEDEVICESIZE/OFFNODENAMEsshd6806root3uIPv41473990t0TCP*:ssh(LISTEN)sshd6806root4uIPv61474010t0TCP*:ssh(LISTEN)
同理,要检查到所有程序需要有root权限。
运用fuser检查
fuser能够显现出当前哪个程序在运用磁盘上的某个文件、挂载点、乃至网络端口,并给出程序进程的详细信息。fuser只把PID输出到标准输出,其他的都输出到标准错误输出。
fuser22/tcp
22/tcp:6806
总结
对于系统管理员来说,清楚机器上服务与端口的对应联系,是很有必要的。
linux解除端口占用
之前搭建的Cloudreve云盘的服务器到期了,从头拜访后发现失败,连上服务器看了下怎么回事,原来是服务挂了,只能重启了。执行./cloudreve后提示“listentcp0.0.0.0:5212:bind:addressalreadyinuse”,根据提示信息是5212端口被占了,这个5212端口正是Cloudreve云盘的默认端口,从头将5212端口的进程杀死后重启cloudreve就行了。
首先用netstat-nap|grep5212检查5212端口对应的进程(这里是知道端口的情况下运用这个指令)
假如不清楚端口是多少能够运用netstat-nap指令检查对应的进程信息,不过这样的话就会列出所有的进程信息,查找起来不是很方便,所以仍是主张先知道端口再去查,这样会更高效些。
找到进程后用killPID杀死这个进程,我的进程pid如图示
再次从头启动cloudreve服务网盘恢复正常拜访
还有一种检查端口信息指令叫lsof,如图示运用lsof-i:5212也是能够查找的对应进程信息的
评论前必须登录!
注册