Linux——软件管理

目录

Linux应用程序基础

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

典型应用程序的目录结构

常见的软件包封装类型

RPM包管理机制

使用YUM源

使用YUM源管理软件的步骤

1、配置YUM源配置文件

2、清空YUM源缓存    yum clean  all

3、安装软件               yum install httpd

基本 yum 命令

使用yum命令安装本地rpm包

使用第三方 Yum

RPM包管理命令 —— rpm

查询RPM软件信息

查询已安装的RPM软件信息

查询未安装的RPM包文件

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

卸载指定的RPM软件

源代码编译概述

源码编译安装的基本过程

1. 解包

2. 配置

3. 编译

4. 安装


Linux应用程序基础

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

文件位置  

  • 系统命令:一般在/bin和/sbin目录中,或为Shell内部指令  
  • 应用程序:通常在/usr/bin和/usr/sbin目录中

主要用途  

  • 系统命令:完成对系统的基本管理工作,例如IP配置工具  
  • 应用程序:完成相对独立的其他辅助任务,例如网页浏览器

适用环境  

  • 系统命令:一般只在字符操作界面中运行  
  • 应用程序:根据实际需要,有些程序可在图形界面中运行

运行格式  

  • 系统命令:一般包括命令字、命令选项和命令参数  
  • 应用程序:通常没有固定的执行格式

典型应用程序的目录结构

常见的软件包封装类型

RPM包管理机制

RPM Package Manager 由Red Hat公司提出,被众多Linux发行版所采用。建立统一的数据库文件,详细记录软件包安装、卸载等变化信息,能够自动分析软件包依赖关系。

RPM软件包 软件素材参考:http://rpmfind.net

一般命名格式:

使用YUM源

使用YUM源管理软件的方式

  • 图形界面——添加删除软件工具
  • 命令行——yum命令

使用YUM源管理软件的前提:配置YUM源配置文件

使用YUM源管理软件的步骤

1、配置YUM源配置文件

存放目录/etc/yum.repos.d 命名规则***.repo,

如:dvd.repo 文件格式示例:

[dvd]

Enabled=1

name=dvd

baseurl=http://instructor.example.com/pub/rhel6/dvd

baseurl=file:///mnt/dvd

gpgcheck=0

2、清空YUM源缓存    yum clean  all

3、安装软件               yum install httpd

Yum 是一个强大的命令行工具,可用于更加灵活的管理(安装,更新,删除,查询)软件包。

基本 yum 命令

1.yum help 显示使用信息

2.yum list   列出软件包

3.yum search keyword   搜索关键字

4.yum info packagename  列出软件包详细信息

5.yum install packagename  安装软件包

6.yum remove packagename 删除软件包

7.yum update packagename   升级软件包

管理 yum 组件组

1.yum grouplist         列出所有可用组

2.yum groupinfo        提供特定组的信息

3.yum groupinstall     安装软件包组

4.yum groupupdate   更新软件包组

5.yum grouperase     删除软件包组

使用yum命令安装本地rpm包

yum  localinstall  ***.rpm

使用第三方 Yum

将文件放到 /etc/yum.repos.d/ 目录中,可以启用对新的第三方存储库的支持,存储库配置文件必须以.repo结尾。

配置文件示例  /etc/yum.repos.d/updates.repo

[updates] name=Red Hat Updates

baseurl=ftp://instructor.example.com/pub/rhel6/Errata

enabled=1

gpgcheck=0

RPM包管理命令 —— rpm

主要功能

  • 1. 查询RPM软件、包文件的相关信息
  • 2. 安装、升级、卸载RPM软件包
  • 3. 维护RPM数据库信息

查询RPM软件信息

查询已安装的RPM软件信息

格式:rpm  -q[子选项]  [软件名]

用法:结合不同的子选项 完成不同查询  

-qa:查看系统中已安装的所有RPM软件包列表  

-qi:查看指定软件的详细信息

-ql:查询指定软件包所安装的目录、文件列表

-qc:仅显示指定软件包安装的配置文件  

-qd:仅显示指定软件包安装的文档文件

查询文件/目录属于哪个RPM软件 格式:rpm  -qf  文件或目录名

ex:

# 查询是否已安装有bash软件包

[root@localhost ~]# rpm -q

bash bash-3.1-16.1

[root@localhost ~]# rpm -qa | grep bash

bash-3.1-16.1

# 查询vim是由哪个软件包安装的

[root@localhost ~]# rpm -qf /usr/bin/vim

vim-enhanced-7.0.109-3

# 查询dhcp软件包安装的文件列表

[root@localhost ~]# rpm -ql dhcp

/etc/dhcpd.conf

/etc/rc.d/init.d/dhcpd

查询未安装的RPM包文件

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

用法:结合不同的子选项 完成不同查询  

-qpi:通过.rpm包文件查看该软件的详细信息  

-qpl:查看.rpm安装包内所包含的目录、文件列表  

