首页 > 系统相关 >Linux下的python的部署

Linux下的python的部署

时间:2024-06-14 11:01:59浏览次数:23  
标签:python 卸载 部署 虚拟环境 conda Linux pip 安装

一、python的验证

一般情况下liunx系统都会自带python

输入python --version 便可以查看当前安装的python版本

二、Linux系统下安装anaconda

步骤大纲:下载anaconda文件→更改文件的权限→开始安装→完成交互问题(更改安装位置)→配置环境变量→更改文件目录权限

2.1、下载anaconda的安装包

官方网址下载:Index of /下载速度比较慢,

建议使用清华开源镜像网站下载然后手动上传到linux上,

下载地址:Index of /anaconda/archive/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror

下载Anaconda3-5.3.1-Linux-x86_64.sh版本就行,文件大小637M

或者在该网站上复制需要的版本的下载链接,然后直接在linux命令行中输入

wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-5.3.1-Linux-x86_64.sh

2.2、使用Linux命令进行安装

2.2.1、上传

将Anaconda3-5.3.1-Linux-x86_64.sh文件从本地上传至/home文件夹下(PS:因为我的磁盘是在/home下挂载的,上传到哪里不影响)

2.2.2、安装

在命令行中切换到anaconda文件所在目录,然后输入:

sh Anaconda3-<对应的版本号>-Linux-x86_64.sh

询问你是否同意 anaconda3 的 license,输入yes,回车即可

这是条款什么的,一直回车到

输入yes

(确认位置)

