RPM软件包、软件包的管理工具、yum管理工具、搭建本地yum仓库、将本地仓库共享给其他主机

day20

1. RPM软件包


Redhat  Package  Manager   软件包管理  


windows     .exe

Linux		.rpm


软件包的含义 

ant-antunit-1.2-10.el7.noarch.rpm     

antlr-C++-2.7.7-30.el7.x86_64.rpm


ant-antunit			#软件包名称  

1.2					#软件的版本 

10					#软件包编译发布的次数 

el7					#适用于7系列的操作系统 

el6					#适用于6系列操作系统

noarch				#适用于任何cpu架构  


x86_64				#硬件平台  位数  

.rpm				#包的后缀名 


软件包的安装方式 


rpm包		预先编译好的,安装简单  		版本过低  

源码包		   手动编译,安装繁琐		   版本随意 

二进制包	   绿色软件 解压即用           无法修改源代码   


软件包的获取方式 

本地的ISO镜像     需要挂载使用 

联网下载  		

仓库获取 yum源  


2. rpm软件包管理工具


命令   管理软件包   

#挂载镜像


[root@qls ~]# ll /dev/sr0 
brw-rw---- 1 root cdrom 11, 0 Jul 27 16:29 /dev/sr0
[root@qls ~]# ll /dev/cdrom 
lrwxrwxrwx 1 root root 3 Jul 27 16:29 /dev/cdrom -> sr0
[root@qls ~]# mount   /dev/sr0   /mnt/
mount: /dev/sr0 is write-protected, mounting read-only
[root@qls ~]# df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda3        98G  1.5G   97G   2% /
devtmpfs        980M     0  980M   0% /dev
tmpfs           991M     0  991M   0% /dev/shm
tmpfs           991M  9.6M  981M   1% /run
tmpfs           991M     0  991M   0% /sys/fs/cgroup
/dev/sda1       497M  120M  378M  25% /boot
tmpfs           199M     0  199M   0% /run/user/0
/dev/sr0        4.3G  4.3G     0 100% /mnt

[root@qls ~]# ll  /mnt/Packages/  | wc -l
4023


#安装

	-i		#安装 
	
	-v		#显示安装的过程
	
	-h		#显示安装的进度条 
	
	-ivh

[root@qls ~]# rpm  -ivh  /mnt/Packages/tree-1.6.0-10.el7.x86_64.rpm 
Preparing...                          ################################# [100%]
Updating / installing...
   1:tree-1.6.0-10.el7                ################################# [100%]


#删除 移除一个软件包

[root@qls ~]# rpm  -e  tree


#rpm安装太需要依赖了,不会自动寻找依赖,需要手动下载依赖    不建议使用  

#安装httpd  报错
[root@qls ~]# rpm  -ivh  /mnt/Packages/httpd-2.4.6-88.el7.centos.x86_64.rpm 
error: Failed dependencies:
	/etc/mime.types is needed by httpd-2.4.6-88.el7.centos.x86_64
	httpd-tools = 2.4.6-88.el7.centos is needed by httpd-2.4.6-88.el7.centos.x86_64
	libapr-1.so.0()(64bit) is needed by httpd-2.4.6-88.el7.centos.x86_64
	libaprutil-1.so.0()(64bit) is needed by httpd-2.4.6-88.el7.centos.x86_64
	
#根据提示安装相关依赖  报错
[root@qls ~]# rpm  -ivh  /mnt/Packages/httpd-tools-2.4.6-88.el7.centos.x86_64.rpm 
error: Failed dependencies:
	libapr-1.so.0()(64bit) is needed by httpd-tools-2.4.6-88.el7.centos.x86_64
	libaprutil-1.so.0()(64bit) is needed by httpd-tools-2.4.6-88.el7.centos.x86_64
	
#查找相关依赖包

[root@qls ~]# ll  /mnt/Packages/  | grep  apr
-rw-rw-r-- 1 root root   105728 Nov 29  2017 apr-1.4.8-3.el7_4.1.x86_64.rpm
-rw-rw-r-- 1 root root   192652 Nov 29  2017 apr-devel-1.4.8-3.el7_4.1.x86_64.rpm
-rw-rw-r-- 1 root root    94132 Jul  4  2014 apr-util-1.5.2-6.el7.x86_64.rpm
-rw-rw-r-- 1 root root    78072 Jul  4  2014 apr-util-devel-1.5.2-6.el7.x86_64.rpm
-rw-rw-r-- 1 root root   854420 Nov 12  2018 haproxy-1.5.18-8.el7.x86_64.rpm

#安装相关依赖
[root@qls ~]# rpm -ivh  /mnt/Packages/apr-1.4.8-3.el7_4.1.x86_64.rpm 
Preparing...                          ################################# [100%]
Updating / installing...
   1:apr-1.4.8-3.el7_4.1              ################################# [100%]
[root@qls ~]# rpm -ivh  /mnt/Packages/apr-util-1.5.2-6.el7.x86_64.rpm 
Preparing...                          ################################# [100%]
Updating / installing...
   1:apr-util-1.5.2-6.el7             ################################# [100%]
   
#尝试安装httpd-tools

[root@qls ~]# rpm  -ivh  /mnt/Packages/httpd-tools-2.4.6-88.el7.centos.x86_64.rpm
Preparing...                          ################################# [100%]
Updating / installing...
   1:httpd-tools-2.4.6-88.el7.centos  ################################# [100%]
   
