解决init占用端口问题


systemd有许多优点,就不说明了.
很赞的一个优点是,通过scoket唤醒启动相关服务.
实现快速启动以及进程不死(无限复活)的特性.
有个很头疼的问题就是端口占用问题,无法进行调试.
这个问题目前得到解决了.
通用方案:
以ocserv进程为例,默认占用443端口.

查看端口占用情况:

netstat -apn |grep ':443'

显示被init占用,PID为1.

查看systemd中的配置文件,寻找ocserv相关项目:

find /lib/systemd/system -name '*ocserv*'

显示两条结果

/lib/systemd/system/ocserv.service
/lib/systemd/system/ocserv.socket

使用systemctl终止相关进程:

systemctl stop ocserv.socket
systemctl stop ocserv.service

再次查看端口占用情况:

netstat -apn |grep ':443'

结果为空,表示443端口被释放.

发表评论