软件管理 rpm包  和yum

1.软件形式

Linux系统的第三方软件,无论是应用软件还是工具软件,大多以以下两种形式之一发行:

源代码形式       预编译形式

获取的源代码形式的软件,需要对其进行编译,因此费时耗力,但可以自行调整编译项,便于针对性地精简和优化。

获取的预编译形式的软件,安装过程相对简单。该形式通常具有以下特点:已经编译过,只需将其复制到系统中即可将软件按功能分类,相关且相似的封装成一个软件包包名包含了功能描述、版本、发行号、硬件架构,以及包类别。

预编译包是开源系统的服务方式。

2.linux两大阵营

redhat  .rpm  (redhat package managment)    debian  (ubuntu)   .deb

用于RedHat、SUSE 等Linux 系统的软件包,文件以.RPM 结尾。

RPM最初全称是Redhat Package Manager,意为“RedHat 包管理器”,是由RedHat公司提出的软件包管理标准,现已成为Linux中公认的软件包管理标准。

3.rpm包的来源和结构

系统盘--发行介质

网上

<包名>-<类型>-<Linux 核心>-<Linux 发行号>-<包版本>-<架构>.rpm

随发行介质的包文件名,一般没有<Linux 核心>和<Linux 发行号>。

包名中的<Linux 核心>、<Linux 发行号>及<架构>一定要和所安装Linux 系统相符,否则不能使用。若包名无相应的Linux 核心和Linux 发行号,则适用所有核心和发行版本。

 

架构:

i386/i686  针对于32位CPU

x86_64  针对于x86结构的64位CPU

el7.ARM.rpm  针对于arm的cpu

el7.ppc64.rpm IBM公司的cpu

Noarch表示适用于所有架构的cpu

示例:

httpd-2.0.40-21.i386.rmp

xz-5.2.2-1.el7.x86_64.rpm

libffi-devel-3.0.5-3.2.el6.x86_64.rpm

4.查看本机Linux 核心信息

查看Linux 核心信息,可使用uname 命令。

例如:

#uname –a

Linux vbcent7a 3.10.0-957.el7.x86_64 #1 SMP Thu Nov 8 23:39:32 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

5.光盘挂载

mount  /dev/cdrom  /mnt   ---挂载命令

umount  /mnt   ---卸载命令

说明:/dev/cdrom实质上一个软连接,指向/dev/sr0,即真正光驱设备是/dev/sr0

 

mount  /dev/sr0   /mnt   ---挂载光驱

/mnt 目录是系统自带的专供媒体类设备挂载的挂载点

也可以手动创建挂载点,

如:mkdir  /mnt/cdrom        mount  /dev/sr0   /mnt/cdrom

cd  /media/Packages   ---进入光盘中软件包的存放位置,里面全都是rpm安装包

注:不同的系统版本,安装包的位置可能不同,一般安装包目录名:Packaes、Server、RPMS等名

6.使用rpm命令管理rpm软件

1.查询 rpm -qa  查询安装的rpm包

对系统的查询:rpm -qa

软件包安装后的包名不带.rpm后缀。对已安装的包操作不能带.rpm后缀。

rpm -qa ---查询本机装过的所有包,

活用:

rpm  -qa  |  grep  mail   ---抓取查看指定包是否安装过

rpm -qf  文件名  --查询指定的文件所属的包名

rpm -ql  包名    --查询指定包所包含的所有文件

对未安装包的查询:rpm -qpl

rpm -qpl  包名  --查询指定包所包含的所有文件

-p 参数要求指定的包名中有.rpm后缀。

2.安装 -i 安装  -v 冗余显示  -h 以#显示安装进度

rpm  -i

rpm  -ivh  dhcp-XXX.rpm   软件安装,需要.rpm后缀  -i 安装  -v 冗余显示  -h 以#显示安装进度

有些软件安装时需要安装软件包的依赖软件包

 

3.删除 rpm -e

rpm  -e  删除软件