#再次安装httpd  报错 
[root@qls ~]# rpm  -ivh  /mnt/Packages/httpd-2.4.6-88.el7.centos.x86_64.rpm 
error: Failed dependencies:
	/etc/mime.types is needed by httpd-2.4.6-88.el7.centos.x86_64


#搜索相关文件的依赖包
[root@qls ~]# yum  provides  /etc/mime.types
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirrors.ustc.edu.cn
 * epel: fedora.cs.nctu.edu.tw
 * extras: mirrors.aliyun.com
 * updates: mirrors.ustc.edu.cn
mailcap-2.1.41-2.el7.noarch : Helper application and MIME type associations for file types
Repo        : base
Matched from:
Filename    : /etc/mime.types

#安装依赖包
[root@qls ~]# rpm  -ivh  /mnt/Packages/mailcap-2.1.41-2.el7.noarch.rpm 
Preparing...                          ################################# [100%]
Updating / installing...
   1:mailcap-2.1.41-2.el7             ################################# [100%]
   
#最终安装成功 

[root@qls ~]# rpm  -ivh  /mnt/Packages/httpd-2.4.6-88.el7.centos.x86_64.rpm 
Preparing...                          ################################# [100%]
Updating / installing...
   1:httpd-2.4.6-88.el7.centos        ################################# [100%]
[root@qls ~]# 



#联网安装软件包 

[root@qls ~]# rpm  -ivh  https://mirrors.aliyun.com/centos/7.8.2003/os/x86_64/Packages/tree-1.6.0-10.el7.x86_64.rpm
Retrieving https://mirrors.aliyun.com/centos/7.8.2003/os/x86_64/Packages/tree-1.6.0-10.el7.x86_64.rpm
Preparing...                          ################################# [100%]
Updating / installing...
   1:tree-1.6.0-10.el7                ################################# [100%]


#升级安装 

-U		#升级  

[root@qls ~]# rpm  -ivh  https://mirrors.aliyun.com/zabbix/zabbix/4.0/rhel/7/x86_64/zabbix-agent-4.0.0-2.el7.x86_64.rpm
Retrieving https://mirrors.aliyun.com/zabbix/zabbix/4.0/rhel/7/x86_64/zabbix-agent-4.0.0-2.el7.x86_64.rpm
warning: /var/tmp/rpm-tmp.jseg5b: Header V4 RSA/SHA512 Signature, key ID a14fe591: NOKEY
Preparing...                          ################################# [100%]
Updating / installing...
   1:zabbix-agent-4.0.0-2.el7         ################################# [100%]

[root@qls ~]# zabbix_agentd -V
zabbix_agentd (daemon) (Zabbix) 4.0.0
Revision 85308 1 October 2018, compilation time: Oct  1 2018 08:41:36

Copyright (C) 2018 Zabbix SIA
License GPLv2+: GNU GPL version 2 or later <http://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it according to
the license. There is NO WARRANTY, to the extent permitted by law.

#升级安装
[root@qls ~]# rpm  -Uvh  https://mirrors.aliyun.com/zabbix/zabbix/4.4/rhel/7/x86_64/zabbix-agent-4.4.0-1.el7.x86_64.rpm
Retrieving https://mirrors.aliyun.com/zabbix/zabbix/4.4/rhel/7/x86_64/zabbix-agent-4.4.0-1.el7.x86_64.rpm
warning: /var/tmp/rpm-tmp.e9rZWk: Header V4 RSA/SHA512 Signature, key ID a14fe591: NOKEY
Preparing...                          ################################# [100%]
Updating / installing...
   1:zabbix-agent-4.4.0-1.el7         ################################# [ 50%]
Cleaning up / removing...
   2:zabbix-agent-4.0.0-2.el7         ################################# [100%]
[root@qls ~]# zabbix_agentd -V
zabbix_agentd (daemon) (Zabbix) 4.4.0
Revision cfac660b25 7 October 2019, compilation time: Oct  7 2019 11:26:17

Copyright (C) 2019 Zabbix SIA
License GPLv2+: GNU GPL version 2 or later <http://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it according to
the license. There is NO WARRANTY, to the extent permitted by law.

