Linux的RPM和源码包(CentOS)
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