Linux中应用程序的安装和管理程序

简介: Linux中应用程序的安装和管理程序

一、应用程序与命令系统的关系


image.png

二、典型应用程序的目录结构


image.png

三、常见的软件包封装类型


image.png

四、RPM软件包管理工具


4.1RPM概述


RPM软件包管理器Red-Hat package Manage


由Red Hat公司提出, 被众多Linux发行版所采用

建立统一的文件数据库

详细记录软件包安装、卸载、升级等变化信息

自动分析软件包依赖关系

保持各应用程序在一个协调、有序的整体环境中允许

4.2RPM命令的功能


rpm命令能够实现几乎所有对RPM软件包的管理功能

执行"man rpm"命令可以获得关于rpm命令的详细帮助信息

查询、验证RPM软件包的相关信息

安装、升级、卸载RPM软件包

维护重建RPM数据库信息等综合管理操

查询已安装的RPM软件信息

格式:rpm -q[子选项] [软件名]
[root@localhost opt]# rpm -q python
python-2.7.5-76.el7.x86_64
[root@localhost opt]# rpm -q elinks lynx
未安装软件包 elinks 
未安装软件包 lynx 
[root@localhost opt]#

常用选项

-qa 当前系统已安装的软件包查询

-qi 查看已安装的指定软件的详细信息 --info

-ql 查看已安装的指定软件包在当前系统中安装的所有目录 --list

-qc 查看已安装的指定软件的配置文件

-qd 列出已安装的指定软件的软件包文档所在位置

-qR 列出已安装的指定软件的依赖的软件包及文件

-qf 反向查看已安装的指定的文件或目录属于哪个安装包 --file

-qF 查询已安装的指定软件属于哪个安装包

查询未安装的RPM软件信息

格式: rpm -qp[子选项] rpm包文件


常用选项

-qpi 查询指定软件包的详细信息

-qpl 查询指定软件包的准备要安装的所有目录及文件列表

-qpc 查询指定软件包的配置文件

-qpd 查询指定软件包的软件包文档的位置


五、安装、升级、卸载RPM包


挂载

什么是挂载? 将硬件(比如:光盘,光驱等)挂载在目录上使用,变成文件。


mount: 你的包在你的光驱里并没有放在系统中,光盘的包只有挂载在光盘到我的系统

umount:解挂载,跟着硬件设备走,不再挂的文件下

image.png


查询挂载:df -h

格式:
rpm [选项]  RPM软件包
rpm -ivh   RPM软件包       #安装软件包,install
rpm -evh   RPM软件包       #卸载软件包

常用选项

-i 安装一个新的RPM软件包。

-U 升级某个软件包,若未安装过,则进行安装。

-F 升级某个软件包,若未安装过,则放弃安装。

-h 在安装或升级软件包的过程中,以“#”号 显示安装进度。

-v 显示软件安装过程中的详细信息。

–force 强制安装某个软件包,比如要安装版本更旧的软件包

-e 卸载指定名称的软件包

–nodeps 在安装或升级、卸载一个软件包时,不检查与其他软件包的依赖关系

例如:

1、需要依赖别的包,所以安装不成功

image.png

2、安装成功

image.png

3、查询是否已安装

image.png

4、卸载

image.png


六、yum源代码编译安装


1、什么是yum


yum( Yellow dog Updater, Modified)是一个在 Fedora 和 RedHat 以及 SUSE 中的Shell 前端软件包管理器

基于 RPM 包管理,能够从指定的服务器自动下载 RPM

包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。

yum 提供了查找、安装、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。

1、yum和rpm的区别


yum安装源代码软件包需要编译安装,需要安装支持c和c++程序语言的编译器,如gcc、gcc-c++、make。

如果使用rpm方式安装,则需要先安装多个依赖包,这样会很繁琐。这里可以使用 yum方式进行一键安装

2、yum格式

yum [可选项] [要进行的操作] [安装包名 ...]

2、常用的yum命令

yum check-update //列出所有可更新的软件清单命令


yum update //更新所有软件命令


yum install <package_name> //仅安装指定的软件命令


yum update <package_name> //仅更新指定的软件命令


yum list // 列出所有可安裝的软件清单命令


yum remove <package_name> //删除软件包命令


yum search 查找软件包命令


清除缓存命令:

yum clean packages //清除缓存目录下的软件包

yum clean headers // 清除缓存目录下的 headers

yum clean oldheaders //清除缓存目录下旧的 headers

yum clean, yum clean all (= yum clean packages; yum clean oldheaders)


3、配置本地yum源仓库

mount /dev/cdrom /mnt/ #把光盘挂载到/mnt目录下 (前提把虚拟机光盘选项勾选已连接)