This product includes software developed by the OpenSSL Project
for use in the OpenSSL Toolkit (http://www.openssl.org/).

Compiled with OpenSSL 1.0.1e-fips 11 Feb 2013
Running with OpenSSL 1.0.1e-fips 11 Feb 2013

#查询指定的软件包是否安装

[root@qls ~]# rpm  -q  tree
tree-1.6.0-10.el7.x86_64
[root@qls ~]# rpm  -q  ifconfig
package ifconfig is not installed
[root@qls ~]# rpm  -q  net-tools
net-tools-2.0-0.25.20131004git.el7.x86_64

#显示所有已经安装的软件包 

[root@qls ~]# rpm -qa  | grep  tree
tree-1.6.0-10.el7.x86_64


#查询软件包列表信息
[root@qls ~]# rpm  -ql  httpd
/etc/httpd
/etc/httpd/conf
/etc/httpd/conf.d
/etc/httpd/conf.d/README
/etc/httpd/conf.d/autoindex.conf
/etc/httpd/conf.d/userdir.conf
/etc/httpd/conf.d/welcome.conf

#查询相关配置文件信息
[root@qls ~]# rpm  -qc  httpd
/etc/httpd/conf.d/autoindex.conf
/etc/httpd/conf.d/userdir.conf
/etc/httpd/conf.d/welcome.conf
/etc/httpd/conf.modules.d/00-base.conf
/etc/httpd/conf.modules.d/00-dav.conf
/etc/httpd/conf.modules.d/00-lua.conf
/etc/httpd/conf.modules.d/00-mpm.conf
/etc/httpd/conf.modules.d/00-proxy.conf
/etc/httpd/conf.modules.d/00-systemd.conf
/etc/httpd/conf.modules.d/01-cgi.conf
/etc/httpd/conf/httpd.conf
/etc/httpd/conf/magic
/etc/logrotate.d/httpd
/etc/sysconfig/htcacheclean
/etc/sysconfig/httpd

#查询软件包本身信息

[root@qls ~]# rpm  -qi  httpd
Name        : httpd
Version     : 2.4.6
Release     : 88.el7.centos
Architecture: x86_64
Install Date: Thu 30 Jul 2020 09:03:08 AM CST
Group       : System Environment/Daemons
Size        : 9817309
License     : ASL 2.0
Signature   : RSA/SHA256, Mon 12 Nov 2018 10:28:53 PM CST, Key ID 24c6a8a7f4a80eb5
Source RPM  : httpd-2.4.6-88.el7.centos.src.rpm
Build Date  : Mon 05 Nov 2018 09:48:57 AM CST
Build Host  : x86-01.bsys.centos.org
Relocations : (not relocatable)
Packager    : CentOS BuildSystem <http://bugs.centos.org>
Vendor      : CentOS
URL         : http://httpd.apache.org/
Summary     : Apache HTTP Server
Description :
The Apache HTTP Server is a powerful, efficient, and extensible
web server.

#使用绝对路径查询命令属于哪个软件包   前提系统已经安装这个软件 

[root@qls ~]# rpm  -qf  `which  ping`
iputils-20160308-10.el7.x86_64
[root@qls ~]# which  ping
/usr/bin/ping
[root@qls ~]# rpm -qf  /usr/bin/ping
iputils-20160308-10.el7.x86_64


总结:

	-ivh		#安装
	
	-Uvh		#升级
	
	-e			#卸载
	
	-q			#查询指定软件包 
	
	-qa			#查询所有已经安装的软件包
	
	-qi			#查询软件包本身相关信息
	
	-ql			#查询软件包列表信息
	
	-qc			#查询软件包相关文件
	
	-qf			#查询命令属于哪个软件包  必须是绝对路径  前提本地要已经存在这个软件包 
	
	

3. yum管理工具


yum源   yum仓库  


[root@qls ~]# ll  /etc/yum.repos.d/
total 40
-rw-r--r-- 1 root root 1664 Nov 23  2018 CentOS-Base.repo
-rw-r--r-- 1 root root 1309 Nov 23  2018 CentOS-CR.repo
-rw-r--r-- 1 root root  649 Nov 23  2018 CentOS-Debuginfo.repo
-rw-r--r-- 1 root root  314 Nov 23  2018 CentOS-fasttrack.repo
-rw-r--r-- 1 root root  630 Nov 23  2018 CentOS-Media.repo
-rw-r--r-- 1 root root 1331 Nov 23  2018 CentOS-Sources.repo
-rw-r--r-- 1 root root 5701 Nov 23  2018 CentOS-Vault.repo
-rw-r--r-- 1 root root  951 Oct  3  2017 epel.repo
-rw-r--r-- 1 root root 1050 Oct  3  2017 epel-testing.repo


怎么获取yum源  

本地的ISO镜像   

yum源仓库  

联网的方式下载 

本地yum仓库 


yum的种类  

base		#基础源 

epel		#扩展源  

软件官方源     # nginx   zabbix   docker  



阿里源  

清华源

中科大  

163源 


#更新源  

[root@qls ~]# rm -rf  /etc/yum.repos.d/*

[root@qls ~]# curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo


[root@qls ~]# curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo



[root@qls ~]# ll /etc/yum.repos.d/
total 8
-rw-r--r-- 1 root root 2523 Jul 30 09:51 CentOS-Base.repo
-rw-r--r-- 1 root root  664 May 11  2018 epel.repo


#显示可用的yum仓库

[root@qls ~]# yum  repolist   
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirrors.aliyun.com
 * extras: mirrors.aliyun.com
 * updates: mirrors.aliyun.com
repo id                                    repo name                                                               status
!base/7/x86_64                             CentOS-7 - Base - mirrors.aliyun.com                                    10,070
!epel/x86_64                               Extra Packages for Enterprise Linux 7 - x86_64                          13,422
!extras/7/x86_64                           CentOS-7 - Extras - mirrors.aliyun.com                                     412
!updates/7/x86_64                          CentOS-7 - Updates - mirrors.aliyun.com                                    900
repolist: 24,804


#显示所有的

[root@qls ~]# yum  repolist   all
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirrors.aliyun.com
 * extras: mirrors.aliyun.com
 * updates: mirrors.aliyun.com
repo id                             repo name                                                             status
!base/7/x86_64                      CentOS-7 - Base - mirrors.aliyun.com                                  enabled: 10,070
centosplus/7/x86_64                 CentOS-7 - Plus - mirrors.aliyun.com                                  disabled
contrib/7/x86_64                    CentOS-7 - Contrib - mirrors.aliyun.com                               disabled
!epel/x86_64                        Extra Packages for Enterprise Linux 7 - x86_64                        enabled: 13,422
epel-debuginfo/x86_64               Extra Packages for Enterprise Linux 7 - x86_64 - Debug                disabled
epel-source                         Extra Packages for Enterprise Linux 7 - x86_64 - Source               disabled
!extras/7/x86_64                    CentOS-7 - Extras - mirrors.aliyun.com                                enabled:    412
!updates/7/x86_64                   CentOS-7 - Updates - mirrors.aliyun.com                               enabled:    900
repolist: 24,804


[root@qls ~]# yum  install  -y  yum-utils


[root@qls ~]# yum-config-manager    --disable  epel


[root@qls ~]# yum  repolist  all
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirrors.aliyun.com
 * extras: mirrors.aliyun.com
 * updates: mirrors.aliyun.com
repo id                             repo name                                                             status
base/7/x86_64                       CentOS-7 - Base - mirrors.aliyun.com                                  enabled: 10,070
centosplus/7/x86_64                 CentOS-7 - Plus - mirrors.aliyun.com                                  disabled
contrib/7/x86_64                    CentOS-7 - Contrib - mirrors.aliyun.com                               disabled
epel/x86_64                         Extra Packages for Enterprise Linux 7 - x86_64                        disabled
epel-debuginfo/x86_64               Extra Packages for Enterprise Linux 7 - x86_64 - Debug                disabled
epel-source                         Extra Packages for Enterprise Linux 7 - x86_64 - Source               disabled
extras/7/x86_64                     CentOS-7 - Extras - mirrors.aliyun.com                                enabled:    412
updates/7/x86_64                    CentOS-7 - Updates - mirrors.aliyun.com                               enabled:    900
repolist: 11,382

[root@qls ~]# yum-config-manager    --enable  epel



#软件包管理 

#显示所有可安装的包 

[root@qls ~]# yum  list

#显示系统中已经安装的包
[root@qls ~]# yum  list  installed 


[root@qls ~]# yum  list  | grep  ^tree
tree.x86_64                               1.6.0-10.el7                 @base    
treelayout.noarch                         1.0.3-4.el7                  epel     
treelayout-demo.noarch                    1.0.3-4.el7                  epel     
treelayout-javadoc.noarch                 1.0.3-4.el7                  epel     

#显示可更新的包

[root@qls ~]# yum  check-update

[root@qls ~]# yum    list   updates  


[root@qls ~]# rpm  -qa  httpd
httpd-2.4.6-88.el7.centos.x86_64

#更新某个软件包 

[root@qls ~]# yum   update  httpd  -y


[root@qls ~]# rpm  -qa  httpd
httpd-2.4.6-93.el7.centos.x86_64


#安装软件包


[root@qls ~]# yum  install   tree		#交互式  麻烦  


[root@qls ~]# yum  install   tree   -y		#免交互


#卸载  

[root@qls ~]# yum  remove   tree  -y

[root@qls ~]# yum  erase   tree  -y


#联网安装软件包 

[root@qls ~]# yum  install  -y  https://mirrors.aliyun.com/centos/7.8.2003/os/x86_64/Packages/tree-1.6.0-10.el7.x86_64.rpm


#本地安装 

[root@qls ~]# yum localinstall  -y  /mnt/Packages/tree-1.6.0-10.el7.x86_64.rpm 



[root@qls ~]# systemctl  start httpd
[root@qls ~]# systemctl  status httpd
● httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled)
   Active: active (running) since Thu 2020-07-30 10:36:26 CST; 6s ago


