7.1 安装软件包的三种方法

  • rpm工具
    rpm(Redhat Package Manager)RPM软件包管理器,是以一种数据库记录的方式来将我们所需要的套件安装到Linux主机的一套管理程序。rpm包是预先在Linux机器上编译好并打包好的文件,安装起来非常快捷。但是有一个缺点:安装环境必须与编译时的一致或相当;包与包之间存在着相互依赖的情况,安装或卸载包时需要先把依赖的包安装/卸载,如果依赖的包时系统所必须的,那就不能卸载这个包。
  • yum工具 yum命令是在Fedora和RedHat以及SUSE中基于rpm的软件包管理器,它可以使系统管理人员交互和自动化地更细与管理RPM软件包,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。
  • 源码包 Linux软件的源代码分发是指提供了该软件所有程序源代码的发布形式,需要用户自己编译成可执行的二进制码并进行安装。其优点是配置灵活,可以随意去掉或保留某些功能/模块,适应多种硬件/操作系统平台及编译环境;缺点是难度较大。

    7.2 rpm包介绍

先点VMware 右下角的光驱,点连接

[root@aminglinux-001 Packages]# df -h
文件系统        容量  已用  可用 已用% 挂载点
/dev/sda3        16G  1.4G   15G    9% /
devtmpfs        3.9G     0  3.9G    0% /dev
tmpfs           3.9G     0  3.9G    0% /dev/shm
tmpfs           3.9G  8.6M  3.9G    1% /run
tmpfs           3.9G     0  3.9G    0% /sys/fs/cgroup
/dev/sda1       197M  109M   88M   56% /boot
tmpfs           782M     0  782M    0% /run/user/0
/dev/sr0        4.1G  4.1G     0  100% /mnt
[root@aminglinux-001 ~]# mount /dev/cdrom /mnt/
mount: /dev/sr0 写保护,将以只读方式挂载
[root@aminglinux-001 ~]# cd /mnt/
[root@aminglinux-001 mnt]# ls
CentOS_BuildTag  EULA  images    LiveOS    repodata              RPM-   GPG-KEY-CentOS-Testing-7
EFI              GPL   isolinux  Packages  RPM-GPG-KEY-CentOS-7    TRANS.TBL  [root@aminglinux-001 mnt]# cd Packages/[root@aminglinux-001 Packages]# lspm-utils-1.4.1-27.el7.x86_64.rpmpnm2ppa-1.04-28.el7.x86_64.rpmpolicycoreutils-2.5-8.el7.x86_64.rpmpolicycoreutils-devel-2.5-8.el7.x86_64.rpmpolicycoreutils-gui-2.5-8.el7.x86_64.rpm......
(rpm包格式:包名、版本号、发布版本号、平台)rpm包在Packages文件下。

7.3 rpm 工具用法

安装rpm包

语法: rpm [options] [参数]
Options:
-i:=install,安装
-v:可视化
-h:显示安装进度
在安装一个rpm包时常用附带选项:
--force:强制安装
--nodeps:=no dependent
无依赖安装(忽视与其他包之间的依赖关系)

  • 安装一个rpm包

    [root@aminglinux-001 Packages]# rpm -ivh zziplib-0.13.62- 5.el7.x86_64.rpm
    准备中... ################################# [100%]
    正在升级/安装...
    1:zziplib-0.13.62-5.el7 ################################# [100%]

  • 升级rpm包
    语法: rpm [-U] [包名]

    [root@aminglinux-001 Packages]#rpm -Uvh x86info-1.30- 6.el7.x86_64.rpm
    Preparing... ################################# [100%]
    package x86info-1:1.30-6.el7.x86_64 is already installed
    卸载一个rpm包
    语法: rpm [-e] [包名]

    [root@aminglinux-001 Packages]# rpm -e x86info

  • 查询rpm包
    查询已安装的包

语法:
rpm [-q] [包名] 查询指定包
rpm [-qa] 查询所有已安装包