-qpc:查看.rpm安装包内包含的配置文件列表  

-qpd:查看.rpm安装包内包含的文档文件列表

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

安装或升级RPM软件

格式:rpm  [选项]  RPM包文件...

用法:不同选项适用于不同情况  

-i:安装一个新的rpm软件包  

-U:升级某个rpm软件,若原本未装,则进行安装  

-F:更新某个rpm软件,若原本未装,则放弃安装

卸载指定的RPM软件

格式:rpm  -e  软件名

辅助选项

--force:强制安装所指定的rpm软件包

--nodeps:安装、升级或卸载软件时,忽略依赖关系

-h:以“#”号显示安装的进度

-v:显示安装过程中的详细信息

ex: rpm -ivh lynx-2.8.5-28.1.i386.rpm

        rpm -Uvh /media/cdrom/wget-1.10.2-7.el5.i386.rpm

源代码编译概述

使用源代码安装软件的优点

  • 获得最新的软件版本,及时修复bug
  • 根据用户需要,灵活定制软件功能

应用场合举例

  • 安装较新版本的应用程序时(自由软件的最新版本大都以源码的形式最先发布)
  • 当前安装的程序无法满足需要时(编译安装可由用户自行修改、定制功能)
  • 需要为应用程序添加新的功能时(用户可以重新配置、自由修改源代码,加入新的功能)

Tarball 封包: .tar.gz 和 .tar.bz2 格式居多 软件素材参考:http://sourceforge.net

确认源代码编译环境

需安装支持 C/C++程序语言的 编译器

 gcc-4.1.1-52.el5、gcc-c++-4.1.1-52.el5  make-3.81-1.1.i386 ……

源码编译安装的基本过程

解包 —— tar 解包、释放出源代码文件

配置 —— ./configure 针对当前系统、软件环境,配置好安装参数

编译 —— make 将源代码文件变为二进制的可执行程序

安装 —— make install 将编译好的程序文件复制到系统中

1. 解包

习惯上将软件包释放到 /usr/src/ 目录

解包后的源代码文件位置:  /usr/src/软件名-版本号/

2. 配置

需将工作目录切换到软件源码所在目录

使用源码目录中的 configure 脚本 执行“./configure --help” 可以查看帮助

典型的配置选项:  --prefix=软件安装目录

3. 编译

执行 make 命令

4. 安装

执行 make install 命令

这两个步骤可以合写为一行: make && make install

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/786969.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【随笔】Git -- 高级命令(下篇)(八)

💌 所属专栏:【Git】 😀 作  者:我是夜阑的狗🐶 🚀 个人简介:一个正在努力学技术的CV工程师,专注基础和实战分享 ,欢迎咨询! 💖 欢迎大…

ConcurrentHashMap线程安全机制