挂载 设备 目录或文件夹

mount:挂载,你的包在你的光驱里并没有放在系统中,光盘的包只有先挂载在光盘到我的系统

什么是挂载:将硬件,比如光盘、光驱等,挂载在目录上使用,变成文件

unmount:解挂载,跟着硬件设备走,不在挂在的文件下

**df -h:**查看挂载

一个挂载点同一时只能挂载一个设备

实操:

1.挂载并查看是否成功

[root@localhost ~]# mount /dev/sr0 /mnt/    //写保护,将以只读的方式挂载,挂载到/mnt目录下
[root@localhost ~]# df -Th  #查看挂载

2.切换至yum.repo.d目录,新建一个文件夹,再将自带的仓库移走

[root@localhost ~]# cd /etc/yum.repos.d/      //切换至cd /etc/yum.repos.d/ 
[root@localhost yum.repos.d]# mkdir beifen   //创建一个文件夹,名为beifen
[root@localhost yum.repos.d]# mv *.repo beifen/   //把自带的仓库以.repo结尾的移到新建的beifen文件夹下

3.新建yum仓库文件

[root@localhost yum.repos.d]# vim yxp.repo //新建yum仓库文件
[song]
name=song  //名字任取
baseurl=file:///mnt  //设置链接地址,file://是固定格式,挂在根目录下的mnt
enabled=1  //开机自启
gpgcheck=0  //无需验证
[root@localhost yum.repos.d]# yum list 
[root@localhost yum.repos.d]# yum clean all //清除缓存

4.尝试安装

image.png

相关文章
|
8天前
|
Linux 网络安全 Python
linux centos上安装python3.11.x详细完整教程
这篇文章提供了在CentOS系统上安装Python 3.11.x版本的详细步骤,包括下载、解压、安装依赖、编译配置、解决常见错误以及版本验证。
63 1
linux centos上安装python3.11.x详细完整教程
|
28天前
|
安全 Linux Shell
Linux上执行内存中的脚本和程序
【9月更文挑战第3天】在 Linux 系统中,可以通过多种方式执行内存中的脚本和程序:一是使用 `eval` 命令直接执行内存中的脚本内容;二是利用管道将脚本内容传递给 `bash` 解释器执行;三是将编译好的程序复制到 `/dev/shm` 并执行。这些方法虽便捷,但也需谨慎操作以避免安全风险。
|
4天前
|
Ubuntu Linux 网络安全
从头安装Arch Linux系统
本文记录了作者安装Arch Linux系统的过程,包括安装成果展示和遇到的疑难点及其解决方法,如硬盘不足、下载失败、设置时区、安装微码和配置无密码登录等。
从头安装Arch Linux系统
|
6天前
|
关系型数据库 MySQL Linux
Linux 安装 mysql 【使用 tar.gz | tar.xz安装包-离线安装】
在Linux系统中使用tar.xz压缩包安装MySQL数据库的详细步骤。包括下载MySQL压缩包,解压到指定目录,创建mysql用户和组,设置目录权限,初始化MySQL,配置my.cnf文件,启动服务,以及修改root用户密码。此外,还提供了如何设置Windows远程登录MySQL服务器的方法。
Linux 安装 mysql 【使用 tar.gz | tar.xz安装包-离线安装】
|
6天前
|
消息中间件 分布式计算 Java
Linux环境下 java程序提交spark任务到Yarn报错
Linux环境下 java程序提交spark任务到Yarn报错
17 5
|
7天前
|
Linux
linux之etcd安装
linux之etcd安装
|
6天前
|
关系型数据库 MySQL Linux
Linux 安装 mysql【使用yum源进行安装】
这篇文章介绍了在Linux系统中使用yum源安装MySQL数据库的步骤,包括配置yum源、安装MySQL服务、启动服务以及修改root用户的默认密码。
Linux 安装 mysql【使用yum源进行安装】
|
8天前
|
NoSQL Linux Redis
linux安装单机版redis详细步骤,及python连接redis案例
这篇文章提供了在Linux系统中安装单机版Redis的详细步骤,并展示了如何配置Redis为systemctl启动,以及使用Python连接Redis进行数据操作的案例。
19 2
|
1月前
|
NoSQL 关系型数据库 Redis
mall在linux环境下的部署(基于Docker容器),Docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongo
mall在linux环境下的部署(基于Docker容器),docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongodb、minio详细教程,拉取镜像、运行容器
mall在linux环境下的部署(基于Docker容器),Docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongo
|
8天前
|
NoSQL Linux Redis
linux之centos安装redis
linux之centos安装redis
下一篇
无影云桌面