yum工具及源码包
yum工具及源码包
yum
yum
是RedHat以及CentOS中的软件包管理器,能够通过互联网下载以rpm结尾的包,并且安装,并可以自动处理依赖性关系,无需繁琐的一次次下载安装。
yum源
要成功的使用yum工具安装更新软件或系统,就需要有一个包含各种rpm软件包的repository(软件仓库),这个软件仓库我们习惯称之为yum源
或者yum 仓库
这个源可以是本地的也可以是网络的。
各大镜像源:
阿里云:https://opsx.alibaba.com/mirror
清华源:https://mirrors.tuna.tsinghua.edu.cn/
163源:http://mirrors.163.com/
华为源:https://mirrors.huaweicloud.com/
科大源:http://mirrors.ustc.edu.cn/
yum实战案例
使用yum查询软件包的方式
#列出软件仓库中可用的软件
[root@zls ~]# yum list
#进行模糊查找
[root@zls ~]# yum list|grep ftp
#列出软件包详情
[root@zls ~]# yum info ftp
使用yum安装软件包的方式
#安装软件只需要给出软件名称(前提是在仓库中必须有)
[root@zls ~]# yum install traceroute
#安装过程中分析依赖关系后, 直接安装, 无需交互
[root@zls ~]# yum install php -y
#安装本地的rpm包, 如果有依赖关系, 会自动从软件仓库中下载所需依赖(非来自.repo定义的软件仓库)
[root@zls ~]# yum localinstall /mnt/Packages/bind-9.9.4-50.el7.x86_64.rpm
#安装网络上rpm包
[root@zls ~]# yum install http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm
使用yum重装软件包的方式
#检查软件是否存在
[root@zls ~]# rpm -q vsftpd
vsftpd-2.2.2-24.el6.x86_64
#检查vsftpd软件配置文件
[root@zls ~]# rpm -qc vsftpd
/etc/logrotate.d/vsftpd
/etc/pam.d/vsftpd
/etc/vsftpd/ftpusers
/etc/vsftpd/user_list
/etc/vsftpd/vsftpd.conf
#不小心删除vsftpd配置文件
[root@zls ~]# rm -f /etc/vsftpd/vsftpd.conf
#重新安装软件
[root@zls ~]# yum reinstall vsftpd
#再次检查
[root@zls ~]# rpm -qc vsftpd
/etc/logrotate.d/vsftpd
/etc/pam.d/vsftpd
/etc/vsftpd/ftpusers
/etc/vsftpd/user_list
/etc/vsftpd/vsftpd.conf
使用yum更新软件包的方式
#对比Linux已安装的软件和yum仓库中的软件, 有哪些需要升级
[root@zls ~]# yum check-update
#更新acl软件
[root@zls ~]# yum update acl -y
#如果执行下面的命令,很危险
[root@zls ~]# yum update -y
使用yum删除软件包的方式
#先安装一个samba软件
[root@zls ~]# yum install samba -y
#删除该软件包,会删除依赖, 但是我们尽可能不要使用删除软件操作
[root@zls ~]# yum erase samba -y
[root@zls ~]# yum remove samba -y
yum仓库的相关命令
#列出yum源可用的软件仓库
[root@zls ~]# yum repolist
#列出全部yum源可用和禁用的仓库
[root@zls ~]# yum repolist all
#启用软件包
[root@db04 ~]# yum-config-manager --enable
建议:直接修改配置文件
#查看这个文件或命令属于哪个包
yum provides /etc/my.cnf
yum provides cd
yum缓存相关指令
#缓存yum源软件仓库, xml元数据文件
[root@zls ~]# yum makecache
#缓存软件包, 修改yum全局配置文件
[root@zls ~]# vim /etc/yum.conf
[main]
cachedir=/var/cache/yum/$basearch/$releasever
keepcache=1 //启动缓存
#查看缓存的xml文件
[root@zls ~]# ls /var/cache/yum/x86_64/7/base/
#查看缓存软件包路径
[root@zls ~]# /var/cache/yum/x86_64/7/
#另一种缓存rpm包方式
#1.安装插件支持只下载软件包不安装
[root@zls ~]# yum install -y yum-plugin-downloadonly
#2.将软件下载至指定目录
[root@zls ~]# yum install httpd -y --downloadonly --downloaddir=/tmp
#清除所有yum缓存
[root@zls ~]# yum clean all
#只清除缓存的软件包
[root@zls ~]# yum clean packages
yum包组相关指令
#列出已经安装和所有可使用的软件组
[root@zls ~]# yum groups list
#安装一整个组的软件
[root@zls ~]# yum groups install Development tools \
Compatibility libraries \
Base Debugging Tools
#yum删除包组
[root@zls ~]# yum groups remove -y Base
yum历史命令
#查看历史执行yum命令
[root@zls ~]# yum history
#查询历史执行yum命令ID详细信息
[root@zls ~]# yum history info N
#撤销历史执行过的yum命令
[root@zls ~]# yum history undo N
yum全局配置文件
yum的配置一般有两种方式:
1.全局配置文件/etc/目录下的yum.conf
2.子配置文件/etc/yum.repos.d/目录下的所有.repo文件
vim /etc/yum.cnf
cachedir=/var/cache/yum/$basearch/$releasever //缓存目录
keepcache=0 //缓存软件包, 1启动 0 关闭
debuglevel=2 //调试级别
logfile=/var/log/yum.log //日志记录位置
exactarch=1 //检查平台是否兼容
obsoletes=1 //检查包是否废弃
gpgcheck=1 //检查来源是否合法,需要有制作者的公钥信息
plugins=1 //是否启用查询
installonly_limit=5
bugtracker_url
# metadata_expire=90m //每小时手动检查元数据
# in /etc/yum.repos.d //包含repos.d目录
YUM签名检查机制[扩展]
rpm
软件提供组织redhat
在构建rpm
包时, 使用其私钥private key
对 rpm
进行签名
客户端在使用rpm
为了验证其合法性, 可以使用redhat
提供的公钥public key
进行签名检查
方式1: 指定公钥的位置
[root@zls ~]# vim /etc/yum.repos.d/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
方式2: 提前导入公钥
[root@zls ~]# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
[root@tianyun ~]# vim /etc/yum.repos.d/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
方式3: 不进行签名验证
#不检查软件包的签名,或者修改配置文件
[root@zls ~]# yum install httpd --nogpgcheck
制作本地yum仓库
[] //仓库名称
name //仓库描述信息
baseurl //YUM源url地址 ,可以是file:// ftp:// http://
enabled //是否激活该YUM源(0代表禁用,1代表激活,默认为激活)
gpgcheck //安装软件时是否检查签名(0代表禁用,1代表激活)
挂载镜像
mount /dev/cdrom /mnt
备份原有仓库
gzip /ctc/yum.repos.d/*
创建新仓库文件
使用yum-config-manager命令添加本地仓库
[root@zls ~]# yum-config-manager --add-repo="file:///mnt"
#手动添加repo配置文件(方式二)
[root@zls ~]# vim /etc/yum.repos.d/cdrom.repo
[cdrom]
name=This is local cdrom
baseurl=file:///mnt
enabled=1
gpgcheck=0
刷新repos生成缓存
yum makecache
构建企业级yum仓库
服务端配置
1.基础环境准备
#关闭防火墙
[root@yum_server ~]# systemctl stop firewalld
#临时关闭selinux
[root@yum_server ~]# setenforce 0
#安装ftp服务,启动并加入开机启动
[root@yum_server ~]# yum -y install vsftpd
[root@yum_server ~]# systemctl start vsftpd
[root@yum_server ~]# systemctl enable vsftpd
#开启yum缓存功能
[root@yum_server ~]# vim /etc/yum.conf
[main] cachedir=/var/cache/yum/$basearch/$releasever
keepcache=1
[root@yum_server ~]# yum clean all
2.提供基础base
源
[root@yum_server ~]# mkdir /var/ftp/centos7
[root@yum_server ~]# mount /dev/cdrom /mnt
[root@yum_server ~]# cp -rp /mnt/Packages/*.rpm /var/ftp/centos7
3.提供第三方源,同步中科大的源
#进入ftp目录
[root@yum_server centos]# cd /var/ftp/
#同步中科大的源
[root@yum_server ftp]# rsync -avzP rsync://rsync.mirrors.ustc.edu.cn/repo/nginx ./
4.安装createrepo
并创建 reopdata
仓库
//安装createrepo
[root@yum_server ~]# yum -y install createrepo
//生成仓库信息
[root@yum_server ~]# createrepo /var/ftp/
//注意: 如果此仓库每次新增软件则需要重新生成一次
客户端使用yum源
1.配置并使用base
基础源
[root@yum_client ~]# gzip /etc/yum.repos.d/*
[root@yum_client ~]# vim /etc/yum.repos.d/centos7.repo
[centos74]
name=centos74_base
baseurl=ftp://10.0.0.90/centos7
gpgcheck=0
2.客户端指向本地ftp
源
[root@yum_client ~]# vim /etc/yum.repos.d/nginx.repo
[ftp]
name=local ftpserver
baseurl=ftp://10.0.0.90/nginx
gpgcheck=0
流程图
源码包
源码包指的是开发编写好的程序源代码,但并没有将其编译为一个能正常使用的工具。
源码包的优缺点
优点:
1.有了源码包,那我就可以自行修改代码,提供我们使用,传说中的二次开发
2.可以定制需要的相关功能
3.新版本优先更新源码
4.自动化规范,方便落地
缺点:
1.相对于yum安装,复杂
2.耗时比较长
源码包安装步骤
安装源码包,必须要经历4个步骤
1.解压 tar
2.生成 ./configure cmake
3.编译 make
4.安装 make install
源码包安装基础环境准备
[root@node1 ~]# yum install -y gcc make wget
yum工具及源码包的更多相关文章
- linux 软件管理--yum工具及源码包
目录 linux 软件管理--yum工具及源码包 一.yum基本概述 二.yum源的配置 三.yum实践案例 四.yum全局配置文件 五.yum签名检查机制 五.制作本地yum仓库 六.构建企业级yu ...
- 中文自然语言处理工具HanLP源码包的下载使用记录
中文自然语言处理工具HanLP源码包的下载使用记录 这篇文章主要分享的是hanlp自然语言处理源码的下载,数据集的下载,以及将让源代码中的demo能够跑通.Hanlp安装包的下载以及安装其实之前就已经 ...
- yum 仓库搭建与源码包安装实战
目录 一.yum 仓库自建示例: 二.源码包安装实践 基础环境 服务端配置 下载及安装fpm软件 客户端: 一.yum 仓库自建示例: 1.安装ftp服务 yum -y install vsftpd ...
- linux下安装mysql的三种方法:rpm包安装、yum安装、源码包安装
1 安装MySQL数据库服务器安装方法一://查询系统自带的数据库rpm -qa | grep -i mysql //卸载查询到的所有mysqlrpm -e --nodeps mysql-libs-5 ...
- 转:CentOS系统yum源配置修改、yum安装软件包源码包出错解决办法!
yum安装包时报错: Could not retrieve mirrorlist http://mirrorlist.repoforge.org/el6/mirrors-rpmforge error ...
- CentOS系统yum源配置修改、yum安装软件包源码包出错解决办法apt.sw.be couldn't connect to host
yum安装包时报错: Could not retrieve mirrorlist http://mirrorlist.repoforge.org/el6/mirrors-rpmforge error ...
- Linux学习笔记15—RPM包的安装OR源码包的安装
RPM安装命令1. 安装一个rpm包rpm –ivh 包名“-i” : 安装的意思“-v” : 可视化“-h” : 显示安装进度另外在安装一个rpm包时常用的附带参数有:--force : 强制安装, ...
- 软件包管理_rpm命令管理_yum工具管理_文件归档压缩_源码包管理
rpm命令管理软件 对于挂载的像U盘那种都会在midea目录下,但是会显示在桌面上 安装软件(i:install,v:verbose冗长的,h:human):rpm -ivh xxxx.rpm 安 ...
- Linux进阶之Linux破解密码、yum源配置、防火墙设置及源码包安装
一.老师语录: 所有要求笔试的公司都是垃圾公司 笔试(是考所有的涉及到的点) 要有自己的卖点.专长(给自己个标签)(至少一个) 生产环境中,尽量使用mv(mv到一个没用的目录下),少使用rm 二.防火 ...
随机推荐
- 松软科技web课堂:SQLServer之LEN() 函数
LEN() 函数 LEN 函数返回文本字段中值的长度. SQL LEN() 语法 SELECT LEN(column_name) FROM table_name SQL LEN() 实例 我们拥有下面 ...
- fluwx使用的问题
今天搞了下fluwx这个库,也是遇到了很多问题. 问题一:‘包名不对,请检查包名是否与开放平台上填写的一致’ 显示把文档这些看了遍,但是也不是很清楚,还加了下群问别人,主要我没有开发过Android, ...
- iOS多线程定时器
在使用定时器时,我们经常使用NSTimer,但是由于NSTimer会受RunLoop影响,当RunLoop处理的任务很多时,就会导致NSTimer的精度降低,所以在一些对定时器精度要求很高的情况下,应 ...
- Druid-代码段-1-1
所属文章:池化技术(一)Druid是如何管理数据库连接的? 本代码段对应主流程1,具体用来获取一个连接: lic DruidPooledConnection getConnection(long ma ...
- 【bzoj4945】[Noi2017]游戏(搜索+2-sat)
bzoj 洛谷 题意: 现在有\(a,b,c\)三种车,每个赛道可能会存在限制:\(a\)表示不能选择\(a\)类型的赛车,\(b,c\)同理:\(x\)表示该赛道不受限制,但\(x\)类型的个数$\ ...
- 201871010112-梁丽珍《面向对象程序设计(java)》第十二周学习总结
项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https://www.cnblogs.com/nwnu-daizh/p ...
- Cent OS6.5——网络配置
1.已安装centos 系统,打开虚拟机,并开机进入centos系统 2.进行网络配置,必须先确认以下几个点: 2-1.网络适配器模式是否为NAT模式,点击虚拟机,选择设置 ——选择网络适配器,NAT ...
- 201871010113-刘兴瑞《面向对象程序设计(java)》第十一周学习总结
项目 内容 这个作业属于哪个课程 <任课教师博客主页链接> https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 <作业链接地址>htt ...
- spring注解实现事务
码云: https://gitee.com/MarkPolaris/spring-transcation
- CSharpGL(54)用基于图像的光照(IBL)来计算PBR的Specular部分
CSharpGL(54)用基于图像的光照(IBL)来计算PBR的Specular部分 接下来本系列将通过翻译(https://learnopengl.com)这个网站上关于PBR的内容来学习PBR(P ...