put源码: public V put(K key, V value) {return putVal(key, value, false); }/** Implementation for put and putIfAbsent */ final V putVal(K key, V value, boolean onlyIfAbsent) {if (key null || value null) throw new NullPointerException();int has…

vue快速入门(二)安装vue调试插件

教程很详细,直接上过程 上一篇 新增内容 在国内网站下载谷歌插件安装插件 点击跳转极简插件 此处我们以Chrome浏览器为例 到这里我们就成功安装了插件 使用上一篇博客的代码在浏览器F12调试一下 这样就可以使用了!!!

云原生时代来了,遗留的虚拟机怎么办?红帽 OpenShift 虚拟化实现“稳敏兼得”

作者 | 宋慧 出品 | CSDN 从云原生、容器、微服务,到现在大热的 AIGC、GPU,越来越多的技术与架构正在进入数据中心与基础设施中,以服务数字化转型中的创新业务与应用。在成熟虚拟化传统(稳态)业务和容器、新&#xff…

Vue-05

v-model 应用于其他表单元素 常见的表单元素都可以用v-model绑定关联 → 快速获取或设置表单元素的值 它会根据控件类型自动选取正确的方法来更新元素 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name…

【PFA树脂交换柱】实验室高纯PFA材质过滤柱耐受电子级氢氟酸含氟树脂层析柱

PFA离子交换柱&#xff0c;也叫PFA层析柱、PFA过滤柱等&#xff0c;其原理是利用吸附剂对不同化合物有不同吸附作用和不同化合物在溶剂中的不同溶解度&#xff0c;用适应溶剂使混合物在填有吸附剂的柱内通过&#xff0c;使复杂的混合物达到分离和提纯的目的。 柱体为透明PFA材…

Centos7 elasticsearch-7.7.0 集群搭建,启用x-pack验证 Kibana7.4用户管理

前言 Elasticsearch 是一个分布式、RESTful 风格的搜索和数据分析引擎&#xff0c;能够解决不断涌现出的各种用例。 作为 Elastic Stack 的核心&#xff0c;它集中存储您的数据&#xff0c;帮助您发现意料之中以及意料之外的情况。 环境准备 软件 …

【Linux】自定义协议+序列化+反序列化

自定义协议序列化反序列化 1.再谈 "协议"2.Cal TCP服务端2.Cal TCP客户端4.Json 喜欢的点赞&#xff0c;收藏&#xff0c;关注一下把&#xff01; 1.再谈 “协议” 协议是一种 “约定”。在前面我们说过父亲和儿子约定打电话的例子&#xff0c;不过这是感性的认识&a…

Kafka入门到实战-第二弹

Kafka入门到实战 Kafka快速开始官网地址Kafka概述Kafka术语Kafka初体验更新计划 Kafka快速开始 官网地址 声明: 由于操作系统, 版本更新等原因, 文章所列内容不一定100%复现, 还要以官方信息为准 https://kafka.apache.org/Kafka概述 Apache Kafka 是一个开源的分布式事件流…

【SQL Server】2. 将数据导入导出到Excel表格当中

最开始&#xff0c;博主介绍一下自己的环境&#xff1a;SQL Sever 2008 R2 SQL Sever 大致都差不多 1. 通过自带软件的方式 首先找到下载SQL Sever中提供的导入导出工具 如果开始界面没有找到自己下载的路径 C:\Program Files\Microsoft SQL Server\100\DTS\Binn下的DTSWiz…

整理开源资源:零代码开发灵魂——逻辑引擎,收藏吧

逻辑配置是零代码开发的业务核心功能&#xff0c;本质上是实现服务的编排&#xff0c;把原子的服务通过可视化编排&#xff0c;形成最终的业务逻辑。 经过小编的精心整理&#xff0c;把相关的资源全部汇总起来&#xff0c;收藏吧&#xff01; Drawflow 拖动节点多路输入/输出…

增强Java技能:使用OkHttp下载www.dianping.com信息

在这篇技术文章中&#xff0c;我们将探讨如何使用Java和OkHttp库来下载并解析www.dianping.com上的商家信息。我们的目标是获取商家名称、价格、评分和评论&#xff0c;并将这些数据存储到CSV文件中。此外&#xff0c;我们将使用爬虫代理来绕过任何潜在的IP限制&#xff0c;并实…

python3内置持久化模块shelve心得

python3内置持久化模块shelve心得 来自python官方网站的解释&#xff1a; https://docs.python.org/zh-cn/3.10/library/shelve.html 本文环境&#xff1a; Windows 10 专业版 64 位 Thonny 3.2.6 概述 内置模块 shelve 可以将任意 Python 对象&#xff08;即 https://docs…

基于FPGA的HDMI视频接口设计

HDMI介绍 HDMI(High-DefinitionMultimedia Interface)又被称为高清晰度多媒体接口,是首个支持在单线缆上传输,不经过压缩的全数字高清晰度、多声道音频和智能格式与控制命令数据的数字接口。HDMI接口由Silicon Image美国晶像公司倡导,联合索尼、日立、松下、飞利浦、汤姆逊、东…

LLM面面观之MoE

1. 背景 根据本qiang~最新的趋势观察&#xff0c;基于MoE架构的开源大模型越来越多&#xff0c;比如马斯克的Grok-1(314B), Qwen1.5-MoE-A2.7B等&#xff0c;因此想探究一下MoE里面的部分细节。 此文是本qiang~针对大语言模型的MoE的整理&#xff0c;包括原理、流程及部分源码…

Mybatis——查询数据

查询操作 根据用户id查询单条记录&#xff0c;在映射器接口(UserMapper)中定义如下方法&#xff1a; package org.example.mapper;import org.example.demo.User;import java.util.List;public interface UserMapper {//根据id查询UserUser selectUserById(Integer userId); …

stable diffusion 的 GPU 不足怎么解决

稳定扩散&#xff08;stable diffusion&#xff09;是一种用于图像处理和计算机视觉任务的图像滤波算法。 当使用Stable Diffusion过程中遇到GPU显示内存不足的问题时。解决这个问题的方法有以下几种&#xff1a; 目前&#xff0c;对我来说&#xff0c;就最后一点能够暂时解决当…

GaussDB云数据库极简版安装与使用-新手指南

一、前言 作为一款领先的企业级数据库管理系统&#xff0c;GaussDB 提供了强大的性能、高度可靠性和丰富的功能&#xff0c;是企业构建可靠、高性能的数据库解决方案的理想选择。 本文主要针对高校和个人测试环境&#xff0c;介绍极简版安装和使用过程&#xff0c;更加适合高…

SwiftUI Swift 选择图片 添加图片

1. 添加记帐时添加图片功能 2. Show me the code // // TestPhotoPicker.swift // pandabill // // Created by 朱洪苇 on 2024/3/30. //import SwiftUI import PhotosUI import Foundationstruct TestPhotoPicker: View {State private var selectedItem: PhotosPickerIt…

Php_Code_challenge12

题目&#xff1a; 答案&#xff1a; 解析&#xff1a; 字符串拼接。