1、删除时指定的软件包名字已经被安装到系统上的,所以没有.rpm后缀。

2、有软件包依赖要删除的软件包时,先删除依赖的软件包(也可以一起删除),不建议单独删除被依赖的软件包,这回导致依赖的软件包全部或部分功能不能使用。

rpm  -e  gcc   卸载

 

4.升级 rpm -Fvh   dhcp-XXX.rpm  

rpm  -Fvh   dhcp-XXX.rpm    ---F FRESH 更新软件,若系统内未装过该包,则不安装

rpm  -Uvh   dhcp-XXX.rpm    ---升级或安装,不管原先是否装过,都装包

注:只有在安装相关时才会使用包名,在查询、卸载等操作时,只用软件名即可

7.yum安装功能:

安装某个软件包时,可能会被提示,需要先安装多个前提包,称为依赖关系使用yum安装可以解决软件的依赖关系安装

8.yum配置文件.repo

1.库解释

每个文件中都有很多库,库和库的名字不能重复

1、[名字]

2、名字

3、库的镜像:去镜像网站下载

4、baseur*库的具体位置可以是网上(协议)也可以是本地(file)

5、校验码启不启用

6、*库是否激活(先查找激活的在查找未激活的,查找到第一个enable=1时如果没有直接报错不会在往下寻找)不加enable=0缺省等于1 处于激活状态

7、校验码

2.配置yum环境 挂载光盘  安装GCC等编译器

注意 需要联网下载yum包时  恢复原来配置即可   增加连网的网卡 网络适配器  下载

 

挂载光盘 配置yum

mkdir -p /media/cdiso

cd /etc/yum.repos.d/

cp CentOS-Base.repo  CentOS-Base.repo.bak

vim CentOS-Base.repo

 

[base]

name=CentOS-$releasever - Base

baseurl=file:///media/cdiso

gpgcheck=0

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

 

mount /dev/sr0 /media/cdiso/

yum -y install gcc gcc-c++ make popt-devel kernel-devel openssl-devel--安装GCC编译器

 

 

 

####

目录下有许多.repo文件 需要将其他改名只留一个文件,对其进行配置。

cd  /etc/yum.repos.d/    ---进入域名配置文件的固定路径

mkdir  backup

mv  CentOS-*  backup    ---备份原有文件

vi  cdrom.repo    ---创建自定义的配置文件,注:文件名自定义,但后缀必须是.repo

[cdrom]    ---建立标签,自定义

name=local cdrom   ---给本项起名,自定义

baseurl=file:///media    ---指定所有包的存放位置,file协议是磁盘分区上查找文件的协议

enabled=1    ---启用本项,若=0 则是关闭本项

gpgcheck=0   ---关闭数字验证

 

yum  -y  install   mysql-connector-java   ---安装+软件包,自动解决依赖关系

yum  list   ---查看所有可用源中都有哪些安装包,可以配合grep抓取

yum  search  dhcp   ---查看可用源中有无指定的包

yum  remove  mysql-connector-java    ---卸载指定包,不会卸载依赖包

yum  history   ---查看yum安装历史日志

yum  makecache   ---重建缓存。有时做了yum配置更改后,未能生效,可能是原设置在内存缓存中未能更新

yum  update    ---升级所有已安装的包

yum  update  kernel   ---升级系统内核

yum provides 文件名    --查找包含指定文件名的包

9.源码包软件的安装

一般软件开发公司,开发的Linux版的软件,制作的安装包并未制作成rpm格式的包,而是制作成源码格式

源码包,一般由众多的源码程序、文件、脚本组成

10.查看进程所访问的设备、文件lsof  fuser

lsof   ---显示所有正在访问设备、文件的进程

lsof  -u  zhang   ---显示以指定用户启动的进程及访问的设备、文件

lsof  -c  vi   ---查看指定进程正在访问的设备、文件

lsof  -p  7207  ---查看指定PID的进程正在访问的设备、文件

lsof  -i:22   ---查看指定端口正在被哪些进程监听、访问

