Linux下查看端口占用情况
Linux下查看端口占用情况
有时候,服务器上并没有什么问题,但网站却打不开,或是Mysql服务是启动的,但连接不了,重启依依旧。这时候就要考虑是不是端口被占用了,或是因为软件冲突,或是因为软件出问题了。用启动服务的账号登录,然后运行命令:
lsof -i:<端口号>
例如:
[root@SonarServer1 user0]# lsof -i:80
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
java 19408 root 144u IPv6 183572842 0t0 TCP *:http (LISTEN)
也可使用命令:
netstat -apn|grep <端口号>
例如:
[root@SonarServer1 user0]# netstat -apn|grep 80
tcp 0 0 :::80 :::* LISTEN 19408/java
找到进程号以后,再使用以下命令查看详细信息:
ps -aux|grep <进程号>
[root@SonarServer1 user0]# ps -aux|grep 19408
Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.8/FAQ
root 19408 3.8 2.2 2520992 357368 ? Sl 10:29 0:27 java -Djava.awt.headless=true -XX:MaxPermSize=128m -Xms256m -Xmx512m -Djava.library.path=./lib -classpath ../../lib/servlet-api-2.5-20081211.jar:../../lib/jetty-util-6.1.25.jar:../../lib/activation-1.1.jar:../../lib/geronimo-spec-jta-1.0-M1.jar:../../lib/wrapper-3.2.3.jar:../../lib/commons-io-2.0.1.jar:../../lib/jetty-6.1.25.jar:../../lib/sonar-application-3.2.jar:../../lib/jetty-naming-6.1.25.jar:../../lib/jetty-plus-6.1.25.jar:../../:../../extensions/jdbc-driver/mysql/mysql-connector-java-5.1.18.jar:../../extensions/jdbc-driver/postgresql/postgresql-9.0-801.jdbc3.jar:../../extensions/jdbc-driver/mssql/jtds-1.2.4.jar -Dwrapper.key=n24m_l80HqD33MJi -Dwrapper.port=32000 -Dwrapper.jvm.port.min=31000 -Dwrapper.jvm.port.max=31999 -Dwrapper.pid=19406 -Dwrapper.version=3.2.3 -Dwrapper.native_library=wrapper -Dwrapper.service=TRUE -Dwrapper.cpu.timeout=10 -Dwrapper.jvmid=1 org.tanukisoftware.wrapper.WrapperSimpleApp org.sonar.application.StartServer
root 19460 0.0 0.0 105476 948 pts/5 S+ 10:41 0:00 grep 19408