我正在我的 Ubuntu 系统上安装 hadoop。当我启动它时,它报告端口 9000 繁忙。
我用了:
netstat -nlp|grep 9000
Run Code Online (Sandbox Code Playgroud)
看看这样的端口是否存在,我得到了这个:
tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN
Run Code Online (Sandbox Code Playgroud)
但是我怎样才能得到持有它的进程的 PID?
我的终端逐字输出:
$ getent hosts example.org
2001:500:88:200::10 example.org
$ getent ahosts example.org
192.0.43.10 STREAM 43-10.any.icann.org
192.0.43.10 DGRAM
192.0.43.10 RAW
Run Code Online (Sandbox Code Playgroud)
我认为它们(至少ahosts)都应该打印 IPv4 和 IPv6 地址。为什么这些打印不同的地址类型?
$ uname -srvmpio
Linux 3.2.0-31-generic #50-Ubuntu SMP Fri Sep 7 16:17:36 UTC 2012 i686 i686 i386 GNU/Linux
Run Code Online (Sandbox Code Playgroud)
编辑:看起来它可能与此错误报告有关。
我制作了一个在服务器上运行的 Bash 工具。此工具将在特定时间范围内(即从早上 5 点到下午 3 点 30 分)阻止某些 IP 地址。
目前,该工具工作正常,但我必须手动将某些网站的 IP 地址输入到文本文件中,并让该工具使用“head”和“tail”命令根据第 n 行提取 IP 地址。我不想这样做,因为我相信单个 ping 会更加轻便和便携。因此,如果我为 Google 执行 ping 操作:
ping google.com -c 1 -s 16
Run Code Online (Sandbox Code Playgroud)
输出将是:
Ubuntu@yokai:~# ping google.com -c 1 -s 16
PING google.com (173.194.66.138) 16(44) bytes of data.
24 bytes from qo-in-f138.1e100.net (173.194.66.138): icmp_seq=1 ttl=37 time=46.7 ms
--- google.com ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 46.748/46.748/46.748/0.000 ms
Run Code Online (Sandbox Code Playgroud)
我缩小这个输出的命令是:
ping google.com -c 1 -s …Run Code Online (Sandbox Code Playgroud) 在 Arch Linux 中将主机名解析为本地 IP 地址的最简洁方法是什么?