当我尝试运行时:
ping www.google.com
我收到以下错误:
ping: icmp open socket: Permission denied
运行并sudo
没有什么区别。
答案1
更新:此问题已修复,因为Windows 10 创意者更新(2017 年 4 月)。Windows 上的 Bash 不再需要管理员权限来执行 ping 命令。
“Windows TCP/IP 堆栈需要管理员权限才能打开 RAW 套接字以采取安全措施”[来源]。 看MSDN 帖子。这仅适用于 使用的 ICMP 等低级网络协议ping
。
以管理员身份运行“Windows 上的 Bash”shell 应该允许 ping 命令工作。只需右键单击其快捷方式并选择选项:
这只对使用这些权限打开的单个会话有效。
如果其他命令也无法连接到互联网(例如) apt-get
,wget
那么你可能还需要查看Windows 子系统(Linux)中 Internet 访问不起作用。
答案2
它之前不起作用,因为正如@Silveri 的回答所指出的那样,它需要 ICMP 协议,在早期版本中没有实现。
从版本 14352 开始,它变成了为具有管理员权限的控制台启用。
从版本 14926 开始,它变成了为没有管理员权限的控制台启用。