2018年8月11日第九节课笔记——rpm、yum及源码包安装

内容摘要

  • 安装软件包的三种方法
  • linux的相关信息
  • rpm工具用法
  • yum工具用法
  • yum搭建本地仓库
  • yum更换国内源
  • yum下载rpm软件包
  • 源码包安装
  • 课堂及扩展
  • 涉及命令:rpm(安装rpm包)、yum(yum工具安装rpm包)、wget用来从指定的URL下载文件)、reposync(同步YUM源到本地)、createrepo(生成本地yum仓库);

一、安装软件包的三种方法,如图:

  • rpm工具安装方式类似windows下的exe,安装的路径和文件名基本是固定好的。(不会解决依赖关系)
  • yum工具安装操作的对象也是rpm包,支持自动安装依赖的包。
  • 源码包通过编译器,编译成可执行的安装文件。

二、rpm包介绍

使用mount  /dev/cdrom /mnt 命令,挂载光驱。在目录 /mnt/Packages下存放有光驱自带的rpm包。

  • 第一段字符串为包名即图中红色框部分
  • 第二段为版本号(版本号可分为主版本、次版本、修正版本),即黄色框部分。
  • 第三段为发布版本和发布平台,即蓝色框部分(x86_64即64位操作系统)。

三、rpm工具用法

  • 命令rpm -ivh your-package.rpm其中your-package.rpm是指你要安装的rpm包的文件名,一般置于当前目录下。选项-i即安装、选项-v可视化安装过程、选项-h更人性化显示信息。

  • 命令rpm -Uvh 升级指定的rpm包。
  • 命令rpm -e+包名 卸载指定rpm包。(卸载时,需要先卸载软件包对应的依赖包)
  • 命令rpm -qa+包名 查询已经安装的包。
  • 命令rpm -q+包名 查询一个指定包是否安装。
  • 命令rpm -qi+包名 查询指定包讯息。
  • 命令rpm -ql+包名 查询指定包需要安装的文件。
  • 命令rpm -qf+文件绝对路径查询一个文件是由哪个rpm包安装的。

四、yum工具用法

