linux软件包安装和卸载

软件包安装有三种方法:

  • rpm工具
  • yum工具
  • 源码包

1.0 rpm工具使用

设置光驱并挂载
rpm包格式,包名、版本号、发布版本号、平台
rpm -ivh rpm包文件 //安装
rpm -Uvh rpm包文件 //升级
rpm -e 包名 //卸载
rpm -qa //查询安装的包
rpm -q 包名 //查询指定包是否安装
rpm -qi 包名 //查询指定包信息
rpm -ql 包名 //列出包安装的文件
rpm -qf 文件绝对路径 //查看一个文件是由哪个包安装的

点击小光碟,连接

挂载光驱
# mount /dev/cdrom /mnt
挂载光驱后,会在/mnt/Packages 目录下看到许多后缀.rpm的文件,这些就是rpm包
# ls /mnt/
列出十行的rpm包
# ls /mnt/Packages/ | head

注: 每个rpm包的名称都是由-和.分成若干部分,比如

abrt-2.1.11-45.el7.centos.x86_64.rpm

abrt包名:2.1.11-45:版本号;2为主版本号,1为次版本号,11为修正版本
45-el7.centos:发布版本号x86_64.:运行平台,64位 cpu目前分32位和64位,i386、i586、i686是32位,X86_64是64位。64位系统可以安装32位软件,但是32位系统不能安装64为软件。

安装rpm包命令进入/mnt/Packages/目录下执行如下:
# rpm -ivh xdelta-3.0.7-4.el7.x86_64.rpm
安装rpm包
  • rpm -ivh rpm包文件 //安装
  • -i:表示安装
  • -v:表示可视化
  • -h:表示显示安装进度
  • –force:表示强制安装,即使覆盖属于其他包的文件也要安装
  • –nodeps:表示当要安装的rpm包依赖于其他包时,即使其他包没有安装,也要安装这个包
升级rpm包
  • 命令:rpm -Uvh rpm 包文件
  • -U:表示升级
# rpm -Uvh xdelta-3.0.7-4.el7.x86_64.rpm
卸载rpm包
  • 命令:rpm -e 包名
# rpm -e xdelta

卸载是没有任何提示,有提示说明出错

查询一个包是否已经安装
  • 命令:rpm –qa 包名
# rpm -qa yum
查询当前系统所有已经安装的包
  • 命令:rpm -qa
# rpm -qa
查询指定包的信息
  • 命令:rpm -qi 包名
# rpm -qi yum
列出一个rpm包的安装文件
  • 命令:rpm -ql 包名
# rpm -ql yum
根据一个文件的绝对路径,查看这个文件是由哪个包安装的
  • 命令:rpm -qf 绝对路径
# rpm -qf /usr/bin/cd
另外一种方法
# rpm -qf `which cd`

2.0 yum工具

yum比rpm工具更方便,yum工具最大的优势在于可以联网去下载所需要的的rpm包,然后自动安装,安装所有相关的rpm包,解决依赖关系。

yum list //列出可用rpm包
ls /etc/yum.repos.d/
yum search vim //搜索包
yum install [-y]
yum grouplist
yum groupinstall [-y]
yum remove [-y]
yum update [-y]
yum provides “/*/vim”

2.1列出所有可用的rpm包
# yum list
左边是包名,中间是版本信息,右边是仓库名,仓库这边显示@base、@anaconda表示已经安装。如果未安装这显示base或者anaconda,如果是updates表示已安装但是需要升级

yum的配置文件:/etc/yum.repos.d/Centos-Base.repo 里面可以配置仓库名,yum源地址

# cat/etc/yum.repos.d/CentOS-Base.repo
2.2搜索rpm包
  • 命令:yum search 包名
# yum search vim
还有另外一种方法搜索
# yum list | grep 'vim'
2.3 安装rpm包
  • 命令:yum install -y 包名
# yum install -y vim-enhanced
加上-y是不再询问你是否需要安装,-y直接安装不会提示
2.4 卸载rpm包
  • 命令:yum remove -y 包名
# yum remove vim-enhanced
注:建议还是不要用-y,卸载某一个包要看清楚,不要把别的rpm卸载。
2.5 升级rpm包
  • 命令:yum update –y 包名 注意:如果不加包名,会把系统所有的包包括系统本身升级。
2.6搜索一个命令是那个包安装的
  • 命令:yum provides "/*/vim"
# yum provides "/*/vim"

 3.0 使用本地光盘制作yum源

3.1 挂载镜像到/mnt目录

# mount /dev/cdrom /mnt
3.2 拷贝原有的yum源
# cp -r /etc/yum.repos.d/ /etc/yum.repos.d.bak
3.3 删除原有的yum源
# rm -f /etc/yum.repos.d/*
3.4 创建新文件dvd.repo
# vim /etc/yum.repos.d/dvd.repo
[dvd] //仓库名字
name=install dvd
baseurl=file:///mnt //本地源地址
enable=1 //本地是否可用,1可用,0不可以
gpgcheck=0	//是否检测,1检测,0不检测
3.5 清理缓存
# yum clean all
3.6 刷新repos生成缓存
# yum makecache
3.7 使用yum list列出本地所有包
# yum list

4.0yum更改国内源

4.1先安装wget命令

# yum install -y wget

4.2删除原有的源

# rm -f CentOS-Base.repo

4.3安装国内源,先下载国内的repo的源

wget http://mirrors.163.com/.help/CentOS7-Base-163.repo
或者
curl -O http://mirrors.163.com/.help/CentOS7-Base-163.repo

4.5清理缓存

# yum clean all

4.6查看下包

# yum list

5.0 yum下载rpm包

安装扩展源epel

# yum install -y epel-release

过滤查看下

# yum list |grep epel

下载rpm包不安装

# yum install zsh --downloadonly

保存放的地址

# ls /var/cache/yum/x86_64/7/base/packages/

默认会在/var/cache/yum/x86_64/7/xxx/packages/下面xxx是指bash、updatex或者extras等,跟yum list最右侧字符串一致。

如何下载到指定的目录下,命令如下:

# yum install zsh --downloadonly --downloaddir=/tmp/

如果安装过的包是下载不成功的,如何下载?命令如下:

# yum reinstall -y vim-enhanced --downloadonly --downloaddir=/tmp/

6.0 源码包安装

下载源码包放到#cd /usr/local/src/

# cd /usr/local/src/

下载一个apache

# wget https://ftp.bit.nl/apache/httpd-2.2.29.tar.gz

下载完解压

# tar -zxvf httpd-2.2.29.tar.gz

进入cd httpd-2.2.29目录看说明文档

# more README

也可以看安装文档

# more INSTALL

编译安装apache

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

–prefix是指定安装路径

刚刚编译安装就出错,可以echo $? 查看是否出错

# echo $?
1

1表示出错,0没有错误注:运行完命令马上echo $?查看

缺少gcc编译器的包,怎么知道缺少什么包呢?可以百度输出结果

# yum install -y gcc

继续编译

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

编译完成echo $?显示0没有出错,安装它。如何安装命令如下:

# make && make install

make使用这命令,会根据makefile文件预设的参数进行编译

make install 这步是安装步骤,用于创建相关文件存放目录和配置文件。

扩展

1. yum保留已经安装过的包   http://www.360doc.com/content/11/0218/15/4171006_94080041.shtml

2. 搭建局域网yum源 http://blog.lishiming.net/?p=500

posted @ 2020-08-12 21:14  烟头001  阅读(685)  评论(0编辑  收藏  举报