Debian

Debian - 埠 80 被阻止,但我不知道是什麼

  • October 25, 2016

我不能讓 lighttpd 監聽 80 埠。

~# /etc/init.d/lighttpd start
Starting web server: lighttpd2013-03-16 23:15:02: (network.c.379) can't bind to port:  80 Address already in use
failed!

實際上,我的伺服器上也安裝了 apache2(監聽埠 80),但它沒有啟動。

我使用了 netstat / netstat -npl 但沒有幫助

我怎樣才能知道什麼正在使用該埠?

儘管人們已經習慣netstat了這種操作,但很高興知道 Linux 有另一個很棒的(而且,實際上是更優秀的)網路工具—— ss. 例如,要找出哪個程序打開了埠 80,您可以執行它:

sudo ss -pt state listening 'sport = :80'

因此無需通過外部過濾器進行管道傳輸。當然,它有更多有用的旋鈕,所以要熟悉它。

為了完整起見,自從最近我遇到man fuser,我還可以提一下:

  • sudo fuser 80/tcp— 這也使您免於修補cut// …請記住grepawk此表示法是一種捷徑,以防有歧義,您應該使用允許使用的命名空間之一-n …,例如sudo fuser -n tcp 80
  • sudo lsof -n -sTCP:LISTEN -i:80—— @ wallenborn指出。同時不是嚴格要求,強烈建議這樣做,否則它會使用 DNS 解析,這通常會嚴重減慢輸出速度。-n

引用自:https://serverfault.com/questions/488486