Linux的RPM和源码包(CentOS)

时间:2024-01-22 12:01:12

Liunx的软件包有源码包和二进制(RPM)包,源码包即是包含全部的源代码,绝大部分是使用c语言开发,其未经过编译,所以安装时要经过一系列编译,将其变成机器语言才能安装。RPM包是事先经过编译,其安装速度较快,但不能观看到源代码。

Liunx可分为Redhat系列和debian系列,其采用的都是相同的Liunx内核,最大的不同点就是对RPM包的管理,使用的软件源不同。但相比之下debian系列的桌面端较好,Redhat其稳定性较好。所以笔者选择使用Redhat系列的CentOS。

本章实现CentOS的本地RPM包和yum云RPM包的相关命令介绍,及源码包的相关介绍和为CentOS安装Python3.7.1。 

 

RPM包管理:

安装位置是系统默认的

RPM包直接安装会存在依赖包问题

 

命名规则:

python-2.7.5-76.el7.x86_64

名称-版本-发布次数-适用系统.位数

 

RPM包的命令管理:

本地管理,软件包已经下载或安装到本地

【rpm -ivh 包全名】安装,显示详细信息和进度

【rpm -Uvh 包全名】升级软件包

【rpm -e 包名】卸载

【rpm -q 包名】查看安装的软件包的版本,源码安装的包不可查

【rpm -qa 】查询所有安装的包

【rpm -qi 包名】查看包详细信息

【rpm -ql 包名】查看安装的软件包的所有安装位置

【rpm -qf 文件名】通过任意文件名,查看它所属的包全名

 

RPM包的yum管理:

 云管理,软件包需要联网下载,也可更改配置使用本地yum源

 yum安装会自动解决安装的依赖性问题,即安装时需要依赖包时会自动通过服务器下载并安装,不用用户手动安装。

【yum list】查看yum上所有可用软件包

【yum search 包名】通过部分包名查看可用可用软件包

【yum -y install 包名】安装,(-y)是安装时不询问

【yum update 包名】升级软件包,如果省略包名则升级所有,包括liunx内核

【yum remove 包名】卸载软件,但会卸载全部依赖,谨慎!

【yum grouplist】查看所有安装的组,比如桌面、输入法等

【yum groupinstall 软件组名】安装软件包组,卸载用groupremove

 

源码包管理:

安装位置是用户指定的

安装:

1、安装C语言编码器:gcc

yum -y install gcc

2、下载源码包

3、确定目录(系统单方面推荐存放和安装位置):

源码包保存位置:/usr/local/src

软件安装位置:/usr/local/

3、解压缩,并进入解压缩后的目录

4、软件的配置与检测,命令:./configure

确定安装目录:(./configure --prefix=/usr/local/python3)

检测系统环境是否支持安装,是否有缺省

将定义好的功能选项和环境信息写入Makefile文件

5、命令:make

编译,使用gcc将源码包翻译成机器语言

如果报错,可清空临时文件:make clean

6、命令:make install

编译安装,向configure指定的目录写入数据

卸载:

自接把configure指定的安装目录全部清空(r m -rf 目录名)即可

  

源码包安装python3.7.1练练手:

 

LIunx环境:

CentOS-7-x86_64-DVD-1810.iso   桌面版

 该环境默认只有Python2.7,记得好像也没有pip,之前尝试过直接用yum命令安装,但是pip3的安装相对麻烦很多,但如果是使用源码包安装,安装好后就可以在安装目录里的bin下找到pip3,然后软连接到/usr/bin目录下,就可以自接使用pip3干你想干的事情了。源码包的安装就是卸载起来直接删目录就好了,不用太考虑一下残留文件,但安装是也必须考虑依赖性,不过可以等它报错后再一个个跟着提示补包。

 

 1、下载源码包:

https://www.python.org/downloads/release/python-371/

 

 

2、先安装必要依赖:

yum -y install zlib zlib-devel

yum -y install libffi-devel

yum -y install openssl-devel

 

 3、安装步骤命令参考上面源码包管理

 

4、建立软连接

ln -s 安装目录/bin/python3.7 /usr/bin/python3

ln -s 安装目录/bin/pip3 /usr/bin/pip3

后续通过pip3安装的每一个系统命令行软件都需要重新在此建立软连接,因为pip3安装后的第三方包都会存在python3的bin目录下

 


 

 

参考:

https://www.cnblogs.com/yhongji/p/9383857.html

兄弟连细说Liunx