[root@aminglinux-001 Packages]# rpm -q kmodkmod-20-9.el7.x86_64#########################################
[root@aminglinux-001 Packages]# rpm -qa |head -5trousers-0.3.13-1.el7.x86_64filesystem-3.2-21.el7.x86_64net-tools-2.0-0.17.20131004git.el7.x86_64bind-license-9.9.4-37.el7.noarchfxload-2002_04_11-16.el7.x86_64

查询已安装包的相关信息

语法:
rpm [-qi] [包名]
i=information

 [root@aminglinux-001 Packages]# rpm -qi filesystemName        : filesystemVersion     : 3.2

Release : 21.el7
Architecture: x86_64
Install Date: Mon May 22 01:19:49 2017
Group : System Environment/Base
Size : 0
……
查询某包所安装的文件

语法:
rpm [-ql] [包名]
l=list

[root@aminglinux-001 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@aminglinux-001 Packages]# rpm -qf /usr/bin/vim
vim-enhanced-7.4.160-1.el7_3.1.x86_64

反引号命令

反引号的作用就是将反引号内的Linux命令先执行,然后将执行结果赋予变量。即,在命令行上把Linux命令放在反引号中,这个命令会首先被执行,然后将其结果作为为该命令行的一个参数。

 [root@aminglinux-001 Packages]# rpm -qf `which cd`bash-4.2.46-20.el7_2.x86_64

说明: 先执行“which cd”命令,其次将“which cd”的结果作为“rpm -qf”的参数执行该命令。

7.4 yum工具用法

列出所有rpm包

语法: yum list

 [root@aminglinux-001 Packages]# yum listFailed to set locale, defaulting to CLoaded plugins: fastestmirrorLoading mirror speeds from cached hostfile* base: mirrors.btte.net* extras: mirrors.aliyun.com* updates: mirrors.tuna.tsinghua.edu.cnInstalled PackagesNetworkManager-libnm.x86_64                1:1.4.0-12.el7                  @anacondaNetworkManager-team.x86_64                 1:1.4.0-12.el7              @anacondazsh.x86_64                                        5.0.2-25.el7_3.1                        updates
zsh-html.x86_64                                   5.0.2-25.el7_3.1                        updates  zziplib.i686                                      0.13.62-5.el7                       base     zziplib.x86_64                                    0.13.62-5.el7                       base   ……Exiting on Broken Pipe

注: 第一列是包名,第二列是版本号,第三列是库
说明: 库所在位置有“@”表示已安装;“updates”表示已安装,有新版本,需要升级;其他的表示可安装但还未安装的rpm包。

  • yum配置文件

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

  • 配置文件base的信息

    [root@aminglinux-001 Packages]# cat /etc/yum.repos.d/CentOS-Base.repo
    #CentOS-Base.repo
    #……
    [base]
    name=CentOS-$releasever - Base
    mirrorlist=http://mirrorlist.centos.org/? release=$releasever&arch=$basearch&repo=os&infra=$infra
    #baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
    ……
    说明: 该文件下有rpm包所在库base的镜像地址信息!

  • 搜索rpm包
    语法: yum search [关键词]

    [root@aminglinux-001 Packages]# yum search vim
    Failed to set locale, defaulting to C
    Loaded plugins: fastestmirror
    Loading mirror speeds from cached hostfile

    • base: mirrors.btte.net
    • extras: mirrors.aliyun.com
    • updates: mirrors.tuna.tsinghua.edu.cn
      ====================================== N/S matched: vim =======================================
      golang-vim.noarch : Vim plugins for Go
      protobuf-vim.x86_64 : Vim syntax highlighting
      vim-minimal.x86_64 : A minimal version of the VIM editor

      Name and summary matches only, use "search all" for everything.
      说明: 使用该命令搜索时会列出所有包含‘vim’(关键词)的信息,不精确,为了只搜索相关rpm包,可用如下方法:

      [root@aminglinux-001 Packages]# yum list |grep vim
      Failed to set locale, defaulting to C
      vim-common.x86_64 2:7.4.160-1.el7_3.1 @updates
      vim-enhanced.x86_64 2:7.4.160-1.el7_3.1 @updates
      vim-filesystem.x86_64 2:7.4.160-1.el7_3.1 @updates
      vim-minimal.x86_64 2:7.4.160-1.el7 @anaconda
      说明: grep表示过滤。