[root@qls ~]# rm -f /etc/httpd/conf/httpd.conf
[root@qls ~]# systemctl  restart httpd
Job for httpd.service failed because the control process exited with error code. See "systemctl status httpd.service" and "journalctl -xe" for details.

#重新安装 

[root@qls ~]# yum  reinstall  -y  httpd


#搜索 

[root@qls ~]# yum search  ifconfig
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirrors.aliyun.com
 * extras: mirrors.aliyun.com
 * updates: mirrors.aliyun.com
================================================= N/S matched: ifconfig =================================================
python36-ifcfg.noarch : Python cross-platform network interface discovery (ifconfig/ipconfig/ip)

  Name and summary matches only, use "search all" for everything.

#联网搜索命令属于哪个软件包 

[root@qls ~]# yum  provides   ifconfig
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirrors.aliyun.com
 * extras: mirrors.aliyun.com
 * updates: mirrors.aliyun.com
epel/x86_64/filelists_db                                                                          |  12 MB  00:00:04     
net-tools-2.0-0.25.20131004git.el7.x86_64 : Basic networking tools
Repo        : @base
Matched from:
Filename    : /usr/sbin/ifconfig

#查看软件包相关信息 

[root@qls ~]# yum  info  tree
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirrors.aliyun.com
 * extras: mirrors.aliyun.com
 * updates: mirrors.aliyun.com
Installed Packages
Name        : tree
Arch        : x86_64
Version     : 1.6.0
Release     : 10.el7
Size        : 87 k
Repo        : installed
Summary     : File system tree viewer
URL         : http://mama.indstate.edu/users/ice/tree/
License     : GPLv2+
Description : The tree utility recursively displays the contents of directories in a
            : tree-like format.  Tree is basically a UNIX port of the DOS tree
            : utility.

#组包的安装

[root@qls ~]# yum  groups  install   Python

#组包的卸载

[root@qls ~]# yum  groups  remove   Python

#yum缓存 

#清除包的缓存 

[root@qls ~]# yum   clean  packages  
Loaded plugins: fastestmirror
Cleaning repos: base epel extras updates
0 package files removed

#清除插件的缓存 

[root@qls ~]# yum   clean  plugins
Loaded plugins: fastestmirror
Cleaning repos: base epel extras updates
Cleaning up list of fastest mirrors


#清除所有缓存 

[root@qls ~]# yum   clean  all
Loaded plugins: fastestmirror
Cleaning repos: base epel extras updates

#生成缓存 

[root@qls ~]# yum  makecache


