0330Linux软件包安装和卸载

7.1 安装软件包的三种方法
7.2 rpm包介绍
7.3 rpm工具用法
7.4 yum工具用法
7.5 yum搭建本地仓库(视频中ppt小错误: gpcheck改成gpgcheck,yum cean 改成 yum  clean)
7.6 yum更换国内源
7.7 yum下载rpm包
7.8/7.9 源码包安装html

扩展
1. yum保留已经安装过的包   http://www.360doc.com/content/11/0218/15/4171006_94080041.shtml
2. 搭建局域网yum源 https://blog.csdn.net/miouqi/article/details/73159297linux

 

 搭建一个局域网http的yum源 http://blog.lishiming.net/?p=500git

使用yum install -y yum-utils  安装yum-utilsgithub

安装完成后可使用yumdownloader命令下载rpm包apache

使用yum localinstall zsh-5.0.2-31.el7.x86_64.rpm  安装,若是有依赖包,会自动到yum仓库下载vim

 

1、安装软件包的三种方法centos

一、rpm工具
二、yum工具
三、源码包缓存

2、 rpm包介绍网络

rpm命令是RPM软件包的管理工具。rpm本来是Red Hat Linux发行版专门用来管理Linux各项套件的程序,因为它遵循GPL规则且功能强大 方便,于是广受欢迎。逐渐受到其余发行版的采用。RPM套件管理方式的出现,让Linux易于安装,升级,间接提高了Linux的适用度。

在虚拟机界面右下角选择光盘图标,右键链接,链接完成后将它挂载到/mnt/下less

mount /dev/cdrom /mnt/  挂在后提示写保护,由于光盘是没法写入,是只读的

挂载完成后,mnt目录下的文件和目录就是光驱中的内容,安装系统时使用。

cd Packages

查看Packages下的内容,这里面就是rpm包

zziplib-0.13.62-9.el7.x86_64.rpm
zziplib     包名
0.13.62        版本号
9.el7        发布版本号,7表明是centos7
x86_64        平台位数  64位,centos7默认都是64位
rpm            后缀名

3、rpm工具用法

-i表示安装
-U表至升级一个包
-v表示可视化
-h显示安装进度
-e卸载一个包
-q查询一个包是否已经安装
-qi查询指定包信息
-ql列出一个包安装的文件

-qf  文件绝对路径   查看文件是由哪一个包安装的

 

rpm -ivh zsh-5.0.2-31.el7.x86_64.rpm    安装zsh-5.0.2-31.el7.x86_64.rpm

 rpm -Uvh zsh-5.0.2-31.el7.x86_64.rpm   升级包时使用-U

 rpm -e zsh  卸载 ,没有任何提示

 

rpm -qa   查询已安装的包

rpm -q zsh       rpm -q 包名  查看指定包是否安装

 rpm -qi vim-enhanced        rpm -qi  包名 查询指定包信息

 rpm -ql vim-enhanced        rpm -ql  包名  列出包安装的文件

 rpm -qf /usr/bin/vim      rpm -qf  文件绝对路径    查看一个文件是由哪一个包安装的

 rpm -qf `which cd`           

知识点:使用反引号which命令查看,只能查只有一行显示路径的命令,例如ls则不能够

4、yum工具用法

使用rpm安装时须要先安装依赖包

 yum install texlive    使用yum能够安装依赖包

yum list    列出可用yum包

左侧是包的名字和相关信息
中间是版本号及平台版本号
最后是仓库名

查看仓库名在yum的配置文件 ls /etc/yum.repos.d/查看

cat /etc/yum.repos.d/CentOS-Base.repo

yum search vim  搜索vim相关的包

使用search搜索不严谨,只要含有vim的都会查找出来,并且不区分大小写

yum list |grep 'vim'   精确查找        |管道符做用把yum  list 输出的结果输入给 grep 'vim',在yum list 的结果中再去过滤vim 

