python - OSError:[Errno 13] 尝试运行 python3 -m pyftpdlib -p 21 时出现权限被拒绝消息
问题描述
我用过pip3 install pyftpdlib
,它似乎安装正确。
当我运行python3 -m pyftpdlib -p 21
输出看起来像:
Traceback (most recent call last):
File "/usr/lib/python3.7/runpy.py", line 193, in _run_module_as_main
"__main__", mod_spec)
File "/usr/lib/python3.7/runpy.py", line 85, in _run_code
exec(code, run_globals)
File "/home/kali/.local/lib/python3.7/site-packages/pyftpdlib/__main__.py", line 122, in <module>
main()
File "/home/kali/.local/lib/python3.7/site-packages/pyftpdlib/__main__.py", line 112, in main
ftpd = FTPServer((options.interface, options.port), FTPHandler)
File "/home/kali/.local/lib/python3.7/site-packages/pyftpdlib/servers.py", line 118, in __init__
self.bind_af_unspecified(address_or_socket)
File "/home/kali/.local/lib/python3.7/site-packages/pyftpdlib/ioloop.py", line 1018, in bind_af_unspecified
raise socket.error(err)
OSError: [Errno 13] Permission denied
我添加none /dev/shm tmpfs rw,nosuid,nodev,noexec 0 0
到fstab
文件中,但它什么也没做。
另外,我可能把它安装到了错误的地方。这对您来说是否正确:
kali@kali:~/.cache/pip/wheels/69/f8/37/059165ed5bf71d7d824ac4f792009823361e159a47f4469420$ ls
pyftpdlib-1.5.6-py3-none-any.whl
我尝试在 root 中运行并得到了这个:
root@kali:~# python3 -m pyftpdlib -p 21
/usr/bin/python3: No module named pyftpdlib
解决方案
通常这些错误可以通过以管理员身份运行命令来解决。
以管理员身份运行未经验证的软件时应格外小心,因为它可能会危及您的计算机。
但无论如何,您似乎正在尝试运行 FTP 服务器。这是一篇关于为什么只有 root 可以监听低于 1024 的端口的文章。这个链接可能会被重新定义,但在那之前,这是一个不错的信息来源。
后来在评论中我们发现您正在使用的库已以用户身份安装,因此通过pip
以管理员身份安装也有帮助:)
推荐阅读
- java - 如何使用 apache camel bindy 将两个 xml 标签合并为一个 xml
- amazon-web-services - 如何将面向 ELB 的公众设为私有?
- c++ - 如何将 CALLBACK WndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam) 输入(鼠标点击、按键)传递给类
- css - 角材料表多个粘性行
- kubernetes - 如何在 Kubernetes 中重启主节点
- python - % 符号显示在路径中
- teamcity - Teamcity 和 AWS CLI
- python - 如何强制库(pybind11)包含
来自 Python3? - c# - 超链接不呈现 Xamarin.forms
- java - MySQL - 使用 INFILE 时将变量插入列