列出rpm包组

语法: yum grouplist

  [root@aminglinux-001 Packages]# yum grouplistFailed to set locale, defaulting to CLoaded plugins: fastestmirrorThere is no installed groups file.Maybe run: yum groups mark convert (see man yum)Loading mirror speeds from cached hostfile* base: mirrors.btte.net* extras: mirrors.aliyun.com* updates: mirrors.tuna.tsinghua.edu.cnAvailable Environment Groups:Minimal InstallCompute Node……Available Groups:Compatibility LibrariesConsole Internet Tools……Done

安装rpm包

语法: yum install [-y] [包名]
说明: 如果不加‘-y’选项,则会以与用户交互的方式安装。首先是列出需要安装的rpm包,然后会问用户是否需要安装,输入‘y’则安装,输入‘n’则不安装,这样太麻烦,所以直接加上‘-y’选项,省略与用户之间的交互。

安装rpm包组

语法: yum groupinstall [-y] [包的组名] 如果不知道组名,可用yum grouplist查看(注:进行安装时只能用英文名)。

卸载rpm包

语法: yum remove [-y] [包名] 说明: ‘-y’选项同install的用法,需要注意的是,在使用该命令进行卸载时会将目标文件所依赖的所有包同时删除,所以要谨慎使用!

升级rpm包

语法: yum update [-y] [包名] 说明: 如果不加包名,则会升级系统内所有包以及系统本身(慎用,一般只在刚安装完系统时使用)。

yum provides

该命令的作用是通过已知命令名称来搜索其rpm包名。 用法:

[root@aminglinux-001 Packages]# yum provides “//vim”
说明: 因为该命令位置不确定,所以进行搜索时使用‘’(通配符)来代表其路径。

7.5 yum搭建本地仓库

有时候Linux系统无法联网,此时无法使用网上的yum源,需要我们利用Linux系统光盘制作一个yum源。
挂载光盘——删除/etc/yum.repos.d/目录所有repo文件——创建新文件dvd.repo——清除原有缓存‘yum clean all’。

  [root@aminglinux-001 ~]# cp -r /etc/yum.repos.d /etc/yum.repos.d.bak        备份原.repo文件[root@aminglinux-001 ~]# cd /etc/yum.repos.d   切换目录[root@aminglinux-001 yum.repos.d]# lsCentOS-Base.repo  CentOS-Debuginfo.repo  CentOS-Sources.repo        CentOS-fasttrack.repoCentOS-CR.repo    CentOS-Media.repo      CentOS-Vault.repo[root@aminglinux-001 yum.repos.d]# rm -rf ./*删除原有repo文件[root@aminglinux-001 yum.repos.d]# vim dvd.repo“[dvd]name=install dvd        baseurl=file:///mntenable=1gpgcheck=0”

此部分内容除baseurl目录根据个人实际操作更改外,其余内容固定。

 [root@aminglinux-001 yum.repos.d]# yum clean all清除系统原有缓存Failed to set locale, defaulting to CLoaded plugins: fastestmirrorCleaning repos: dvdCleaning up everythingCleaning up list of fastest mirrors[root@aminglinux-001 ~]# yum list ……
Available Packages  还未安装的可安装rpm包的库都变成dvd
ypserv.x86_64                                    2.31-8.el7                           dvd
yum-langpacks.noarch                             0.4.2-7.el7                          dvd
yum-plugin-aliases.noarch                        1.1.31-40.el7                        dvd
yum-plugin-changelog.noarch                      1.1.31-40.el7                           dvd
yum-plugin-tmprepo.noarch                        1.1.31-40.el7                        dvd      ……