#yum 历史记录 

[root@qls ~]# yum  history
Loaded plugins: fastestmirror
ID     | Command line             | Date and time    | Action(s)      | Altered
-------------------------------------------------------------------------------
    27 | reinstall -y httpd       | 2020-07-30 10:37 | Reinstall      |    1   
    26 | localinstall -y /mnt/Pac | 2020-07-30 10:11 | Install        |    1   
    25 | erase tree -y            | 2020-07-30 10:10 | Erase          |    1   
    24 | install -y https://mirro | 2020-07-30 10:09 | Install        |    1   


#显示所有历史记录 

[root@qls ~]# yum  history  list  all
Loaded plugins: fastestmirror
ID     | Login user               | Date and time    | Action(s)      | Altered
-------------------------------------------------------------------------------
    27 | root <root>              | 2020-07-30 10:37 | Reinstall      |    1   
    26 | root <root>              | 2020-07-30 10:11 | Install        |    1   
    25 | root <root>              | 2020-07-30 10:10 | Erase          |    1   
    24 | root <root>              | 2020-07-30 10:09 | Install        |    1   
    23 | root <root>              | 2020-07-30 10:08 | Erase          |    1   
    22 | root <root>              | 2020-07-30 10:08 | Install        |    1   

#查看某个ID的历史信息


[root@qls ~]# yum  history  info  15
Loaded plugins: fastestmirror
Transaction ID : 15
Begin time     : Wed Jul 22 08:51:56 2020
Begin rpmdb    : 372:6b59857cbbb441dc1cf9e1a96ab23013fd830365
End time       :                           (0 seconds)
End rpmdb      : 373:c16ad60498e5079097783959293418aeedfc68b5
User           : root <root>
Return-Code    : Success
Command Line   : install -y psmisc
Transaction performed with:
    Installed     rpm-4.11.3-35.el7.x86_64                      @anaconda
    Installed     yum-3.4.3-161.el7.centos.noarch               @anaconda
    Installed     yum-plugin-fastestmirror-1.1.31-50.el7.noarch @anaconda
Packages Altered:
    Install psmisc-22.20-16.el7.x86_64 @base
history info


#回滚历史ID为10的操作

[root@qls ~]# yum  history  undo  10  -y 


[root@qls ~]# yum  --setopt=history_list_view=commands  history  list all
Loaded plugins: fastestmirror
ID     | Command line             | Date and time    | Action(s)      | Altered
-------------------------------------------------------------------------------
    28 | history undo 10          | 2020-07-30 10:49 | Erase          |   21   
    27 | reinstall -y httpd       | 2020-07-30 10:37 | Reinstall      |    1   
    26 | localinstall -y /mnt/Pac | 2020-07-30 10:11 | Install        |    1   
    25 | erase tree -y            | 2020-07-30 10:10 | Erase          |    1   
    24 | install -y https://mirro | 2020-07-30 10:09 | Install        |    1   
    23 | erase tree -y            | 2020-07-30 10:08 | Erase          |    1   
    22 | install tree -y          | 2020-07-30 10:08 | Install        |    1   
    21 | remove tree -y           | 2020-07-30 10:08 | Erase          |    1   



[root@qls ~]# ll  /etc/yum.conf 


#只下载 不安装   指定下载的路径

[root@qls ~]# yum  install  -y  --downloadonly  --downloaddir=/opt   nginx


[root@qls ~]# ll /opt/
total 4380
-rw-r--r-- 1 root root   93872 Jul  4  2014 centos-indexhtml-7-9.el7.centos.noarch.rpm
-rw-r--r-- 1 root root   65788 Jul  4  2014 dejavu-fonts-common-2.33-6.el7.noarch.rpm
-rw-r--r-- 1 root root 1482820 Jul  4  2014 dejavu-sans-fonts-2.33-6.el7.noarch.rpm
-rw-r--r-- 1 root root  260512 Nov 12  2018 fontconfig-2.13.0-4.3.el7.x86_64.rpm
-rw-r--r-- 1 root root   10116 Jul  4  2014 fontpackages-filesystem-1.44-8.el7.noarch.rpm
-rw-r--r-- 1 root root  149492 Jul  4  2014 gd-2.0.35-26.el7.x86_64.rpm
-rw-r--r-- 1 root root  278636 Apr 25  2018 gperftools-libs-2.6.1-1.el7.x86_64.rpm
-rw-r--r-- 1 root root  137752 Aug 23  2019 libjpeg-turbo-1.2.90-8.el7.x86_64.rpm
-rw-r--r-- 1 root root  621364 Aug 23  2019 libX11-1.6.7-2.el7.x86_64.rpm
-rw-r--r-- 1 root root  168172 Aug 23  2019 libX11-common-1.6.7-2.el7.noarch.rpm
-rw-r--r-- 1 root root   29784 Jul  4  2014 libXau-1.0.8-2.1.el7.x86_64.rpm
-rw-r--r-- 1 root root  218900 Nov 12  2018 libxcb-1.13-1.el7.x86_64.rpm
-rw-r--r-- 1 root root   56800 Aug 11  2017 libXpm-3.5.12-1.el7.x86_64.rpm
-rw-r--r-- 1 root root  575413 Oct  4  2019 nginx-1.16.1-1.el7.x86_64.rpm
-rw-r--r-- 1 root root   19857 Oct  4  2019 nginx-all-modules-1.16.1-1.el7.noarch.rpm
-rw-r--r-- 1 root root   21089 Oct  4  2019 nginx-filesystem-1.16.1-1.el7.noarch.rpm
-rw-r--r-- 1 root root   30445 Oct  4  2019 nginx-mod-http-image-filter-1.16.1-1.el7.x86_64.rpm
-rw-r--r-- 1 root root   39849 Oct  4  2019 nginx-mod-http-perl-1.16.1-1.el7.x86_64.rpm
-rw-r--r-- 1 root root   29613 Oct  4  2019 nginx-mod-http-xslt-filter-1.16.1-1.el7.x86_64.rpm
-rw-r--r-- 1 root root   58301 Oct  4  2019 nginx-mod-mail-1.16.1-1.el7.x86_64.rpm
-rw-r--r-- 1 root root   86465 Oct  4  2019 nginx-mod-stream-1.16.1-1.el7.x86_64.rpm