fuser  -au  /tmp/.f1.swp    ---查看指定文件、设备正在被哪个用户及其进程访问,编辑文件时的临时文件是 .文件名.swp

fuser  -kau  /tmp/.f1.swp   ---杀死正在访问指定文件、设备的用户进程

1.tar解压源码包

wget  下载的url   ---下载软件

一般下载到 .tar.gz 或 .tgz 后缀的的包,说明是源码包,且是一个压缩的包

1、.tar结尾的包:

tar  -xvf 包名.tar    --把包解开,文件放当前目录下。

 

2、.tar.gz结尾的包

tar  -zxvf  XXXX.tar.gz    ---解压缩,解压后会创建新的文件夹,存放加压后的文件

 

3 、.tar.bz2结尾的文件

tar  -jxvf 包名.tar.bz2    --把包解开,文件放当前目录下

 

4、 .tar.xz结尾的包

tar -Jxvf 包名.tar.xz

2.安装和编译 ./configure & mkae & make install

cd  XXX   ---进入解压后的目录

ls   ---查看目录下内容

阅读说明文件: README     INSTALL  之类的的文件,按照文件说明的方式去安装。

 

情况一:

会发现有一个叫  install.pl 的可执行程序,这就是安装脚本

./install.pl    ---运行安装脚本,安装软件

 

情况二:

会发现有一个叫 configure 的可执行程序,说明这个源码包是一个未做编译过的包

步骤:

./configure   ---运行程序,检查安装环境,即当前系统是否符合安装该软件的前提,报错会有Error或warning提示需要安装对应的开发软件包

make   ---编译本包

make  install  ---安装软件

或者可以:./configure  &&  make  &&  make  install    ---把三个命令连接执行

 

 

源代码包安装后,缺省存放在/usr/local/bin目录下

作业:

源码安装rlwrap软件

1、使用rpm命令安装 numactl-2.0.9-7.el7.x86_64.rpm  软件包

2、配置yum使用OS盘,用yum安装gcc-c++-4.8.5-36.el7.x86_64.rpm 软件包

3、源代码安装Python3.7.2软件。