grep :过滤指定字符串         |  管道符

安装包yum install -y  包名,加上-y,不会再询问是否安装

yum grouplist   列出可用组

使用LANG=en  切换为英文

 

 

 yum groupinstall 'Virtualization Host'   这里也能够加-y,包中存在空格,使用' '

 

卸载包 yum remove  -y    包名          -y能够加或不加   

升级包 yum update [-y]  
若是不加包名,会把系统全部包进行升级,甚至包括系统、内核。每每只有在刚安装完系统以后才会使用

yum provides "/*/vim"    根据命令搜索包,针对的是没有安装的命令

5、yum搭建本地仓库

1.首先要先将光盘或者镜像挂载到/mnt/目录下,使系统能够访问
在没联网的状况下yum是使用不了的,这时候能够搭建一个本地仓库,方便安装包和它所依赖的包。
2.操做的时候可能会删除文件,因此提早备份下
cp -r /etc/yum.repos.d /etc/yum.repos.d.bak

cd /etc/yum.repos.d  进到目录
3.删除/etc/yum.repos.d下全部的文件  : rm -rf ./*  

4.建立dvd.repo

vi dvd.repo

[dvd]                           //仓库名
name=install dvd        //自定义一个描述字符
baseurl=file:///mnt    //路径地址
enable=1                    //是否可用,1表明可用,0不可用
gpgcheck=0                //是否检测, 0不检测 ,1 检测

5.清除yum缓存

yum clean all

6.查看yum list | less

右边带@的表示已经安装的,下边仓库名为dvd表示可安装的包

7.使用yum安装

若是本地源和网络源同时存在,网络源生效。要想让本地源生效,须要将网络源更名或删除

6、yum更换国内源

系统自带的yum源很差使,由于有国外的源,没有国内的访问速度快

cd /etc/yum.repos.d
rm -f dvd.repo    将以前的dvd.repo删掉

cp ../yum.repos.d.bak/* .  恢复以前的备份,注意空格

删掉CentOS-Base.repo    核心文件

rm -f CentOS-Base.repo

下载国内163的源: wget http://mirrors.163.com/.help/Cent0S7-Base-163.repo或curl -O http://mirrors.163.com/.help/CentOS7-Base-163.repo

若是CentOS7-Base-163.repo名称更改将没法安装包

7、 yum下载rpm包

安装扩展源epel

yum install -y epel-release

在使用 yum list |grep epel查看时,会看到增长了更多的包

yumdownloader 包名    下载到当前路径
yum install -y  包名 --downloadonly 仅下载不安装
这种用法须要确认下载的rpm包是否是已经被安装过了

下载的包的存放位置
ls /var/cache/yum/x8G_64/7/仓库名/Packages 刚才下载的znc包仓库名为epel

 ls /var/cache/yum/x86_64/7/epel/packages/

下载包到指定路径
yum install -y 包名--downloadonly --downloaddir=路径

因为 vim-enhanced已经安装过了,因此在tmp下没有

使用yum reinstall vim-enhanced --downloadonly --downloaddir=/tmp/  从新安装

8、源码包安装

源码包存放路径:/usr/local/src/

使用 wget https://ftp.bit.nl/apache/httpd-2.2.29.tar.gz下载apache  

源码包资源或官网:https://github.com/aminglinux/resource/blob/master/README.md

使用 tar -zxvf httpd-2.2.29.tar.gz 解压,README说明文档,INSTALL安装文档

开始安装,指定路径   ./configure --prefix =/usr/local/apache2

此处看到有个错误,使用echo $? 若是非0,表明上一条命令错误,只会返回上一条命令的结果

上面报错提示gcc不存在,是no,安装便可 yum install gcc,再次执行./configure --prefix =/usr/local/apache2,完成

而后make 编译,编译完成后在执行echo $?命令查看是否有错误

make install  把编译完成的文件放到指定目录/usr/local/apache2/下

相关文章
相关标签/搜索