在/etc/yum.repos.d/目录下存放有yum的相关配置文件。

  • 命令yum list  列出可以安装的软件包。
  • 命令yum search 查询指定包含字符串的软件包。
  • 命令yum list |grep 'vim' ,列出可安装的软件包,并使用grep删选包含vim的软件包。
  • 命令yum install -y  安装指定文件包,并全部同意。
  • 命令yum grouplist 列出可用的套件分组。
  • 命令yum groupinstall 安装指定套件分组。
  • 命令yum remove 删除指定软件包,和它依赖的软件包。
  • 命令yum update 升级指定软件包,若没有指定则升级包括系统在内的所有软件。
  • 命令yum provides “/*/vim" 搜索一个未安装的命令是由哪个软件包安装的。

五、yum搭建本地仓库

  • 挂载镜像: mount /dev/cdrom /mnt
  • /etc/yum.repos.d/目录和目录下的文件,备份并删除。
  • 命令cp -r /etc/yum.repos.d  /etc/yum.repos.d.bak 备份yum仓库。
  • 命令rm -fv /etc/yum.repos.d/* 删除所有yum仓库。
  • 使用命令vim  /etc/yum.repos.d/dvd.repo 将以下内容输入该文件内。

             [dvd]      仓库名

             name=install dvd    自定义的描述

             baseurl=file://mnt    rpm包的位置

             enable=1        是否可用1为可用,0为不可用。

             gpgcheck=0     是否检测。

  • 清除yum缓存,yum clean all
  • 仓库名称前带@符号的表示已经安装的软件包

六、yum更换国内源

  • 国外源的下载较慢,效率低。
  • 删除/etc/yum.repos.d/CentOS7-Base.repo文件(yum最核心的文件),清空缓存yum clean all。

七、yum下载rpm软件包(不安装仅下载)

  • 命令yum install -y epel-release   安装epel.repo扩展仓库(官方仓库)
  • 命令yum list |grep epel   可以删选出epel仓库的软件。
  • 命令yum install -y 包名 --downloadonly    ,仅下载指定软件包,默认下载到 /var/chache/yum/x86_64/7下软件包对应的仓库目录下去。
  • 命令yum install -y 包名 --downloaddir=路径,将一个未安装过的软件包下载到指定目录下。
  • 命令yum reinstall -y 包名 --downloadonly=路径,将一个安装过的软件包下载到指定目录下。

八、源码包安装

我们统一将源码包下载到,/usr/local/src 目录下。

  • 命令cd /usr/local/src  移动到该目录下
  • 命令wget+http://mirrors.cnnic.cn/apache/httpd/httpd-2.4.33.tar.gz  下载apache源码包,网址失效后可在阿铭提供的网址找到最新的。
  • 命令tar -zxvf 解压下载的tar包。
  • 依次使用以下命令,源码安装apache.(此过程中会多次提示缺少编软件包,根据错误提示安装对应的软件包即可):
  1. 命令 . /configure --prefix=/usr/local/apache2.4         
  2. 提示缺少apr或apr-util时,可先后安装apr和apr-util的源码包,并在命令后面指定这两个软件的安装路径,例: . /configure --prefix=/usr/local/apache2.4 --with-apr=/usr/local/apr --wiht-apr-util=/usr/local/apr-util
  3. 命令 make
  4. 命令make install
  • 删除安装的文件或目录即可卸载源码包安装的软件。

课堂扩展:

九、rpm相关

  • rmp是由包名,版本号(主版本、次版本、修正版本)、发布版本号、平台组成的。
  • 加载镜像,如图:

  • 挂载镜像到/mnt目录下: mount /dev/sr0 /mnt   此处挂载/dev/cdrom也可以,两者为软链接关系如图:

  • 并且以只读方式挂载,因为光驱是只读的,不可以写东西。
  • 命令rpm选项:-i 表示安装、-U 表示升级一个包、-v 表示可视化、-h 表示显示安装进度、-e 卸载一个包、-q 查询一个包是否已经安装、-qi 查询指定包信息、-ql 列出一个包安装的文件、-qf 查询文件绝对路径、rpm -qf `which cd` 查看这命令的路径包在哪、--force 表示强制安装,即使覆盖属于其他包的文件也要安装。--nodeps 表示当要安装的RPM包依赖于其他包时,即使其他包没有安装,也要安装这个包。

十、yum相关

  • 命令yum autoremove httpd   卸载软件包及其依赖的软件包。
  • 命令yum makecache   把服务器的包信息下载到本地电脑缓存起来
  • 命令yum check-update   检查是否有可用的更新rpm软件包
  • 命令yum repolist   查看yum仓库标识,如图

十一、使用reposync 搭建本地YUM源

  • 首先使用命令 yum install createrepo yum-utils    安装这两个工具主要使用 createrepo 和reposync 这两个命令。
  • 命令reposync -p /opt    /etc/yum.repos.d/ 下启用的所有yum源软件包下载到指定目录下。
  • 或使用命令 reposync -r epel -p /opt     选项-r下载指定的yum仓库源软件包,到选项-p指定的目录下。如图:

  • 使用命令createrepo /opt   在reposync下载的目录下创建yum仓库(生成依赖文件),会在该目录下生成一个repodata的目录。
  • 使用命令vim /etc/yum.repo.d/epel2.repo  内容如下:

             [epel2]      仓库名

             name=install dvd    自定义的描述

             baseurl=file://opt    reposync同步下载的目录

             enable=1        是否可用1为可用,0为不可用。

             gpgcheck=0     是否检测。

  • 使用命令yum clean all 清除缓存在使用yum repolist 查看新加入的yum仓库标识,如图:

  • 然后可以使用httpd、nginx等web工具发布出去,也可以在无网络的情况下当做本地yum仓库。

十二、使yum保留下载的rpm包

可以设置使yum保留已经下载的rpm包,供以后升级或重新安装时使用。

  • 修改/etc/yum.conf即可,如图

  • chchedir是放置下载的包的地方,可以修改为自己想放置的位置。
  • keepcache为1时表示保存已经下载的rpm包,0为不保存。

猜你喜欢

转载自blog.csdn.net/CN_SHzhaoyujie/article/details/81612374