[root@qls ~]# cat /etc/yum.conf
[main]
#cachedir=/var/cache/yum/$basearch/$releasever
cachedir=/opt		#指定下载保存路径
keepcache=1			#开启缓存 


[root@qls ~]# yum install  -y  nginx 


[root@qls ~]# ll /opt/
total 12
drwxr-xr-x 4 root root  256 Jul 30 11:03 base
drwxr-xr-x 4 root root 4096 Jul 30 11:03 epel
drwxr-xr-x 4 root root  161 Jul 30 11:03 extras
-rw-r--r-- 1 root root  117 Jul 30 11:04 timedhosts
-rw-r--r-- 1 root root  107 Jul 30 11:03 timedhosts.txt
drwxr-xr-x 4 root root  161 Jul 30 11:03 updates
[root@qls ~]# find  /opt/  -name  "*.rpm"
/opt/base/packages/centos-indexhtml-7-9.el7.centos.noarch.rpm
/opt/base/packages/dejavu-fonts-common-2.33-6.el7.noarch.rpm
/opt/base/packages/fontconfig-2.13.0-4.3.el7.x86_64.rpm
/opt/base/packages/dejavu-sans-fonts-2.33-6.el7.noarch.rpm
/opt/base/packages/fontpackages-filesystem-1.44-8.el7.noarch.rpm
/opt/base/packages/gd-2.0.35-26.el7.x86_64.rpm
/opt/base/packages/gperftools-libs-2.6.1-1.el7.x86_64.rpm
/opt/base/packages/libX11-1.6.7-2.el7.x86_64.rpm
/opt/base/packages/libX11-common-1.6.7-2.el7.noarch.rpm
/opt/base/packages/libXau-1.0.8-2.1.el7.x86_64.rpm
/opt/base/packages/libXpm-3.5.12-1.el7.x86_64.rpm
/opt/base/packages/libjpeg-turbo-1.2.90-8.el7.x86_64.rpm
/opt/base/packages/libxcb-1.13-1.el7.x86_64.rpm
/opt/epel/packages/nginx-all-modules-1.16.1-1.el7.noarch.rpm
/opt/epel/packages/nginx-1.16.1-1.el7.x86_64.rpm
/opt/epel/packages/nginx-filesystem-1.16.1-1.el7.noarch.rpm
/opt/epel/packages/nginx-mod-http-image-filter-1.16.1-1.el7.x86_64.rpm
/opt/epel/packages/nginx-mod-http-perl-1.16.1-1.el7.x86_64.rpm
/opt/epel/packages/nginx-mod-http-xslt-filter-1.16.1-1.el7.x86_64.rpm
/opt/epel/packages/nginx-mod-mail-1.16.1-1.el7.x86_64.rpm
/opt/epel/packages/nginx-mod-stream-1.16.1-1.el7.x86_64.rpm

yum总结:

	repolist		#针对仓库操作 
	
		all			#显示所有 
		
	list			#显示所有可安装的软件包 
	
		installed	#显示已经安装的
		
		updates		#显示可更新的
		
	check-update	#显示可更新的
	
	update			#更新
    
    install			#安装  
	
	localinstall	#本地安装 
	
	reinstall		#重新安装 
	
	remove			#卸载
	
	erase			#卸载 
	
	info			#显示软件包信息
	
	search			#搜索
	
	provides		#查询命令属于哪个软件包 
	
	groups			#组包管理
	
		install		#安装
		
		remove		#移除
		
	clean			#清空
	
		all			#清空所有 
		
		packages	#清空软件包
		
		plugins		#清空插件 
		
	makecahce		#生成缓存
	
	history			#历史记录
	
		list	all		#显示所有
		
		info 	ID		#显示某次记录的信息
		
		undo	ID		#回滚这次的操作 
		
		
		
		
yum-config-manager		#yum仓库管理工具 

	--disable		#禁用仓库
	
	--enable		#启用仓库 
	
	

4. 搭建本地yum仓库



#把之前的仓库全部将其失效

[root@qls ~]# ll /etc/yum.repos.d/
total 8
-rw-r--r-- 1 root root 2523 Jul 30 09:51 CentOS-Base.repo
-rw-r--r-- 1 root root  664 Jul 30 09:57 epel.repo
[root@qls ~]# gzip  /etc/yum.repos.d/*
[root@qls ~]# ll /etc/yum.repos.d/
total 8
-rw-r--r-- 1 root root 601 Jul 30 09:51 CentOS-Base.repo.gz
-rw-r--r-- 1 root root 254 Jul 30 09:57 epel.repo.gz

#挂载镜像源

[root@qls ~]# mount  /dev/sr0   /mnt/

[root@qls ~]# df -h  | grep  mnt
/dev/sr0        4.3G  4.3G     0 100% /mnt




file://			#本地

ftp://			#文件传输地址

