启动Eureka注册中心服务的Main方法报错:
错误原因The Tomcat connector configured to listen on port 1000 failed to start. The port may already be in use or the connector may be misconfigured.
最一开始以为是端口被占用,于是就去检查了一下1000端口占用情况:
yuanbaoqiang@yuanbaoqiang-911 ~/Nutstore Files/Nutstore/myblog$ lsof -i:1000 yuanbaoqiang@yuanbaoqiang-911 ~/Nutstore Files/Nutstore/myblog$
发现1000并没有被占用,可是自己的程序在Windows上跑起来是没有问题的!目前这个有问题的程序是在ubuntu上发生的,于是去查阅了以下linux下端口的使用权限问题。对于10204以下的端口考虑到安全问题需要root权限!
The TCP/IP port numbers below 1024 are special in that normal users are not allowed to run servers on them. This is a security feaure, in that if you
connect to a service on one of these ports you can be fairly sure that you have the real thing, and not a fake which some hacker has put up for you.
The normal port number for W3 servers is port 80. This number has been assigned to WWW by the Internet Assigned Numbers Authority, IANA.
When you run a server as a test from a non-priviliged account, you will normally test it on other ports, such as 2784, 5000, 8001 or 8080.
最后在程序报错日志中的的确确也看到了以下的信息,最终原因确定是端口权限问题!
解决方案Caused by: java.net.SocketException: Permission denied
at sun.nio.ch.Net.bind0(Native Method) ~[na:1.8.0_271]
at sun.nio.ch.Net.bind(Net.java:444) ~[na:1.8.0_271]
at sun.nio.ch.Net.bind(Net.java:436) ~[na:1.8.0_271]…
要么提升使用权限,要么修改服务端口号。也可参考:linux 监听端口_Linux普通账户启动应用程序时监听1024以下端口好方法
修改端口后:
yuanbaoqiang@yuanbaoqiang-911 ~/Nutstore Files/Nutstore/myblog$ lsof -i:1025 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME java 11362 yuanbaoqiang 147u IPv6 158771 0t0 TCP *:1025 (LISTEN)
又是熟悉的味道~