linux的软件管理的rpm包和yum配置加tar解压包和安装编译./configuer的更多相关文章

  1. tar解压包的时候出现错误 gzip: stdin: not in gzip format

    在Linux环境下,通过tar -zxvf 命令解压文件时遇到”gzip: stdin: not in gzip format“等错误:如图所示 root@cmfchina:/usr/java# ta ...

  2. 使用secureCRT和Telnet将文件压缩导出到Ubuntu中,到Ubuntu中加压缩发现:tar解压包的时候出现错误gzip: stdin: not in gzip format tar: Child returned status 1 tar: Error is not recoverable: exiting now

    细节描述: 问题如题所示:查找博客园和CSDN上查找问题,得到问题解决方法大致如下: 1 修改解压缩命令: 由 tar zxvf software_package.tar.gz变为tar xvf so ...

  3. Linux离线包管理器RPM

    Linux离线包管理器RPM RPM 是RedHat Package Manager(RedHat软件包管理工具). 1.rpm常用参数介绍 查看rpm是否安装 rpm -q rpm包名 [root@ ...

  4. 网卡配置文件详解 用户管理与文件权限篇 文件与目录权限 软连接 tar解压命令 killall命令 linux防火墙 dns解析设置 计划任务crond服务 软件包安装 阿里云 yum源 安装

    Linux系统基础优化及常用命令 Linux基础系统优化 引言没有,只有一张图. Linux的网络功能相当强悍,一时之间我们无法了解所有的网络命令,在配置服务器基础环境时,先了解下网络参数设定命令. ...

  5. linux下安装rar解压包

    直接解压时出现的问题如下 原因:使用rar命令需要安装WinRAR 1.在本机下载好解压,然后将解压包拖到linux上 2.进行安装,在rar目录想直接make

  6. Kali Linux解压包命令:

    Kali Linux解压包命令: tar.gz格式压缩包: root@kali:~# tar -xzvf 压缩包.tar.gz -C /root/home/Desktop root@kali:~# c ...

  7. linux tar 解压命令总结

    把常用的tar解压命令总结下,当作备忘: tar -c: 建立压缩档案 -x:解压 -t:查看内容 -r:向压缩归档文件末尾追加文件 -u:更新原压缩包中的文件 这五个是独立的命令,压缩解压都要用到其 ...

  8. MySQL解压包的安装教程

    一.下载MySQL解压包 解压过的文件夹里面是没有 data 文件夹的. 二.创建文件 1.在根目录下创建 my.ini文件 内容如下: [mysqld] # 设置mysql的安装目录 basedir ...

  9. 转载:linux tar 解压命令总结

    把常用的tar解压命令总结下,当作备忘: tar -c: 建立压缩档案 -x:解压 -t:查看内容 -r:向压缩归档文件末尾追加文件 -u:更新原压缩包中的文件 这五个是独立的命令,压缩解压都要用到其 ...

随机推荐

  1. PE文件格式详解(一)

    PE文件格式介绍(一) 0x00 前言 PE文件是portable File Format(可移植文件)的简写,我们比较熟悉的DLL和exe文件都是PE文件.了解PE文件格式有助于加深对操作系统的理解 ...

  2. WPF中国地图

    实现鼠标移动到某个地区显示Popup弹框 1,地图 <Grid Margin="0,0,0,0" Grid.Row="1"> <Path St ...

  3. 李航统计学习方法(第二版)(十):决策树CART算法

    1 简介 1.1 介绍 1.2 生成步骤 CART树算法由以下两步组成:(1)决策树生成:基于训练数据集生成决策树,生成的决策树要尽量大;(2)决策树剪枝:用验证数据集对己生成的树进行剪枝并选择最优子 ...

  4. 【Nginx】面试官竟然问我Nginx如何生成缩略图,还好我看了这篇文章!!

    写在前面 今天想写一篇使用Nginx如何生成缩略图的文章,想了半天题目也没想好,这个题目还是一名读者帮我起的.起因就是这位读者最近出去面试,面试官正好问了一个Nginx如何生成缩略图的问题.还别说,就 ...

  5. spring security简单登录的认证

    一.思路 1.先导入相关配置(使用spring security校验之后,登录拦截的配置) 2.创建一个 WebSecurityConfig 继承 WebSecurityConfigurerAdapt ...

  6. 将终结点图添加到你的ASP.NET Core应用程序中

    在本文中,我将展示如何使用DfaGraphWriter服务在ASP.NET Core 3.0应用程序中可视化你的终结点路由.上面文章我向您演示了如何生成一个有向图(如我上篇文章中所示),可以使用Gra ...

  7. UC 网盘:我又回来了

    普通用户不限速下载,免费 10GB 空间,支持离线下载 这个域名非常厉害,某里挑选域名果然是值得称赞的.直接使用手机号即可注册登录,默认赠送 10GB 空间.不过目前好像没看到有电脑客户端,电脑上下载 ...

  8. scratch编程体感游戏

    体感游戏有很多种,最常见的就是摄像头和声控了,今天我们要用scratch编写一系列的体感游戏!!!是不是很激动呢? 首先我们来编摄像头类的: No.1拳头打幽灵 挥动头就能打到幽灵了哟! 具体程序如下 ...

  9. 使用 Github Actions 自动部署 Angular 应用到 Github Pages

    前言 最近在学习 Angular,一些基础的语法也学习的差不多了,就在 github 上新建了一个代码仓库,准备用 ng-zorro 搭个后台应用的模板,方便自己以后写些小东西时可以直接使用.前端项目 ...

  10. 设计模式:composite模式

    目的:使容器和内容具备一致性 实现:将对象组合成树形结构以表示“部分-整体”的层次结构 实例:文件夹中可以包含文件夹也可以包含文件 例子: class Item //接口定义 { public: vi ...