http://			#网络协议地址

https://		#网络协议地址 


#编写yum源文件

[root@qls ~]# cat /etc/yum.repos.d/lcoal.repo
[qls]			#仓库名称  不能有空格
name=this  is  local  repo		#仓库说明信息
baseurl=file:///mnt				#仓库地址
enabled=1					#启用仓库
gpgcheck=0					#不检查其合法性  


#测试是否可用

[root@qls ~]# yum  clean  all
Loaded plugins: fastestmirror
Cleaning repos: qls
Cleaning up list of fastest mirrors
Other repos take up 309 M of disk space (use --verbose for details)


[root@qls ~]# yum  makecache
Loaded plugins: fastestmirror
Determining fastest mirrors
qls                                                                                               | 3.6 kB  00:00:00     
(1/4): qls/group_gz                                                                               | 166 kB  00:00:00     
(2/4): qls/filelists_db                                                                           | 3.2 MB  00:00:00     
(3/4): qls/primary_db                                                                             | 3.1 MB  00:00:00     
(4/4): qls/other_db                                                                               | 1.3 MB  00:00:00     
Metadata Cache Created


[root@qls ~]# yum install  -y  tree


5. 将本地仓库共享给其他主机



10.0.0.100		#本地仓库地址    服务端 


10.0.0.101		#客户端   

#客户端修改主机名 
[root@qls ~]# hostnamectl   set-hostname  client





# 在10.0.0.100 主机上面操作 

[root@qls ~]# mount  /dev/cdrom   /mnt/
mount: /dev/sr0 is write-protected, mounting read-only
[root@qls ~]# df -h | grep mnt
/dev/sr0        4.3G  4.3G     0 100% /mnt

#安装文件传输工具

[root@qls ~]# yum  install  -y  vsftpd

#启动
[root@qls ~]# systemctl  start  vsftpd
[root@qls ~]# systemctl  enable  vsftpd

#关闭防火墙
[root@qls ~]# systemctl  stop  firewalld

#关闭Selinux
[root@qls ~]# setenforce  0


#测试

#浏览器输出

ftp://10.0.0.100/

#访问的是这个目录

[root@qls ~]# ll /var/ftp/
total 0
drwxr-xr-x 2 root root 6 Oct 31  2018 pub


[root@qls ~]# mkdir  /var/ftp/local-base
[root@qls ~]# ll /var/ftp/
total 0
drwxr-xr-x 2 root root 6 Jul 30 19:55 local-base
drwxr-xr-x 2 root root 6 Oct 31  2018 pub
[root@qls ~]# cp  -rp  /mnt/Packages/*  /var/ftp/local-base/

#下载管理工具

[root@qls ~]# yum  install  -y  createrepo

#告诉系统,这是个镜像yum源仓库 

[root@qls ~]# createrepo   /var/ftp/local-base/
Spawning worker 0 with 4021 pkgs
Workers Finished
Saving Primary metadata
Saving file lists metadata
Saving other metadata
Generating sqlite DBs
Sqlite DBs complete


#修改yum配置文件

[root@qls ~]# cat /etc/yum.repos.d/lcoal.repo
[qls]
name=this  is  local  repo
baseurl=ftp://10.0.0.100/local-base/
enabled=1
gpgcheck=0


[root@qls ~]# yum  repolist
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
repo id                                           repo name                                                        status
qls                                               this  is  local  repo                                            4,021
repolist: 4,021





#让其他主机使用这个仓库

在10.0.0.101主机上面操作


[root@client ~]# systemctl  stop  firewalld
[root@client ~]# setenforce  0



[root@client ~]# gzip  /etc/yum.repos.d/*
[root@client ~]# ll /etc/yum.repos.d/
total 28
-rw-r--r--. 1 root root 549 Nov 23  2018 CentOS-Base.repo.gz
-rw-r--r--. 1 root root 735 Nov 23  2018 CentOS-CR.repo.gz
-rw-r--r--. 1 root root 426 Nov 23  2018 CentOS-Debuginfo.repo.gz
-rw-r--r--. 1 root root 232 Nov 23  2018 CentOS-fasttrack.repo.gz
-rw-r--r--. 1 root root 381 Nov 23  2018 CentOS-Media.repo.gz
-rw-r--r--. 1 root root 506 Nov 23  2018 CentOS-Sources.repo.gz
-rw-r--r--. 1 root root 633 Nov 23  2018 CentOS-Vault.repo.gz


#编写yum源配置文件

[root@client ~]# cat /etc/yum.repos.d/lcoal.repo
[qls]
name=this  is  local  repo
baseurl=ftp://10.0.0.100/local-base/
enabled=1
gpgcheck=0



#测试

[root@client ~]# yum clean all
Loaded plugins: fastestmirror
Cleaning repos: qls
[root@client ~]# yum  makecache
Loaded plugins: fastestmirror
Determining fastest mirrors
qls                                                                                               | 2.9 kB  00:00:00     
(1/3): qls/filelists_db                                                                           | 3.2 MB  00:00:00     
(2/3): qls/primary_db                                                                             | 3.2 MB  00:00:00     
(3/3): qls/other_db                                                                               | 1.3 MB  00:00:00     
Metadata Cache Created


[root@client ~]# yum  install  vim -y



yum是一个软件包管理工具,配置yum源路径/etc/yum.repos.d

#安装vsftpd、createrepo、yum-utils
#b、在vsftpd管理目录创建仓库
#c、存放软件到仓库的目录
#d、创建软件包依赖关系
#e、编写yum源文件(必须放在/etc/yum.repos.d并且要以.repo结尾)
#f、清除缓存并测试