(PS:一般使用默认的安装即可,官方也推荐使用默认的安装路径,默认的安装路径格式如下:/home//anaconda<2 or 3> 如果是root用户则是:/root/anaconda<2 or 3>)

再次输入yes

(开始安装)

到这里是请求用户是否希望对Anaconda3进行初始化再次输入yes

此时系统弹窗问是否继续安装Microsoft Vscode(提供一种快速的编码编译调试工具)根据个人需求决定是否安装

此处未安装该工具所以输入了no,安装结束

2.2.3、配置环境变量

安装完成后,我们还需要对环境变量进行添加,方便我们启动。无论是哪种内核(版本)的系统,都可以通过修改 /etc/profile 或者 /etc/bashrc的配置信息来达到设置环境变量的目的。

在命令行中进行以下操作:输入 sudo vi /etc/profile在文件的末尾加上下述代码:

export PATH=$PATH:/home/ anaconda3/bin

代码中的/home/anaconda3/需要替换为实际的安装路径。

或者直接在命令行中输入export PATH=$PATH:/home/ anaconda3/bin也可。

2.2.4、检验是否安装成功

检查命令行运行:在命令行中输入 conda --version 或者conda -V命令,如果能够成功输出 Anaconda 的版本号,则说明 Anaconda 安装成功。

打开终端(Terminal),输入python3,如果显示如下图,则表示安装成功。

自此已经完成了Anaconda3的安装。

2.2.5、conda更换镜像源

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/

conda config --set show_channel_urls yes

2.2.6、python更换镜像源

pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

2.2.7、python虚拟环境的使用

有些python发行版提供了python虚拟环境安装,如conda、virtualenv等

查看当前python的虚拟环境conda env list

使用conda创建一个新的虚拟环境。以下是创建名为myenv的环境

conda create -n myenv

conda create --name pytorch python=3.7

查看当前创建的虚拟环境

conda env list

conda info --envs

激活新创建的虚拟环境:

conda activate pytorch

现在,你已经在名为myenv的虚拟环境中,可以开始安装所需的包,并运行Python应用程序。

要退出虚拟环境,使用:

conda deactivate

这些环境可以将Python及其相关包完全隔离开来,有自己的包目录。具体目录位置可以根据不同的虚拟环境而定。

三、Python的依赖库

3.1、安装依赖库

3.1.1、更换为python环境虚拟环境

首先进入python的虚拟环境中。此时输入命令:

conda activate myenv

可以看到这里的虚拟环境为base

3.1.2、安装依赖的注意事项

1、root用户下可能会出现各种奇怪的问题,故不建议使用root用户下安装依赖库。

2、安装依赖库时应注意不要安装在系统指定的路径下,要安装到磁盘挂载的目录下,否则会出现磁盘不足的情况。

3、部分包安装过程中会吃缓存。应注意缓存空间是否足够。

4、此处下载的位置是/home/anaconda3/lib/python3.7/site-packages

5、linux下彻底修改python的包/模块导入路径python模式下,有时候需要导入import某些模块或者包。明明这个模块/包是存在的,却提示导入错误。本文提供一个长期有效的办法,在linux命令行下使用 expert 工具:

export PYTHONPATH= /home/miniconda3/lib/python3.12/site-packages

3.1.3、下载项目

在GitHub中下载Atom的项目,此处这里测试的是7B(开源可商用)

下载地址:https://github.com/LlamaFamily/Llama-Chinese?tab=readme-ov-file

在上一步的虚拟环境base中将项目的依赖库导进去。

torch==2.1.2

bitsandbytes==0.42.0

accelerate==0.27.2

numpy==1.26.4

gekko==1.0.6

pandas

scipy

sentencepiece==0.2.0

datasets

evaluate

pytest

peft==0.8.2

transformers==4.39.0

deepspeed==0.14.0

scikit-learn

torchvision

torchdata

torchaudio

tensorboard

gradio

packaging

此处为GitHub上提供的在项目部署时需要下载的依赖库,部分包比较大,注意所部署的内存

使用pip install (包名) 开始下载安装,注意这里根据需求指定安装路径

故这里的安装命令为

pip install torch --target=/home/anaconda3/lib/python3.7/site-packages

之前更换了镜像园,故下载速度还是很快的

3.2、延伸拓展卸载包

3.2.1. linux下python 包的位置

在Linux系统下,Python的包通常存放在以下几个文件夹中:

1. /usr/lib/python2.7/dist-packages/:这是系统级别的Python包目录,包含了系统安装的Python包,一般不建议在这个目录下修改或添加包。

2. /usr/local/lib/python2.7/dist-packages/:这是本地级别的Python包目录,一般在系统级包目录无法满足需求时使用。可以使用pip来安装包,并将其安装到这个目录下。

3. ~/.local/lib/python2.7/site-packages/:这是用户级别的Python包目录,只对当前用户生效。如果你不希望其他用户访问到安装的包,可以将其安装到这个目录下。

3.2.2. 使用pip卸载包

pip是Python的包管理工具,可以用于安装、升级和卸载Python的第三方库。要卸载库,我们只需要使用pip的uninstall命令。下面是卸载一个名为numby的库的示例:

pip uninstall numby

在执行此命令后,系统会提示确认是否卸载该库。根据提示输入“y”并按回车键确认卸载。

出现Successfully uninstalled numpy-1.26.4这样,numpy-1.26.4库就被成功地从系统中卸载了。

3.2.3. 查看已安装的包

如果想查看系统上已经安装了哪些Python库,可以使用pip的list命令。下面是查看已安装库的示例:pip list

3.2.4. 卸载所有已安装的包

有时候我们可能需要卸载系统上所有已安装的Python库,可以使用pip的freeze和uninstall命令的组合实现。freeze命令会列出所有已安装的库及其版本,而uninstall命令会逐个卸载库。pip freeze | xargs pip uninstall -y

执行此命令后,系统会逐个卸载所有已安装的库,并不会提示确认。请注意,这将卸载系统上所有Python库,包括系统自带的库。因此,在执行此命令之前,请确保您了解其影响,并确保可以重新安装需要的库。

执行语句 pip uninstall vllm

3.2.5. 卸载包后的清理工作

在卸载Python库后,有时候可能需要对系统进行一些清理工作,以确保已卸载的库不会对其他操作产生影响。以下是一些常见的清理步骤:

清理缓存:使用以下命令清理pip的缓存。

pip cache purge

清理残留文件:可以手动删除库的残留文件,例如配置文件、日志文件等。

拓展:如果更新环境变量:如果卸载的库在环境变量中注册了路径,可能需要手动更新或删除相关的环境变量。

标签:python,卸载,部署,虚拟环境,conda,Linux,pip,安装
From: https://blog.csdn.net/weixin_72954236/article/details/139668877

相关文章

  • Llama2的安装部署运行Atom模型的操作步骤
    一、Llama2的安装部署操作步骤1.1、docker环境的使用说明:根据服务器部署的环境来分析,由于此服务器为多人使用,且不相互影响,故此服务器需要进行自己的docker环境下,如果是自己部署那么本身便不存在docker直接滤过1.1即可。1.1.1、启用docker环境服务器环境执行dockerrun-i......
  • CentOS中部署UniASR-中文方言模型
    一、UniASR语音识别-中文方言-通用-16k-离线(模型部署运行)根据ModelScope的官方指导文件,ModelScope仅仅支持Python3.7和Python3.8的版本备注:一开始由于不了解ModelScope的属性,一直是在3.10的虚拟环境下使用,当执行文件时报错需要执行命令行pipinstallmodelscope[audio]-fh......
  • 在Linux中,如何停止正在运行的进程?
    在Linux中,停止正在运行的进程可以采取多种方法,具体取决于你希望如何控制进程以及进程的当前状态。以下是一些常用的方法:1.使用kill命令kill命令是最常用的停止进程的方法。你需要知道进程的进程ID(PID)。发送SIGTERM信号(默认):killPID这会给进程发送一个终止信号(SIGTERM),......
  • 在Linux中,什么是initrd镜像?
    在Linux系统中,initrd(initialRAMdisk)镜像是一个非常重要的组件,它用于在启动过程中加载必要的内核模块和驱动,以便系统能够完全引导起来。以下是具体介绍:概念与作用:initrd是一个被压缩的磁盘映像,它在系统启动时被加载到内存中,并且暂时作为根文件系统使用。其主要目的是在系统启......
  • 在Linux中,如何检查某项服务是否在运行?
    在Linux系统中,检查某项服务是否正在运行可以通过多种方法实现。以下是一些常用的命令和步骤:使用systemctl命令:systemctlstatus服务名:此命令可以显示服务的状态,包括是否正在运行、启动日志等信息。例如,检查Apache服务是否运行,可以使用:systemctlstatusapache2.service。......
  • 在Linux中,如何搜索文件?
    在Linux中,搜索文件是一项常见的任务,有多种工具可以用来搜索系统中的文件。以下是一些常用的命令和方法:1.find命令find是最强大的文件搜索命令之一。它可以在指定目录及其子目录下搜索符合条件的文件。基本用法:find[搜索路径][搜索条件]-exec命令\;示例:搜索/......
  • 在Linux中,suid、sgid和sticky bit这几个术语意思?
    在Linux系统中,suid、sgid和stickybit是文件权限位的三种特殊设置,它们提供了额外的安全特性。以下是对这些术语的详细说明:suid(SetUserIDuponexecution):suid位允许一个程序以文件所有者的权限运行,而不是以执行该程序的用户权限运行。当一个可执行文件设置了suid位时,无论哪......
  • 【Python&RS】基于Rasterio库裁剪栅格数据&压缩栅格影像
    ​     之前分享过【Python&RS】Rasterio库安装+基础函数使用教程,大家有兴趣的可以去看看。由于最近有涉及到栅格裁剪和压缩的问题,所以研究了一下今天和大家分享分享。原创作者:RS迷途小书童博客地址:https://blog.csdn.net/m0_56729804?type=blog1需要的库imp......
  • Linux语言环境变量LANG设置后不生效
    问题描述在Linux系统中,`LANG`环境变量用于设置默认的语言和区域(locale)信息。设置`LANG=c`通常会将语言设置为Clocale(即POSIXlocale),这意味着系统会使用英语,并且字符集设置为ASCII。所以,设置LANG=C之后,是不是理所应当就该回显英文了。然而,哐哐打脸。现在回想起来,这也......
  • Linux DNS域名解析
    DNS系统的作用及类型整个Internet大家庭中连接了数以亿计的服务器、个人主机,其中大部分的网站、邮件等服务器都使用了域名形式的地址,如www.google.com、mail.163.com等。很显然这种地址形式要比使用64.233.189.147、202.108.33.74的IP地址形式更加直观,且更容易被用户记住......