You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu服务器/var目录下虚拟环境安装Flask出现权限报错问询

问题原因
  • 你的问题确实和虚拟环境放在/var目录的操作逻辑有关,核心是权限配置错误:你用sudo在/var目录创建虚拟环境时,生成的project_env目录所有者是root用户,你当前登录的普通账户没有写入该目录的权限,所以第一次pip安装会触发Errno 13权限报错
  • 虚拟环境默认禁用--user参数安装,因为虚拟环境的设计逻辑就是隔离用户全局site-packages,所以第二次报错属于虚拟环境的正常限制,和配置无关
  • 你把虚拟环境放在/var目录统一管理、方便同事访问的需求本身没有问题,只要调整创建和权限配置的操作即可解决
正确操作步骤

第一步:删除已创建的有问题的虚拟环境

sudo rm -rf /var/project_env

第二步:创建共享用户组统一管理访问权限

如果需要多个同事协作访问项目,先创建专用的项目用户组:

# 创建项目组,名称可自定义,示例为project_group
sudo groupadd project_group
# 把你自己和需要协作的同事都加入该组
sudo usermod -aG project_group 你的用户名
sudo usermod -aG project_group 同事用户名

第三步:在/var下创建项目目录并配置权限

# 先创建项目根目录,名称可自定义,示例为flask_api_project
sudo mkdir /var/flask_api_project
# 设置目录所属主和组为root:项目组
sudo chown root:project_group /var/flask_api_project
# 设置目录权限:组内用户有读写执行权限,且新创建的文件自动继承组权限
sudo chmod 2775 /var/flask_api_project

第四步:无需sudo创建虚拟环境

切换到项目目录,用普通用户身份创建虚拟环境即可:

cd /var/flask_api_project
python3 -m venv project_env

第五步:激活环境安装依赖

source project_env/bin/activate
pip install flask

此时不会再有权限报错,所有加入project_group的同事都可以正常访问、操作该虚拟环境和项目文件。

补充注意事项
  • 后续如果给项目配置服务自启,建议把服务的运行用户也加入project_group,避免运行时出现权限问题
  • 不要随意用sudo操作虚拟环境内的pip安装,避免把文件权限改回root导致其他用户无法操作

内容的提问来源于stack exchange,提问作者Pixelherz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 03:36:03