gpt4 book ai didi

python - 无需 root 权限即可在 Python 中 Ping 服务器

转载 作者:行者123 更新时间:2023-12-01 03:32:21 28 4
gpt4 key购买 nike

我有一个 python 脚本,仅当我的服务器可用时才有效。因此,在脚本开始之前,我想 ping 我的服务器,或者检查服务器的可用性。

已经有一些相关的SO问题。例如

  1. pyping module

    response = pyping.ping('Your IP')
    if response.ret_code == 0:
    print("reachable")
    else:
    print("unreachable")
  2. ping process in python

    response = os.system("ping -c 1 " + hostname)

这些答案效果很好,但仅限于 ROOT 用户!当我作为普通用户使用此解决方案时,我收到以下错误消息:

ping: Lacking privilege for raw socket.

我需要一个解决方案,我可以作为普通用户执行此操作,因为我在 jenkins 作业中运行此脚本,并且无法选择以 root 身份运行。

最佳答案

假设机器正在运行一个 http 服务器,尝试执行 HTTP HEAD 请求就足够了吗?

from http.client import HTTPConnection # python3

try:
conn = HTTPConnection(host, port, timeout)
conn.request("HEAD", "/")
conn.close()

# server must be up
except:
# server is not up, do other stuff

关于python - 无需 root 权限即可在 Python 中 Ping 服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40745862/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com