19.软件安装rpm,yum

五周第一次课(1月8日)

7.1 安装软件包的三种方法

7.2 rpm包介绍

7.3 rpm工具用法

7.4 yum工具用法

7.5 yum搭建本地仓库

五周第二次课(1月9日)

7.6 yum更换国内源

7.7 yum下载rpm包

7.8/7.9 源码包安装

Linux下安装软件的三种方法
  • [ ] rpm
  • [ ] yum
  • [ ] 源码包
RPM工具

在虚拟光驱中有安装盘的镜像,里面就有RPM包,首先连接我们的系统镜像文件

mark

mark

  • 将光驱用mount挂载,然后进入/mnt/
[root@localhost mnt]# mount /dev/cdrom /mnt/
mount: /dev/sr0 写保护,将以只读方式挂载
[root@localhost mnt]# cd /mnt/
[root@localhost mnt]# ls
CentOS_BuildTag  images    repodata
EFI              isolinux  RPM-GPG-KEY-CentOS-7
EULA             LiveOS    RPM-GPG-KEY-CentOS-Testing-7
GPL              Packages  TRANS.TBL
[root@localhost mnt]# cd Packages
[root@localhost mnt]# ls  //下图中的大量红色rpm包

mark

每个RPM包的名称有-和.分成了若干部分,比如在“python-libs-2.7.5-58.el7.x86_64.rpm”,python为包名,2.7.5为版本信息,58.el7为发布版本号,x86_64为运行平台,noarch表示该RPM 包没有硬件平台限制

  • 安装RPM包

  • [ ] rpm -ivh rpm包文件 //安装
    命令如下:
[root@localhost Packages]# rpm -ivh zsh-5.0.2-28.el7.x86_64.rpm
准备中...                          ################################# [100%]
正在升级/安装...
   1:zsh-5.0.2-28.el7                 ################################# [100%]
  • 升级RPM包
  • [ ] rpm -Uvh rpm包文件 //升级
[root@localhost Packages]# rpm -Uvh zsh-5.0.2-28.el7.x86_64.rpm
  • 卸载RPM包
  • [ ] rpm -e 包名 //卸载
[root@localhost Packages]# rpm -e zsh
  • 查询一个包是否已安装
  • [ ] rpm -qa //查询安装的包
[root@localhost Packages]# rpm -qa |head
libmtp-1.1.6-5.el7.x86_64
trousers-0.3.13-1.el7.x86_64
xorg-x11-drv-ati-7.6.1-3.20160215gitd41fccc.el7.x86_64
telepathy-mission-control-5.16.3-3.el7.x86_64
avahi-0.6.31-17.el7.x86_64
libvisio-0.1.1-2.el7.x86_64
fxload-2002_04_11-16.el7.x86_64
xorg-x11-drv-evdev-2.9.2-2.el7.x86_64
colord-libs-1.2.7-2.el7.x86_64
mlocate-0.26-6.el7.x86_64
  • 查询制定包是否安装
  • [ ] rpm -q 包名 //查询指定包是否安装

  • [ ] rpm -qi 包名 //查询指定包信息
[root@localhost Packages]# rpm -qi vim-enhanced
Name        : vim-enhanced
Epoch       : 2
Version     : 7.4.160
Release     : 1.el7_3.1
Architecture: x86_64
Install Date: 2017年08月09日 星期三 00时10分28秒
Group       : Applications/Editors
Size        : 2292098
License     : Vim
Signature   : RSA/SHA256, 2016年12月22日 星期四 01时14分11秒, Key ID 24c6a8a7f4a80eb5
Source RPM  : vim-7.4.160-1.el7_3.1.src.rpm
Build Date  : 2016年12月22日 星期四 01时00分52秒
Build Host  : c1bm.rdu2.centos.org
Relocations : (not relocatable)
Packager    : CentOS BuildSystem <http://bugs.centos.org>
Vendor      : CentOS
  • 查找包安装了哪些文件
  • [ ] rpm -ql 包名 //列出包安装的文件
[root@localhost Packages]# rpm -ql vim-enhanced
/etc/profile.d/vim.csh
/etc/profile.d/vim.sh
/usr/bin/rvim
/usr/bin/vim
/usr/bin/vimdiff
/usr/bin/vimtutor
  • 查看文件由哪个安装包安装
  • [ ] rpm -qf 文件绝对路径 //查看一个文件是由哪个包安装的
[root@localhost Packages]# rpm -qf `which cd`
bash-4.2.46-20.el7_2.x86_64 //bash包安装
yum工具

yum( Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器。
基於RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。
yum提供了查找、安装、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。

  • [ ] yum list //列出可用rpm包
[root@localhost Packages]# yum list |head -20
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirrors.163.com
 * extras: centos.ustc.edu.cn
 * updates: centos.ustc.edu.cn
已安装的软件包
GConf2.x86_64                               3.2.6-8.el7                @base    
GeoIP.x86_64                                1.5.0-11.el7               @anaconda
ModemManager.x86_64                         1.6.0-2.el7                @base    
ModemManager-glib.x86_64                    1.6.0-2.el7                @base    
NetworkManager.x86_64                       1:1.4.0-20.el7_3           @updates 
NetworkManager-adsl.x86_64                  1:1.4.0-20.el7_3           @updates 
NetworkManager-bluetooth.x86_64             1:1.4.0-20.el7_3           @updates 
NetworkManager-glib.x86_64                  1:1.4.0-20.el7_3           @updates 
NetworkManager-libnm.x86_64                 1:1.4.0-20.el7_3           @updates 
NetworkManager-libreswan.x86_64             1.2.4-1.el7                @base    
NetworkManager-libreswan-gnome.x86_64       1.2.4-1.el7                @base    
NetworkManager-team.x86_64                  1:1.4.0-20.el7_3           @updates 
NetworkManager-tui.x86_64                   1:1.4.0-20.el7_3           @updates 
NetworkManager-wifi.x86_64                  1:1.4.0-20.el7_3           @updates 

上述信息中,mirrors.163.com,centos.ustc.edu.cn是获取包资源的下载路径,共有3列,第一列是RPM包名,中间是版本信息,最右侧是安装信息(仓库名)。

找到这些存放rpm包的仓库信息

  • [ ] ls /etc/yum.repos.d/

    [root@localhost Packages]# ls /etc/yum.repos.d/
    CentOS-Base.repo  CentOS-Debuginfo.repo  CentOS-Media.repo    CentOS-Vault.repo
    CentOS-CR.repo    CentOS-fasttrack.repo  CentOS-Sources.repo
    [root@localhost Packages]# ls /etc/yum.repos.d/CentOS-Base.repo
    /etc/yum.repos.d/CentOS-Base.repo
    [root@localhost Packages]# cat /etc/yum.repos.d/CentOS-Base.repo 

    mark

  • 搜索RPM包
  • [ ] yum search vim //搜索包
[root@localhost Packages]# 
[root@localhost Packages]# yum search vim
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirrors.163.com
 * extras: centos.ustc.edu.cn
 * updates: centos.ustc.edu.cn
========================================================= N/S matched: vim ==========================================================
protobuf-vim.x86_64 : Vim syntax highlighting for Google Protocol Buffers descriptions
vim-X11.x86_64 : The VIM version of the vi editor for the X Window System
vim-common.x86_64 : The common files needed by any version of the VIM editor
vim-enhanced.x86_64 : A version of the VIM editor which includes recent enhancements
vim-filesystem.x86_64 : VIM filesystem layout
vim-minimal.x86_64 : A minimal version of the VIM editor

  名称和简介匹配 only,使用“search all”试试。
  • 用grep过滤,找到相应的RPM包,|是管道符,传递结果给下一个命令.
    mark
  • 安装RPM包
  • [ ] yum install [-y]

  • 列出可安装的环境分组
  • [ ] yum grouplist
    [root@localhost Packages]#  yum grouplist
    已加载插件:fastestmirror, langpacks
    Loading mirror speeds from cached hostfile
    * base: mirrors.163.com
    * extras: centos.ustc.edu.cn
    * updates: centos.ustc.edu.cn
    已安装环境分组:
    GNOME 桌面
    可用的环境分组:
    最小安装
    基础设施服务器
    计算节点
    文件及打印服务器
    基本网页服务器
    虚拟化主机
    带 GUI 的服务器
    KDE Plasma Workspaces
    开发及生成工作站
    可用组:
    传统 UNIX 兼容性
    兼容性程序库
    图形管理工具
    安全性工具
    开发工具
    控制台互联网工具
    智能卡支持
    科学记数法支持
    系统管理
    系统管理工具
    完成
  • 安装环境分组,这里必须输入英文名称才可以。yum groupinstall ‘#######’
  • [ ] yum groupinstall [-y]

  • 卸载RPM包
  • [ ] yum remove [-y]
  • 升级RPM包
  • [ ] yum update [-y]

  • ==有些命令不知道安装包在哪,通过以下指令,不指定具体路径(通配)来查找,然后安装==
  • [ ] yum provides “/*/vim”
yum本地仓库

挂载镜像到/mnt目录

  • [ ] cp -r /etc/yum.repos.d /etc/yum.repos.d.bak
  • [ ] rm -f /etc/yum.repos.d/*

前面我们已经挂载了磁盘

[root@localhost Packages]# ls /mnt/
CentOS_BuildTag  GPL       LiveOS    RPM-GPG-KEY-CentOS-7
EFI              images    Packages  RPM-GPG-KEY-CentOS-Testing-7
EULA             isolinux  repodata  TRANS.TBL
[root@localhost Packages]# cd
[root@localhost ~]#  cp -r /etc/yum.repos.d /etc/yum.repos.d.bak //备份一份
[root@localhost ~]# cd /etc/yum.repos.d
[root@localhost yum.repos.d]# ls
CentOS-Base.repo  CentOS-Debuginfo.repo  CentOS-Media.repo    CentOS-Vault.repo
CentOS-CR.repo    CentOS-fasttrack.repo  CentOS-Sources.repo
[root@localhost yum.repos.d]# rm -rf ./*  //把上述所有repo文件删除
[root@localhost yum.repos.d]# vi dvd.repo

输入:

[dvd]
name=install dvd
baseurl=file:///mnt
enable=1
gpgcheck=0

mark

  • yum 清理
  • [ ] yum clean all
[root@localhost yum.repos.d]# yum clean all
已加载插件:fastestmirror, langpacks
正在清理软件源: dvd
Cleaning up everything
Cleaning up list of fastest mirrors
  • [ ] yum list
- [root@localhost yum.repos.d]# yum list |less  //用ctrl+F 分屏查看
更换yum仓库源
[root@localhost ~]# cd /etc/yum.repos.d
[root@localhost yum.repos.d]# ls
dvd.repo
[root@localhost yum.repos.d]# rm -f dvd.repo
[root@localhost yum.repos.d]# cp ../yum.repos.d.bak/* .
[root@localhost yum.repos.d]# ls
CentOS-Base.repo  CentOS-Debuginfo.repo  CentOS-Media.repo    CentOS-Vault.repo
CentOS-CR.repo    CentOS-fasttrack.repo  CentOS-Sources.repo
[root@localhost yum.repos.d]# rm -f CentOS-Base.repo

mark

mark

mark

安装扩展源epel
  • [ ] yum install -y epel-release
  • [ ] yum list |grep epel

mark

[root@localhost yum.repos.d]# ls
CentOS7-Base-163.repo  CentOS-fasttrack.repo  CentOS-Vault.repo
CentOS-CR.repo         CentOS-Media.repo      epel.repo
CentOS-Debuginfo.repo  CentOS-Sources.repo    epel-testing.repo

mark

  • yun list 查看到的文件太多
  • yum list |grep epel
    mark
yum下载rpm包
  • [ ] yum install -y 包名 --downloadonly

  • [ ] ls /var/cache/yum/x86_64/7/

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

  • [ ] yum reinstall -y 包名 --downloadonly --downloaddir=路径
[root@localhost yum.repos.d]# yum install zsh --downloadonly
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * epel: mirrors.ustc.edu.cn
软件包 zsh-5.0.2-28.el7.x86_64 已安装并且是最新版本
无须任何处理

* 为了达到使用效果,用rpm-e 删除原来zsh包
mark

[root@localhost yum.repos.d]# ls /var/cache/yum/x86_64/7/
base  dvd  epel  extras  timedhosts  timedhosts.txt  updates
[root@localhost yum.repos.d]# ls /var/cache/yum/x86_64/7/base
0c34273ad0292747ee5e15c047d3e51c67ca59861a446972db45d71abacc7ad7-primary.sqlite.bz2
6cd606547d4f569538d4090e9accdc3c69964de1116b9ab1e0a7864bb1f3ec98-filelists.sqlite.bz2
9346184be1deb727caf4b1ecf4a7949155da5da74af9b92c172687b290a773df-c7-x86_64-comps.xml.gz
cachecookie
gen
mirrorlist.txt
packages
repomd.xml
  • 找到zsh 的安装包在哪
    mark
[root@localhost yum.repos.d]# ls /var/cache/yum/x86_64/7/base/packages

mark

  • 把安装包下载后制定路径

    [root@localhost yum.repos.d]# yum install zsh --downloadonly --downloaddir=/tmp/
    已加载插件:fastestmirror, langpacks
    Loading mirror speeds from cached hostfile
    * epel: mirrors.ustc.edu.cn
    正在解决依赖关系
    --> 正在检查事务
    ---> 软件包 zsh.x86_64.0.5.0.2-28.el7 将被 安装
    --> 解决依赖关系完成

    mark

  • 为了不影响原来已安装的使用
yum reinstall vim-ehanced --downloadonly --downloaddir=/tmp/

mark

ls /tmp/查看不到???????

源码包安装
  • 统一的源码包地址 /usr/local/src
    [root@localhost yum.repos.d]# cd
    [root@localhost ~]# cd /usr/local/src
  • 可以从网址下载源码包,以下是网址失效示例:

    [root@localhost src]# wget http://mirrors.cnnic.cn/apache/httpd/httpd-2.2.32.tar.gz
    --2018-01-09 23:59:50--  http://mirrors.cnnic.cn/apache/httpd/httpd-2.2.32.tar.gz
    正在解析主机 mirrors.cnnic.cn (mirrors.cnnic.cn)... 101.6.6.178, 2402:f000:1:416:101:6:6:178
    正在连接 mirrors.cnnic.cn (mirrors.cnnic.cn)|101.6.6.178|:80... 已连接。
    已发出 HTTP 请求,正在等待回应... 404 Not Found
    2018-01-09 23:59:50 错误 404:Not Found。

    从以下源码包网址重新找一个源码包地址,安装成功
    https://coding.net/u/aminglinux/p/resource/git/blob/master/README.md
    mark

  • 用tar-zxvf + mysql-5.5.55.tar.gz 解压
[root@localhost src]# ls
mysql-5.5.55  mysql-5.5.55.tar.gz
[root@localhost src]# cd mysql-5.5.55 //进入解压后的目录
[root@localhost mysql-5.5.55]# ls
BUILD        CMakeLists.txt   COPYING  include             libmysqld    mysys      regex      sql-common     tests     win
BUILD-CMAKE  cmd-line-utils   dbug     INSTALL-SOURCE      libservices  packaging  scripts    storage        unittest  zlib
client       config.h.cmake   Docs     INSTALL-WIN-SOURCE  man          plugin     sql        strings        VERSION
cmake        configure.cmake  extra    libmysql            mysql-test   README     sql-bench  support-files  vio

mark

重新做:

mark
mark

[root@localhost httpd-2.4.29]# cat INSTALL

mark

mark

mark
mark

mark

转载于:https://blog.51cto.com/12995218/2058879

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值