简便方法:

一、两台机(建立如上)保证机器可以联网
二、在本地仓库机器上按照如下步骤操作
     vim /etc/yum.conf
将下图的0改为1(默认为0,意为安装成功后立即删除安装包)

[root@warehouse 7]# vim /etc/yum.conf
	[main]
    cachedir=/var/cache/yum/$basearch/$releasever
    keepcache=1

1、在命令行中输入:
yum install createrepo  vsftpd  wget  -y     #这三个软件下面要用到,没有请自行安装
2、安装成功后: 输入:systemctl  enable  --now  vsftpd    #立即启用ftp
3、rm -rf /etc/yum.repos.d/*       #删除本地源
4、wget -O /etc/yum.repos.d/CentOS-Base.repo https://repo.huaweicloud.com/repository/conf/CentOS-7-reg.repo       #将华为源同步到本地(也可采用其他源,阿里云、163自行更改)
5、cd   /var/ftp    #此处一定要切换目录
6、yum  install yum-utils -y     
7、reposync  -r  (仓库名称,不知道的可以用yum repolist查看)       #将网络仓库保存到本地
8、同步好以后输入:createrepo   base      #建立依赖关系
9、输入vim /etc/yum.repos.d/local.repo将以下内容粘贴即可:
 [loacl-ftp-30]              #仓库名,可自定义
 name="This is 30 ftp server"       #描述信息
 baseurl=ftp://172.16.1.30(自己的内网地址或外网地址)/base     #yum源地址
 gpgcheck=0      #0不检查秘钥,1为检查秘钥
 enabled=1        #1为启用,0为不启用

2.在远程测试机上输入
vim /etc/yum.conf
将下图的0改为1(默认为0,意为安装成功后立即删除安装包)

[root@warehouse 7]# vim /etc/yum.conf
	[main]
    cachedir=/var/cache/yum/$basearch/$releasever
    keepcache=1

rm -rf /etc/yum.repos.d/*
输入vim /etc/yum.repos.d/local.repo将以下内容粘贴即可:
 [loacl-ftp-30]              #仓库名,可自定义
 name="This is 30 ftp server"       #描述信息
 baseurl=ftp://172.16.1.30(与本地仓库机的配置文件地址相同即可)/base     #yum源地址
 gpgcheck=0      #0不检查秘钥,1为检查秘钥
 enabled=1        #1为启用,0为不启用

#测试环境
yum clean all     #清除缓存
yum makecache	  #生成新缓存
yum install zsh   #安装zsh软件
yum repolist      #查看本地下载源仓库,此时应该只有一个ftp源



简便方法:

1.建立本地源
     挂载镜像
     安装命令  yum install -y createrepo vsftpd wget 
     在/etc/yum.repo.d/ 把以 .repo 结尾的所有源移动到新文件夹里
     在/etc/yum.conf/里   修改成1
     查看自己的仓库    yum repolist
     在/etc/yum.repos.d/   建立自己的本地源(只要以 .repo结尾就可以) vim mm.repo
     baseurl=file:///mnt  (镜像)
     查看仓库   yum repolist
     清空缓存  clean    生成新缓存
 2.ftp源(网络原)
     挂载镜像
     mount /mnt/sr0 /opt
     在/etc/yum.repos.d/里  mkdir xxx   mv * .repo   /etc/yum.repos.d/xxx
     把/etc/yum.conf 改为一
     systemctl start vsftpd 
     systemctl status vsfpd (running 开启)   
     在/var/ftp/ 下新建文件夹 (mkdir  aaa)
     cp -rp /mnt/Packages/*  /var/ftp/aaa
     在/var/ftp/下    createrepo /var/ftp/aaa
     在/etc/yum.repos.d/下 新建ftp源  5行 baseurl=ftp://ip地址/aaa   (ftp下的文件夹以 .repo 结尾)
     清空缓存   生成新缓存
 3.测试机
     在/etc/yum.conf 里查看是否为1
     在/etc/yum.repos.d/新建文件夹    把所有的源移动到新建文件夹里
     编辑连接ftp源 vim  bbb.repo  5行 baseurl=ftp://ip地址/aaa   (ftp下的文件夹以 .repo 结尾) 
     查看yum仓库   yum repolist
     清空缓存   生成新缓存
     测试  yum remove tree       yum install  tree -y

yum源处理与常用软件包安装

vim /etc/yum.conf ===》更改keepcache=1 #开启rpm包安装缓存

在测试环境配置好yum源(默认国外的yum源比较慢,所以换成国内的)

在/etc/yum.repo.d/下
rm -rf ./*  #删除所有的源

## 重新安装新的源
163源 、华为源 、阿里云源 、清华大学源

curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

#.安装基础软件包
yum install net-tools vim tree htop iftop gcc gcc-c++ glibc\
iotop lrzsz sl wget unzip telnet nmap nc psmisc \
dos2unix bash-completion bash-completion-extra sysstat \
rsync nfs-utils httpd-tools -y

yum update -y # 全部更新系统,切记日后就不要轻易更新

安装系统补装工具命令

yum -y install tree nmap sysstat lrzsz dos2unix telnet bash-completion bash-completion-extras vim lsof net-tools reyuc ntpdate nfs-utils


安装时未安装的包组:
    yum groupinstall "Compatibility libraries" "Base" "Development tools"
    yum groupinstall "debugging tools" "dial-up networking support"
    
    #可以通过yum groupinfo 包组查看具体安装的组件
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

琴声浮或沉__听懂只一人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值