配置完成后便可直接使用yum安装所需要的rpm包。如果不想使用本地yum源,需要删除/etc/yum.repos.d/dvd.repo文件,然后恢复原来的配置文件。

  • 扩展1:yum保留已经安装过的包

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

[main] cachedir=/home/soft1/yumcache keepcache=1 debuglevel=2 cachedir是放置下载的包的地方,可以修改成自己想放置的位置。 keepcache为1时表示保存已经下载的rpm包。

  • 扩展2:yum局域网软件源搭建

搭建Apache服务器或ftp服务器

yum安装或二进制包安装.

准备RPM包

把CentOS的DVD1和DVD2.iso都下载下来,把DVD1.iso里的所有内容解压出来,放到/var/www/html/centos-6目录下,然后把DVD2.iso解压出来的Packages目录下的rpm包复制到/var/html/centos-6/Packages目录下,这样/var/html/centos-6/Packages里面就有了6000多个rpm包。

创建yum仓库

准备createrepo:yum -y install createrepo

创建repository:createrepo /var/www/html/centos-6/

创建完成之后,会在/var/www/html/centos-6/repodata下生成一些文件。

使用软件源

在其他centos机器上试试软件源能不能用。

首先修改机器上软件源配置文件:

#cd /etc/yum.repos.d/
#mkdir bk
#mv *.repo bk/
#cp bk/CentOS-Base.repo ./
#vi CentOS-Base.repo

CentOS-Base.repo文件修改之后如下:

[base]
name=CentOS-$releasever - Base
baseurl=http://*.*.*.*/centos-6/
gpgcheck=1(改成0下面那行就不用设置了)
gpgkey=http:///*.*.*.*/centos-6/RPM-GPG-KEY-CentOS-6
enabled=1
#released updates
#[updates]
#name=CentOS-$releasever - Updates
#baseurl=http:///*.*.*.*/centos-6/
#gpgcheck=1
#gpgkey=http:///.../centos-6/RPM-GPG-KEY-CentOS-6 #enabled = 1

保存之后,就可以使用局域网的软件源了:

 #yum update

扩展

yum保留已经安装过的包 http://www.360doc.com/content/11/0218/15/4171006_94080041.shtml
搭建局域网yum源 http://ask.apelearn.com/question/7627

转载于:https://blog.51cto.com/13242922/2058912

安装软件包的三种方法rpm包rpm工具yum工具相关推荐

  1. 7.1 安装软件包的三种方法 7.2 rpm包介绍 7.3 rpm工具用法 7.4 yum工具用法 7.5 yum搭建本地仓库...

    7.1 安装软件包的三种方法 7.2 rpm包介绍 7.3 rpm工具用法 7.4 yum工具用法 7.5 yum搭建本地仓库 三种方法 rpm工具----->类型windows下的exe程序 ...

  2. 安装软件包的三种方法、rpm包介绍、rpm工具用法、yum工具用法、yum搭建本地仓库...

    为什么80%的码农都做不了架构师?>>>    安装软件包的三种方法 rpm工具 yum工具 源码包 rpm rpm命令是RPM软件包的管理工具.rpm原本是Red Hat Linu ...

  3. 安装软件包的三种方法、rpm包介绍、rpm、yum工具用法与yum搭建本地仓库

    一.安装软件包的三种方法 rpm工具:RPM包是预先在linux机器上编译好并打包好的文件,安装起来非常快捷.但是也有一些缺点,比如安装的环境必须与编译时的环境一致或者相当:包与包之间存在着相互依赖的 ...

  4. 安装软件包的三种方法

    安装软件包的三种方法 rpm工具 yum工具 源码包 rpm安装和卸载 先挂载光驱设备 mount /dev/cdrom /mnt/ 安装一个rpm包 rpm -ivh +包全名 "-i&q ...

  5. 安装软件包的三种方法 ,rpm包介绍 , rpm工具用法, yum工具用法, yum搭建本地仓库...

    linux安装和卸载软件 安装三种方法 rpm工具 yum工具 源码包 rpm工具使用 首先看一下什么事rpm包,可以挂载光驱看看里面有很多 [root@localhost ~]# mount /de ...

  6. centos 卸载软件_一篇看懂!详解-Linux系统中安装软件的三种方法

    Linux系统中安装软件的三种方法 注:本文主要以CentOS为例介绍常用的安装方式,其他版本linux在文章底部 Linux系统中怎么安装软件,首先说一下应用程序与系统命令的区别: 1.文件位置 系 ...

  7. linux终端下载notepad,在Linux系统上安装NotePad++的三种方法介绍

    本文介绍在Linux操作系统上安装NotePad++的三种方法,使用Snap.Wine和NotePadQQ.这里要说的是:由于像Wine和Snap软件包这样的工具,在Linux上运行的Notepad+ ...

  8. 平板 刷 linux系统,在Linux系统上安装NotePad++的三种方法介绍

    本文介绍在Linux操作系统上安装NotePad++的三种方法,使用Snap.Wine和NotePadQQ.这里要说的是:由于像Wine和Snap软件包这样的工具,在Linux上运行的Notepad+ ...

  9. CentOS安装jdk的三种方法

    2019独角兽企业重金招聘Python工程师标准>>> CentOS安装jdk的三种方法 环境 Linux版本:CentOS 6.5.Ubuntu 12.04.5 JDK版本:JDK ...

