繁体   English   中英

以PyDev为根运行Eclipse

[英]Running Eclipse with PyDev as root

我需要调试使用PyDev插件在Eclipse中编写的程序。 但是我无法调试它,因为Eclipse显然没有这样做的权限。 当调试到达send()函数时,总是会出现以下错误。

socket.error:[Errno 1]不允许操作

使用gksudo运行Eclipse也不起作用。 它打开,但是它说找不到编辑器。

无法打开编辑器:没有ID org.python.pydev.editor.PythonEditor的编辑器描述符

我该如何解决?

我无法发布完整的代码,太长了。 这是一种故障,导致相同的错误。 不允许Eclipse执行send()函数。 在命令外壳中使用sudo执行它即可。

from scapy.all import *
from scapy.layers.inet import IP, UDP

class SomeIP(Packet):
    name = "SomeIP Packet"
    fields_desc=[XShortField("X", 0x1000),
                 XShortField("Y", 0x1000)]

SIP = SomeIP()

packet = IP(src="129.168.101.164",dst="192.168.101.143")/UDP(sport=1000, dport=1000)/SIP

send(packet, verbose=False)

这是我得到的错误-第一行可以忽略。

WARNING: No route found for IPv6 destination :: (no default route?)
Traceback (most recent call last):
  File "scapy_test.py", line 19, in <module>
    send(packet, verbose=False)
  File "/usr/lib/python2.7/dist-packages/scapy/sendrecv.py", line 251, in send
    __gen_send(conf.L3socket(*args, **kargs), x, inter=inter, loop=loop, count=count,verbose=verbose, realtime=realtime)
  File "/usr/lib/python2.7/dist-packages/scapy/arch/linux.py", line 307, in __init__
    self.ins = socket.socket(socket.AF_PACKET, socket.SOCK_RAW, socket.htons(type))
  File "/usr/lib/python2.7/socket.py", line 187, in __init__
    _sock = _realsocket(family, type, proto)
socket.error: [Errno 1] Operation not permitted

您可以使用其他端口号吗? 如果我正确理解了您的代码,则尝试打开数字为1000的端口。由于root用户只能使用最大1024的端口,因此将端口号设置为大于1024可能可以解决问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM