安装软件包的三种方法

(安装与卸载)rpm工具

yum工具  (支持自动安装依赖的包)

源码包    安装源码包,需要我们把源代码编译成可执行的二进制文件

rpm包介绍

rpm安装systemd RPM安装软件_源码包

挂载一下光驱看一下rpm包

mount /dev/cdrom /mnt 挂在到/mnt下

ls /Packages   查看一下里面的rpm包

rpm安装systemd RPM安装软件_源码包_02

画圈的依次为:rpm包格式

包名、版本号、发布版本号、平台

rpm工具使用

rpm -ivh rpm包文件  //安装

-i:表示安装

-v:表示可视化

-h:表示显示安装进度

如:安装一个rpm包(在/mnt/Packages/下)

rpm安装systemd RPM安装软件_源码包_03

rpm安装systemd RPM安装软件_rpm包_04

升级一个rpm包

rpm -Uvh rpm包文件 //升级

rpm安装systemd RPM安装软件_rpm包_05

卸载rpm包

rpm -e 包名  (zsh-5.0.2-28.el7.x86_64.rpm  包名为zsh(以“-”分隔))

卸载时没有提示算正常卸载 (卸载一个包时首先要把它的依赖包先卸载才行)

查询

rpm -qa  //查询安装了的包

rpm -q 包名 //查询一个包是否安装

rpm安装systemd RPM安装软件_linux 解压rpm文件怎么安装软件_06

rpm -qi 包名 //获取一个已经安装了的rpm包的相关信息

rpm安装systemd RPM安装软件_源码包_07

rpm -ql 包名  //列出一个rpm包的安装文件

rpm安装systemd RPM安装软件_rpm包_08

rpm -qf 文件的绝对路径 //可以知道该文件是属于哪个rpm包的

rpm安装systemd RPM安装软件_rpm包_09

rpm -qf `which cd` 这样也可以实现查看一个文件所属的rpm包 (这里的cd是无别名,有别名的话不可以)

rpm安装systemd RPM安装软件_linux 解压rpm文件怎么安装软件_10

yum工具用法

rpm安装systemd RPM安装软件_rpm安装systemd_11

yum 可以自动帮我们安装所需安装包的依赖包(优胜于rpm工具)

yum list  //列出可用rpm包

rpm安装systemd RPM安装软件_包名_12

ls /ect/yum.repos.d

搜索rpm包

1.yum search [相关关键词]

rpm安装systemd RPM安装软件_linux 解压rpm文件怎么安装软件_13

2.使用grep过滤出想要的包名

yum list |grep 'vim'

rpm安装systemd RPM安装软件_rpm安装systemd_14

yum install [-y] [rpm包名] //安装rpm包

yum grouplist //查看可用的组

rpm安装systemd RPM安装软件_包名_15

yum remove [-y][rpm包名]  //卸载同时把依赖包卸载

yum update [-y][包名]

不加包名整个系统都会更新

yum provides "/*/vim"

使用这种通配的格式查找到底vim是使用哪个包

yum搭建本地仓库

rpm安装systemd RPM安装软件_rpm安装systemd_16

有时候我们的linux没联网yum不能用,此时我们做了yum的本地仓库就可以实现我们使用yum下载了

做这些的前提是我们得有一个光驱,然后挂载这个光驱,能让我们能访问到rpm包。

(1)挂载光驱(挂载到/mnt)

mount /dev/cdrom /mnt

(2)删除/etc/yum.repos.d 目录下的所有repo文件

(删除前先备份)

cp -r /etc/yum.repos.d /etc/yum.repos.d.bak

rm -rf /etc/yum.repos.d/*

rpm安装systemd RPM安装软件_包名_17

(3)创建新文件dvd.repo

vi /etc/yum.repos.d/dvd.repo

加入以下内容保存

[dvd]

name=install dvd

baseurl=file:///mnt

enable=1

gpcheck=0

rpm安装systemd RPM安装软件_rpm安装systemd_18

(4)清除一下以前的缓存

yum clean all  (yum makecache)

rpm安装systemd RPM安装软件_源码包_19

然后 yum list |less 可以看到最右边有出血dvd库的,这些包就是还没安装的

rpm安装systemd RPM安装软件_rpm包_20

(5)安装

yum install [-y] GConf2

rpm安装systemd RPM安装软件_源码包_21

yum更换国内源

rpm安装systemd RPM安装软件_源码包_22

自带的yum 安装源是国外的,下载时会比较慢

删除刚创建的文件dvd 恢复备份

rm -f dvd.repo

cp /etc/yum.repos.d.bak/* /etc/yum.repos.d

(mv /etc/yum.repos.d.bak /etc/yum.repos.d)

然后 yum list (必须执行,生成缓存,方便使用)

安装国内源:

1.

rpm安装systemd RPM安装软件_linux 解压rpm文件怎么安装软件_23

2.输入命令安装国内源地址

(因为删了centos-base.repo 且wget命令不存在,选用下面的那条命令 或者先安装wget)

或者

3.再yum list

yum下载rpm包

安装扩展源epel

rpm安装systemd RPM安装软件_源码包_24

yum install -y epel-release

rpm安装systemd RPM安装软件_linux 解压rpm文件怎么安装软件_25

yum list

rpm安装systemd RPM安装软件_源码包_26

yum下载rpm包

rpm安装systemd RPM安装软件_包名_27

如果我们下载的包已经下载过了会提示我们包已经安装

rpm安装systemd RPM安装软件_rpm安装systemd_28

下载以后到底有没有安装呢?使用 rpm -q 包名查看

rpm安装systemd RPM安装软件_rpm包_29

如何查看包被下载到何处?

rpm安装systemd RPM安装软件_rpm安装systemd_30

为什么是在epel/package?可以查看下载时依赖的源

rpm安装systemd RPM安装软件_linux 解压rpm文件怎么安装软件_31

指定下载的路径

yum install [-y] 包名 --downloadonly --downloaddir=路径

yum install -y zstd --downloadonly --downloaddir=/tmp/

rpm安装systemd RPM安装软件_linux 解压rpm文件怎么安装软件_32

如果目录下已经下载了rpm包,我们可以

yum reinstall [-y] 包名 --downloadonly

源码包

(源码包尽量放在/usr/local/src目录下)

1.先进入到/usr/local/src目录下 //cd/usr/local/src

2.使用wget下载源码包(如果没有wget工具:yum install -y wget)

rpm安装systemd RPM安装软件_源码包_33

3.解压源码包(这里是tar.gz)

tar -zxvf httpd-2.2.34.tar.gz

rpm安装systemd RPM安装软件_源码包_34

说明文档 README     安装文档 INSTALL

说明文档 README (介绍该源码包)

rpm安装systemd RPM安装软件_linux 解压rpm文件怎么安装软件_35

安装文档INSTALL(有安装步骤命令)

rpm安装systemd RPM安装软件_包名_36

rpm安装systemd RPM安装软件_rpm安装systemd_37

安装过程  (.configure --help 可以看到该包的功能)

1.  ./configure --prefix=路径  (指定安装路径,首先要进入到安装源文件目录下;./表示当前)

rpm安装systemd RPM安装软件_rpm包_38

./configure --prefix=/usr/local/apache2

.判断命令是否执行成功

rpm安装systemd RPM安装软件_rpm包_39

如果看不懂这些英文指示

使用 echo $? (验证上一条命令是否成功,0:成功 ;1:失败)

如果看到 gcc no gcc不存在 安装 yum install -y gcc

rpm安装systemd RPM安装软件_linux 解压rpm文件怎么安装软件_40

返回值为1 安装gcc后再执行上一条命令

./configure --prefix=/usr/local/apache2

正常执行 echo $? 返回0 后就是成功生成Makefile

2.执行命令 make 进行编译

执行完命令make 后 然后查看一下是否执行成功 echo $?

rpm安装systemd RPM安装软件_源码包_41

返回0 成功继续下一步

3.make install

rpm安装systemd RPM安装软件_rpm安装systemd_42

执行成功

要删除这个包直接把该目录(apache2)删除

安装源码包一定要到官方下载