Linux 命令安装
系列文章目录
` 提示:仅用于个人学习,进行查漏补缺使用。
1.Linux介绍、目录结构、文件基本属性、Shell
2.Linux常用命令
3.Linux文件管理
4.Linux 命令安装
提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档
前言
提示:这里可以添加本文要记录的大概内容:
本章内容有:
1.程序发布流程
2.Linux软件安装
3.rpm安装
4.yum安装
5.源码安装httpd
…
提示:以下是本篇文章正文内容,下面案例可供参考
一、程序发布过程(简略)
- 代码编写
- 编译、打包(例:war jar)
- 安装、运行(启一个进程—>代码运行起来,实现其定义的功能)
- 发布
二、Linux软件包安装
- 源码安装
- 源码安装是指从软件的源代码开始,通过编译和安装过程,最终得到可执行的二进制文件。这种安装方式提供了最大的灵活性和定制性,但也需要用户具备一定的编程知识和技能。以下是源码安装的基本步骤:
1. 获取源代码:首先,用户需要获取软件的源代码。这通常通过下载源代码包或使用版本控制系统(如Git)来完成。
2. 编译前准备:在编译之前,用户可能需要安装编译工具和必要的依赖库。这些依赖库是软件在编译过程中所依赖的。
3. 配置:通常,源代码包会包含一个configure脚本,用于检测系统的环境和设置安装选项。用户可以通过运行./configure脚本来配置安装路径、启用或禁用特定功能等。
4. 编译:运行make命令来编译源代码。这一步骤会将源代码转换为可执行文件和其他必要的文件。
5. 安装:使用make install命令将编译好的软件安装到系统中。这通常涉及将文件复制到正确的目录,创建必要的配置文件等。
6. 清理:在安装完成后,用户可能希望运行make clean命令来删除编译过程中产生的临时文件。
- 源码安装是指从软件的源代码开始,通过编译和安装过程,最终得到可执行的二进制文件。这种安装方式提供了最大的灵活性和定制性,但也需要用户具备一定的编程知识和技能。以下是源码安装的基本步骤:
- 工具安装
- 工具安装通常指的是使用包管理器(如apt、yum、dnf等)来安装软件。这些包管理器自动化了软件的获取、编译、安装和依赖管理过程。以下是使用工具安装的一般步骤:
1. 安装包管理器:在Linux系统中,通常默认已经安装了包管理器。如果没有,用户可以通过官方源或第三方源安装。
2. 更新包列表:在使用包管理器之前,通常需要更新软件包列表,以确保获取最新的软件版本和依赖信息。
3. 安装软件包:使用包管理器的命令来安装软件。例如,在Debian和Ubuntu上,用户可以使用apt-get install package-name来安装软件包。
4. 依赖管理:包管理器会自动处理软件的依赖关系,即它会安装编译软件包所需的任何其他软件包。
5. 配置:安装完成后,用户可能需要手动配置软件,这可能包括设置环境变量、创建配置文件等。
6. 启动和停止服务:对于一些服务型软件,用户需要启动和停止相应的服务。
- 工具安装通常指的是使用包管理器(如apt、yum、dnf等)来安装软件。这些包管理器自动化了软件的获取、编译、安装和依赖管理过程。以下是使用工具安装的一般步骤:
- 小结
- 源码安装适合于需要高度定制化或需要修复/修改软件源代码的情况。而工具安装则适合于大多数日常使用场景,尤其是对于非开发者或不愿意深入理解软件编译过程的用户。
三、yum命令
-
yum概述
-
在Linux操作系统中,Yum(Yellowdog Updater, Modified)是一个非常流行的包管理器,主要用于管理RPM包(Red Hat Package Manager)。Yum能够自动地从指定的软件仓库(repositories)中检索、安装、升级、降级和删除软件包。它的设计目的是简化基于RPM的Linux发行版中软件包的管理工作,并确保依赖关系得到正确处理,使得用户可以很容易地维护和更新他们的系统。 -
Yum最初是为Yellowdog Linux设计的,但后来它被广泛应用到了其他基于RPM的Linux发行版中,包括Red Hat Enterprise Linux(RHEL)、CentOS、Fedora等。随着时间的推移,Yum逐渐被DNF(Dandified Yum)取代,后者是Yum的升级版,提供了更高效的性能和更现代化的功能,但在很多系统中,Yum仍然是一个可用的选项。
-
-
yum语法
yum [options] [command] [package ...]
-
**options:**可选,选项包括-h(帮助),-y(当安装过程提示选择全部为 “yes”),-q(不显示安装的过程)等等。
-
**command:**要进行的操作。
-
**package:**安装的包名。
-
常用命令
-
- 列出所有可更新的软件清单命令: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) :清除缓存目录下的软件包及旧的 headers
-
-
案例1:更改yum源为国内阿里云镜像源(外网下载较慢)
- 1.以CenOS7.9为例,到/etc/yum.repos.d目录下创建一个备份目录bak

- 2.将其他文件移动到bak目录下

- ** 3.上传两个文件至当前目录(repos.d)下**

- ** 4.清理yum缓存并重建软件包缓存(保证环境干净无杂留)**

案例2:搭建本地yum仓库
1.查看本地虚拟机设置,确保CD/DCD连接,配置如下:
2.把光盘挂载到/mnt目录下
PS:挂载规则:
- 一个挂载点同一时间只能挂载一个设备
- -个挂载点同一时间挂载了多个设备,只能看到最后一个挂载设备的数据,其它设备上的数据将被隐藏
- 一个设备可以同时挂载到多个挂载点
- 通常挂载点一般是已存在空的目录
3.创建一个备份文件夹

4.将.repo文件移动至刚创建的repobak目录中去
5.创建本地yum目录,以.repo结尾,配置如下:

解释:
6.删除yum缓存并刷新
四、rpm安装
- 概述
- RPM(Red Hat Package Manager)是一种在Linux系统中广泛使用的软件包管理器。它允许用户安装、更新、删除和查询软件包。
- RPM软件包通常是
.rpm格式的文件,它们包含了软件的所有必要组件,如源代码、配置文件、文档等。
RPM(Red Hat Package Manager)是一个软件包管理系统,用于管理和安装、更新和卸载软件包。它主要用于基于Linux的系统,尤其是在使用Red Hat、Fedora、CentOS和其他基于RPM的系统上。
- RPM的特点
- 软件包格式:RPM软件包是
.rpm文件,包含了软件的源代码、文档、配置文件和可执行文件。 - 依赖管理:RPM自动处理软件包之间的依赖关系,确保在安装软件包时所需的依赖软件包也被安装。
- 版本控制:RPM支持版本控制,允许用户安装、更新或卸载不同版本的软件包。
- 简单的查询工具:RPM提供了强大的查询工具,用户可以轻松地查看已安装的软件包、软件包的详细信息以及软件包的依赖关系。
- 语法
- 格式:
rpm [选项] [操作] [软件包]
- 选项:

- 操作:

- 案例
rpm安装mysql
1.查看mysql版本
rpm -qa | grep jdk
2.查询指定的包是否已经安装
rpm -q jdk1.8-1.8.0_171-fcs.x86_64
3.查询软件由哪个rpm包安装
[root@localhost /]# type ifconfig
ifconfig 是 /usr/sbin/ifconfig
[root@localhost /]# rpm -qf /sbin/ifconfig
net-tools-2.0-0.25.20131004git.el7.x86_64
五、源码安装httpd
- 下载源码: 访问Apache HTTP Server的官方网站(http://httpd.apache.org/download.cgi),下载最新的源码包。通常,源码包的文件名格式为
httpd-版本号.tar.gz。

- 准备编译环境: 确保系统已经安装了编译和安装httpd所需的依赖项。通常,这包括
gcc、make、autoconf、libtool和apr(Apache Portable Runtime)库等。

- 解压源码包: 将下载的源码包上传并解压到工作目录中。这里我们放入/opt目录下(一个特殊目录,用于安装可选的或第三方应用程序。)

- 配置和编译: 进入解压后的目录,运行
configure脚本来配置安装。

- 编译源码: 配置完成后,运行``

- 安装httpd: 编译完成后,使用
make install命令来安装httpd。[上题 make install] - 启动httpd服务: 安装完成后,您可以通过运行以下命令来启动httpd服务:

- 配置httpd:


- 测试httpd:

六、小结
- 在Linux中,安装软件通常有多种方法,包括源码安装、使用包管理器(如RPM或YUM)安装。
- 源码安装提供了最大的灵活性和控制权,但过程更为复杂。RPM和YUM安装提供了自动解决依赖关系和统一的管理方式,但可能不如源码安装那样灵活。
- 选择哪种方法取决于具体的企业需求和实际要求。在某些情况下,可能需要结合使用这些方法来满足特定的安装需求。
相关文章:
Linux 命令安装
系列文章目录 提示:仅用于个人学习,进行查漏补缺使用。 1.Linux介绍、目录结构、文件基本属性、Shell 2.Linux常用命令 3.Linux文件管理 4.Linux 命令安装 提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助…...
清华和字节联合推出的视频理解大模型video-SALMONN(ICML 2024)
video-SALMONN: Speech-Enhanced Audio-Visual Large Language Models 论文信息 paper:https://arxiv.org/abs/2406.15704 code:https://github.com/bytedance/SALMONN/ AI也会「刷抖音」!清华领衔发布短视频全模态理解新模型 | ICML 2024 …...
从数据爬取到可视化展示:Flask框架与ECharts深度解析
目录 🔹 Flask框架源码解析 Flask应用初始化路由与视图函数请求与响应中间件 🔹 ECharts可视化精讲 ECharts安装与配置基本图表类型图表样式与交互高级图表配置与数据动态更新实战:结合Flask与ECharts展示爬取数据 Flask框架源码解析 &…...
【jvm】类加载分几步
目录 1. 加载(Loading)2. 链接(Linking)2.1 验证(Verification)2.2 准备(Preparation)2.3 解析(Resolution) 3. 初始化(Initialization࿰…...
使用Apache http client发送json数据(demo)
POM依赖 : <dependency><groupId>org.apache.httpcomponents</groupId><artifactId>httpclient</artifactId><version>4.5.12</version></dependency><dependency><groupId>com.alibaba</groupId&g…...
读零信任网络:在不可信网络中构建安全系统07设备信任
1. 设备信任 1.1. 在零信任网络中建立设备信任至关重要,这也是非常困难的一个环节 1.2. 建立设备信任是基石,直接影响零信任网络架构的成败 1.3. 大多数网络安全事件都和攻击者获得信任设备的控制权相关,这种情况一旦发生,信任…...
【Java算法专场】前缀和(下)
目录 和为 K 的子数组 算法分析 算法步骤 算法代码 算法示例 和可被 K 整除的子数组 算法分析 同余定理 负数取余 算法步骤 算法代码 算法示例 连续数组 算法分析 算法步骤 算法代码 算法示例 矩阵区域和 算法分析 算法步骤 算法代码 算法示例 算法分析 …...
音视频相关文章总目录
为了方便各位观看,本文置顶,以目录形式汇集我写过的大部分音视频专题文章。之后文章更新,本目录也会同步更新。写得不好和零零散散的文章就不放在这里了😅 : 音视频入门基础:像素格式专题系列文章&#x…...
7月31日MySQL学习笔记
今日内容: mysql: 行列转换 数据类型 函数 触发器 存储过程 事务 索引(还没讲) 三范式 JDBC连接数据库的6个步骤 三握四挥 行列转换 第一步 新建要转换的列 select name, 1 as 语文, 1 as 数学, 1 as 英语 from t_score GROUP BY name 第二步 对每一列填入值…...
什么是容器查询?分享 1 段优质 CSS 代码片段!
本内容首发于工粽号:程序员大澈,每日分享一段优质代码片段,欢迎关注和投稿! 大家好,我是大澈! 本文约 700 字,整篇阅读约需 1 分钟。 今天分享一段优质 CSS 代码片段,使用容器查询…...
【linux深入剖析】初识线程---线程概念
🍁你好,我是 RO-BERRY 📗 致力于C、C、数据结构、TCP/IP、数据库等等一系列知识 🎄感谢你的陪伴与支持 ,故事既有了开头,就要画上一个完美的句号,让我们一起加油 目录 1. Linux线程概念什么是线…...
【MySQL】索引——索引的引入、认识磁盘、磁盘的组成、扇区、磁盘访问、磁盘和MySQL交互、索引的概念
文章目录 MySQL1. 索引的引入2. 认识磁盘2.1 磁盘的组成2.2 扇区2.3 磁盘访问 3. 磁盘和MySQL交互4. 索引的概念4.1 索引测试4.2 Page4.3 单页和多页情况 MySQL 1. 索引的引入 海量表在进行普通查询的时候,效率会非常的慢,但是索引可以解决这个问题。 -…...
python部署flask项目
python部署flask项目 1. 准备服务器2. 设置服务器环境3. 创建虚拟环境并安装项目依赖4. 配置Gunicorn5. 配置Nginx6. 设置Supervisor(可选)7. 测试部署 将Flask项目部署到服务器的流程大致如下: 1. 准备服务器 首先,需要准备一台…...
数据建模标准-基于事实建模
前情提要 数据模型定义 DAMA数据治理体系中将数据模型定义为一种文档形式,数据模型是用来将数据需求从业务传递到IT,以及在IT内部从分析师、建模师和架构师到数据库设计人员和开发人员的主要媒介; 作用 记录数据需求和建模过程中产生的数据定义&…...
量产部落SM2258XT开卡软件,SM2258XT主控128G SSD固态卡死修复
故障现象:连接此固态硬盘后电脑就会卡死,拔掉重新连接概率性显示盘符,显示了之后也不能正常操作,一点击打开,电脑就立马卡死。 解决过程:下载了很多款量产工具,都不能开卡成功,点击…...
《零散知识点 · 自定义 HandleMapping》
📢 大家好,我是 【战神刘玉栋】,有10多年的研发经验,致力于前后端技术栈的知识沉淀和传播。 💗 🌻 CSDN入驻不久,希望大家多多支持,后续会继续提升文章质量,绝不滥竽充数…...
谈谈我对微服务的理解2.0
文章目录 一、引出问题二、微服务2-1、微服务的技术2-2、微服务的目的 三、微服务的拆分四、不连表查询五、微服务的好处六、微服务的坏处七、应付当下 这篇文章原本叫《如何做到不连表查询》,因为我对这个事一直耿耿于怀。在上家公司我经常被连表折磨(连…...
ECCV 2024前沿科技速递:GLARE-基于生成潜在特征的码本检索点亮低光世界,低光环境也能拍出明亮大片!
在计算机视觉与图像处理领域,低光照条件下的图像增强一直是一个极具挑战性的难题。暗淡的光线不仅限制了图像的细节表现,还常常引入噪声和失真,极大地影响了图像的质量和可用性。然而,随着ECCV 2024(欧洲计算机视觉会议…...
前端低代码必备:FrontendBlocks 4.0版本重磅发布,助力Uniapp-X原生APP开发
项目介绍 本软件是一款强大的所见即所得前端页面设计器,是低代码开发领域的基础设施,生成的代码不依赖于任何框架,实测可以将前端布局工作的耗时减少80%以上,最关键的是,它实现了人人都可以写前端页面的梦想。 不用写…...
如何将PyCharm 中使用 PDM 管理的 Django 项目迁移到 VS Code 并确保一切正常工作?
嗨,我是兰若姐姐,相信很多小伙伴都遇到过这种情况,使用pycharm用习惯了,想换个编辑器,比如换成vscode,今天就告诉大家,如果轻松切换到vscode 步骤 1:在 VS Code 中打开项目 打开 V…...
Prompt Tuning、P-Tuning、Prefix Tuning的区别
一、Prompt Tuning、P-Tuning、Prefix Tuning的区别 1. Prompt Tuning(提示调优) 核心思想:固定预训练模型参数,仅学习额外的连续提示向量(通常是嵌入层的一部分)。实现方式:在输入文本前添加可训练的连续向量(软提示),模型只更新这些提示参数。优势:参数量少(仅提…...
Auto-Coder使用GPT-4o完成:在用TabPFN这个模型构建一个预测未来3天涨跌的分类任务
通过akshare库,获取股票数据,并生成TabPFN这个模型 可以识别、处理的格式,写一个完整的预处理示例,并构建一个预测未来 3 天股价涨跌的分类任务 用TabPFN这个模型构建一个预测未来 3 天股价涨跌的分类任务,进行预测并输…...
渲染学进阶内容——模型
最近在写模组的时候发现渲染器里面离不开模型的定义,在渲染的第二篇文章中简单的讲解了一下关于模型部分的内容,其实不管是方块还是方块实体,都离不开模型的内容 🧱 一、CubeListBuilder 功能解析 CubeListBuilder 是 Minecraft Java 版模型系统的核心构建器,用于动态创…...
2025 后端自学UNIAPP【项目实战:旅游项目】6、我的收藏页面
代码框架视图 1、先添加一个获取收藏景点的列表请求 【在文件my_api.js文件中添加】 // 引入公共的请求封装 import http from ./my_http.js// 登录接口(适配服务端返回 Token) export const login async (code, avatar) > {const res await http…...
ETLCloud可能遇到的问题有哪些?常见坑位解析
数据集成平台ETLCloud,主要用于支持数据的抽取(Extract)、转换(Transform)和加载(Load)过程。提供了一个简洁直观的界面,以便用户可以在不同的数据源之间轻松地进行数据迁移和转换。…...
tree 树组件大数据卡顿问题优化
问题背景 项目中有用到树组件用来做文件目录,但是由于这个树组件的节点越来越多,导致页面在滚动这个树组件的时候浏览器就很容易卡死。这种问题基本上都是因为dom节点太多,导致的浏览器卡顿,这里很明显就需要用到虚拟列表的技术&…...
Linux 中如何提取压缩文件 ?
Linux 是一种流行的开源操作系统,它提供了许多工具来管理、压缩和解压缩文件。压缩文件有助于节省存储空间,使数据传输更快。本指南将向您展示如何在 Linux 中提取不同类型的压缩文件。 1. Unpacking ZIP Files ZIP 文件是非常常见的,要在 …...
GitFlow 工作模式(详解)
今天再学项目的过程中遇到使用gitflow模式管理代码,因此进行学习并且发布关于gitflow的一些思考 Git与GitFlow模式 我们在写代码的时候通常会进行网上保存,无论是github还是gittee,都是一种基于git去保存代码的形式,这样保存代码…...
实战三:开发网页端界面完成黑白视频转为彩色视频
一、需求描述 设计一个简单的视频上色应用,用户可以通过网页界面上传黑白视频,系统会自动将其转换为彩色视频。整个过程对用户来说非常简单直观,不需要了解技术细节。 效果图 二、实现思路 总体思路: 用户通过Gradio界面上…...
2025年- H71-Lc179--39.组合总和(回溯,组合)--Java版
1.题目描述 2.思路 当前的元素可以重复使用。 (1)确定回溯算法函数的参数和返回值(一般是void类型) (2)因为是用递归实现的,所以我们要确定终止条件 (3)单层搜索逻辑 二…...
