Linux系统管理实战-软件包管理
软件包管理
在Linux中,不同的发行版软件管理的方式可能不一样,具体来说,主要分为两大派:

RPM: Rpm Package Manager
CentOS系统软件安装三种方式
rpm:安装简单,可定制性差,一台机器上不能装多个相同的软件,稳定性高源码包
编译安装:安装复杂,可定制性好,一台机器上可安装多个相同的软件
二进制包:安装简单,可定制性差,一台机器可安装多个相同的软件,稳定性较高
怎样获取rpm包
在网络上下载rpm包: http://rpmfind.net/ //下载不常见的rpm包
网络yum源中获取 //基础源CentOS,扩展源epel
镜像中获取:在光盘镜像sr0中的Packages目录下
怎样查看光盘的内容
1.将光盘连接上
2.将光盘挂载到相应的挂载点
# mount /dev/sr0 /mnt
3.通过挂载点访问光盘内容
# ls /mnt
rpm包介绍
zsh-5.8.2-25.el7.x86_64.rpm 包全名
zsh 包名
5.8.2:主版本号.次版本号.源程序的发行号
25: rpm发行号
el7:平台一般来说,不同平台的包不兼容
x86_64:架构
x86_64: 64位
i686: 32位
noarch:通用
RPM包管理
rpm工具
安装
# rpm -ivh 包全名 //安装软件包
# rpm -Uvh 包全名 //升级安装包,如果本来没有安装,则安装
卸载
# rpm -e 包名
--nodeps //只卸载当前软件,不检查依赖关系
查询
查询已安装的:
查询指定软件包有没有安装: # rpm -q包名
查询所有已安装的软件包: # rpm -qa //可以配合grep命令
查询已安装的软件包安装的所有文件: # rpm -ql 包名
查询已安装的软件包安装的配置文件: # rpm -qc 包名
通过文件名反查文件是由哪个包安装的: # rpm -qf文件的绝对路径
查询未安装的:
查询未安装的软件包将会安装的所有文件: # rpm -qpl 包全名
查询未安装的软件包将会安装的配置文件: # rpm -qpc 包全名
扩展:
``反引:等价于$(),引用命令的输出结果,``内部一定是命令
例:
#rpm -qf `which useradd`
shadow-utils-4.1.5.1-24.el7.x86_64
# rpm -qf $(which useradd)
shadow-utils-4.1.5.1-24.el7.x86_64
rpm包无法自动解决依赖性问题,需要手动解决,非常麻烦..
yum可以解决软件包之间的依赖问题
YUM工具
yum仓库
1.多个rpm包
2.记录这些包及包之间的依赖关系- repodata目录
配置yum源
本地源
要使用yum仓库,需要先进行配置
主配置文件:/etc/yum.conf
[root@localhost mnt]# tail -2 letc/yum.conf
# PUT YOUR REPOS HERE OR IN separate files named file.repo
# in /etc/yum.repos.d//仓库可以定义在这里或/etc/yum.repos.d目录下以.repo结尾的单独的文件中
实验:配置本地yum仓库
配置过程:
1、将系统光盘sr0挂载到/mnt
2、关闭或者备份其他仓库
# cd /etc/yum.repos.d/
# mkdir repo
# mv *.repo repo/
3、创建yum配置文件
# vim local.repo
[local] //仓库ID
name=local disk //仓库名称(描述)
baseurl=file://mnt //仓库的URl 或者来源
enabled=1 //开关,0为关 1为开
gpgcheck=0 //秘钥是否检查
4、检验
# yum repolist
【注意编写yum源文件】
1、一定要写在/etc/yum.repos.d/目录下
2、一定要以.repo 结尾,否则不生效
网络源
常用的网络源:centos官方源,epel源
国外源下载比较慢,建议使用国内镜像源:如阿里云,清华大学,网易... 直接搜索xxx开源镜像站
例如:
# cat /etcyum.repos.d/base.repo
[base]
name=centos http base
baseurl=https://mirrors.aliyun.com/centos/7/os/x86_64/
enabled=1
gpgcheck=0
# cat /etc/yum.repos.d/epel.repo
[epel]
name=centos http epel
baseurl=https://mirrors.aliyun.com/epel/7/x86_64/
enabled=1
gpgcheck=0
或者通过阿里云镜像站给的命令:
# wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
# wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
YUM命令的使用
清理yum缓存:
# yum clean all
缓存软件包信息:
提高搜索/安装软件的速度
# yum makecache
查询yum源信息:
# yum repolist
查找软件:
# yum search mysql
此命令会搜索到系统已经安装和yum源里没有安装的软件信息,可以用他简单测试yum是否好用
查看软件依赖性关系:
# yum deplist httpd
查看文件属于哪个软件
# yum provides rz
查看系统已经安装好的软件和没有安装的软件(源里存在即可查到):
# yum list
查看系统已经安装好的软件组和没有安装的软件组(源里存在即可查到):
# yum grouplist
查看软件组包含的具体软件:
# yum groupinfo
安装软件组:
# yum groupinstall ‘软件组名称’
如果软件或者软件组名称内有空格,要给空格转义或者加引号
安装软件:
# yum install 软件名称
# yum install mysql mysql-server -y //-y跳过确认提示直接安装
重装:
# yum reinstall 软件名
卸载软件:
# yum erase mysql-server
# yum remove mysql-server
# yum -y remove mysql-server
打开Yum缓存功能:安装完软件之后,软件不会被删除(默认安装完之后,不会保留安装包)
# vim /etc/yum.conf 修改下面参数的值为1,软件会被保存到cachedir指定的目录下
keepcache=1
自己制作yum源
#mkdir /myyum
把想用yum安装的软件包拷贝到目录下
#createrepo /myyum //此目录就可以作为yum源了。
Linux系统管理实战-软件包管理的更多相关文章
- 【one day one linux】linux下的软件包管理工具
Linux 下的软件包管理工具 linux下的软件安装可以通过两种方式,一种是直接使用自带的软件包管理工具安装,另外一种通过编译源码安装. 1.软件包的种类 Red Hat和Fedora:redhat ...
- Linux 系统管理04--账号管理
Linux系统管理04--账号管理 一.用户账号管理 1.用户账号概述 (1)用户账号的常见分类: 1>超级用户:root uid=0 gid=0 权限最大. 2>普通用户:uid> ...
- Linux 系统管理06--磁盘管理
Linux系统管理06——磁盘管理 一.磁盘结构 1.硬盘的物理结构 盘片:硬盘有多个盘片,每个盘片2面 磁头:每面一个磁头 2.硬盘的数据结构 扇区:盘片被分为多个扇形区域,每个扇形区存放512字节 ...
- Linux常用命令——软件包管理
Linux常用命令--软件包管理 Linux 模块依赖查询网址http://www.rpmfind.net/ ISO挂载 将所需ISO文件添加到虚拟机 建立挂载文件夹mkdir /mnt/cdrom ...
- 【Linux学习】Linux系统管理1—进程管理
Linux系统管理1-进程管理 一.Linux的三种进程 Linux包括3中不同类型的进程: 交互进程:由一个shell启动的进程.交互进程可以在前后台运行 批处理进程:该进程和终端无联系,是一个进程 ...
- linux 学习6 软件包管理 资料链接
软件包管理 这一章看得比较随意 先大概记点东西. RPM安装很繁琐,因为依赖性,手动安装太麻烦. ______我觉得直接yum在线安装就好了,很直接方便. 但是要特别注意的地方 在用yum升级或者卸载 ...
- linux操作系统4 软件包管理
知识内容: 1.软件包介绍 2.基本软件包安装 3.yum软件包管理 4.apt软件包管理 5.源码安装 一.软件包介绍 1.软件包分类 压缩包形式:类似.tar.gz结尾的文件(源码) rpm: r ...
- Linux常用命令-软件包管理工具-rpm
命令简介 rpm(RPM Package Manager)是一个强大的命令行驱动的软件包管理工具,用来安装.卸载.校验.查询和更新 Linux 系统上的软件包. 语法格式 rpm [OPTION... ...
- linux的Yum软件包管理工具
Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器.基于RPM包管理,能够从指定的服务器自动下载 ...
- linux RPM(红帽软件包管理器)和Yum软件仓库中常见的命令
RPM(红帽软件包管理器)常用命令 安装软件:rpm -ivh filename.rpm 升级软件:rpm -Uvh filename.rpm 卸载软件:rpm -e filename.rpm 查询软 ...
随机推荐
- 学习高速PCB设计,这些走线方式你要知道! 高速射频百花潭 2022-01-21 08:53
1.电源布局布线相关 数字电路很多时候需要的电流是不连续的,所以对一些高速器件就会产生浪涌电流. 如果电源走线很长,则由于浪涌电流的存在进而会导致高频噪声,而此高频噪声会引入到其他信号中去. 而在高速 ...
- 官网jdk8,jdk11下载时需要登录Oracle账号的问题解决
当到这一步骤时先勾选同意,在这个下载按钮上点鼠标右键复制链接地址 文件的下载地址 我们需要把地址做些修改.把等号前面的地址删掉,然后找到等号后面地址中的otn后面加上-pub 然后把这个地址直接复制到 ...
- Office常见问题及解决方法
1.OneNote粘贴的图片比较模糊 问题原因:Microsoft为了使OneNote排版美观,在粘贴一些尺寸较大的图片时,会将图片进行缩放. 解决方法:右键->还原为原始尺寸
- 记录解决方案(sqlserver篇)
一个月的补卡次数不超过三次(即统计一个月内某人的补卡次数) 表结构是某人一天内的四次打卡状态,这样是统计当月补卡的天数了(错误) select count(*) from [Proc_HR_Punch ...
- springBoot中对mongodb添加2dsphere位置索引
项目需求:最近有个需求,就是要根据坐标位置找出附近的车辆(车辆有对应的坐标).然后翻了翻百度,cv流一顿操作之后,大概整理出来了一段代码如下 //根据当前位置坐标,找出附近*米内的所有车辆BasicD ...
- uniapp 复制 粘贴,系统剪贴板
uniapp里不叫复制粘贴,叫系统剪贴板uni.setClipboardData({ data: this.href, success: () => { uni.hideToast(); thi ...
- json extionsion
using System.Collections.Generic;using Newtonsoft.Json;using Newtonsoft.Json.Converters; namespace D ...
- 记下HTML中图片的路径
1 <!doctype html> 2 <html> 3 <head> 4 <meta charset="utf-8"> 5 < ...
- 90、java ftp 读取文件
https://blog.csdn.net/qq_38380025/article/details/80679128
- No.1.3
CSS层叠样式表 /* css注释 */ CSS引入方式 内嵌式:CSS写在style标签中 提示:style标签虽然可以写在页面任意位置,但是通常约定写在 head 标签中(作用范围:当前页面: ...