温馨提示×

ubuntu python权限怎么处理

小樊
67
2026-10-01 12:32:16
栏目: 编程语言

在 Ubuntu 上处理 Python 的“权限问题”,通常分几种常见场景。下面按最常见情况给你说明,并给出安全做法。


一、不要用 sudo 直接装包(最重要)

❌ 错误做法:

sudo pip install xxx

✅ 正确做法(推荐):

python3 -m pip install --user xxx

或使用虚拟环境(见下)。


二、使用虚拟环境(最推荐)

1. 创建虚拟环境

python3 -m venv venv

2. 激活

source venv/bin/activate

3. 安装包(无需 sudo)

pip install xxx

4. 退出

deactivate

✅ 优点:

  • 不影响系统 Python
  • 不需要 root 权限
  • 项目隔离,安全稳定

三、系统 Python 权限不足(常见于 apt 安装的 Python)

Ubuntu 的 /usr/bin/python3 是系统保护目录,不能直接写。

如果你看到类似:

PermissionError: [Errno 13] Permission denied

✅ 解决方式:

  • 用 --user
  • 或用 venv
  • 不要改 /usr/lib/python3

四、运行 Python 脚本没有执行权限

如果是:

./script.py

报错:

Permission denied

✅ 解决:

chmod +x script.py

并确保第一行是:

#!/usr/bin/env python3

五、访问文件 / 设备权限不足

例如读串口、写日志:

PermissionError: [Errno 13] Permission denied: '/dev/ttyUSB0'

✅ 解决:

sudo usermod -aG dialout $USER

然后注销重登。


六、一定要用 root 跑 Python(不推荐)

sudo python3 script.py

⚠️ 仅限:

  • 系统管理脚本
  • 硬件控制
  • 临时调试

七、pip 本身没权限

python3 -m pip install --upgrade pip --user

总结(记住这 3 条就够了)

  1. ✅ 用 python3 -m pip install --user
  2. ✅ 用 venv
  3. ❌ 不要 sudo pip

如果你能说一下具体报错信息或你在做什么(比如:装包 / 跑脚本 / 操作文件 / 服务器部署),我可以直接给你对应命令。

0 踩