最新文章

  1. WebSocket 集群解决方案
  2. 英特尔高管晒照片不小心泄密,正在研发的雷电5就这样暴露了
  3. Csharp volatile 关键字
  4. jquery 毫秒转换成日期_基于jQuery的时间戳与日期间的转化
  5. 【Python 自然语言处理 第二版】读书笔记1:语言处理与Python
  6. 在同一页面显示多个JavaScript统计图表
  7. ERROR: org.apache.hadoop.hbase.MasterNotRunningException: Retried 7 times
  8. 乔安监控云存储能存多长时间_干货 | 监控磁盘阵列知识介绍,不了解还不来看看?...
  9. Dom4j解析器_解析xml文档
  10. pandas中的数据如何转化为张量?
  11. android studio 继承关系 快捷键,Android Studio快捷键
  12. G盘文件系统RAW要怎么办啊
  13. Route66,GPS道路导航系统,我所用过的最大块头的手机软件
  14. VS2022安装教程和使用说明来了
  15. OpenLdap-如何使用phpLdapAdmin创建CN用户、OU用户组
  16. 欧姆龙Fins协议(FinsUDP/FinsTCP)
  17. 留学目的地选择之伊利诺伊州
  18. 微信小程序自定义页面标题
  19. 在亚马逊网上注册kindle 3及下载免费电子图书的步骤
  20. Origin 'http://localhost:8080' is therefore not allowed access

热门文章

  1. java的int、char、long、float、double对byte的转换,在通信的时候会用到
  2. linux共享文件权限设置,linux – Windows更改Samba文件共享中的文件权限
  3. .hpp文件_3 OpenCV的头文件说明及第一个示例程序
  4. ad19pcb所有元件都在报错_PLC的线圈输出和置复位,可以混用吗?很多人都会犯这个错误!...
  5. 电饼锅的样式图片价格_2020年三明治机/电饼铛推荐选购指南,电饼档那个牌子好?有哪些好用的三明治机/早餐机/电饼铛?...
  6. etcher制作mac启动盘_如何快速制作 macOS Mojave U盘启动盘,并重装Mac系统
  7. 微擎支付返回商户单号_一步一步教你在SpringBoot中集成微信扫码支付
  8. vue 传递 对象 路由_vue 04 -vue路由对象($route)参数简介以及和router的区别
  9. php模块化安装教程,homestead安装php 扩展 教程
  10. 服务器网卡显示100m,千兆网线8根线都通了怎么还是显示100M,网卡都是能用1000M的...