当前位置: 首页 > news >正文

Linux部署安装

Linux部署安装

Linux中有两种软件安装包

一、源码包

软件的源代码是软件的原始数据,但是源代码不能直接在计算机中直接运行安装。
需要通过编译将源代码转换为计算机可以识别的机器语言,之后才可以进行安装。
源码包安装的方式可以在安装过程中发根据自己的需求定制自己所需要的功能

Linux上大部分软件都是开源软件(apache、tomcat、PHP、MySQL等)

源码包安装优点:

  • 开放源代码,可以自行修改源代码

  • 可以自由选择安装所需功能

  • 软件是编译安装,更加稳定高效

  • 卸载方便,直接删除安装目录即可

源码包安装缺点:

  • 安装过程较为复杂

  • 编译过程时间较长(与RPM相比)

二、 RPM安装

RedHat Package Manger 的缩写,是红帽软件包工具。
RPM的提供可升级,具有强大查询功能,支持安全验证的通用型Linux软件包管理工具。
这种软件管理方式非常方便,被许多其他Linux发行版所借用。
RPM包优点:
  • 安装简单方便

  • 安装时不用指定安装位置

  • 方便升级、卸载

RPM包缺点
  • 大多数RPM安装需要解决依赖关系
RPM包命名规则
httpd-2.2.15-53.el6.centos.x86_64.rpm
httpd  软件包名
2.2.15  软件版本
53      软件发布次数
el6.centos    适合的linux平台
x86_64   适合的硬件平台 
rpm      rpm包扩展名
rpm安装命令
格式:rpm -ivh 软件包名(全名)
-i  install的意思,就是安装软件,也可以使用--install
-v  显示安装过程信息
-h#号显示安装的进度[root@localhost ~]# rpm -ivh /mnt/Packages/tree-1.6.0-10.el7.x86_64.rpm 
卸载命令
格式:rpm -e 软件名(不用指定包全名)操作:
[root@localhost ~]# rpm -e tree 
[root@localhost ~]# tree
bash: tree: 未找到命令...
[root@localhost ~]# 
升级命令
格式:rpm -Uvh 软件包全名
-U  升级安装,若没有安装直接安装,若有安装旧版本,则升级安装
-F  升级安装,若没有安装就不安装,必须有旧版本才能进行安装
查询已安装的软件信息
rpm -q   包名    查询是否安装
rpm -qa  包名    查看系统中已安装的所有RPM软件包列表
rpm -qi  包名    查看指定软件所安装的信息
rpm -ql  包名    查看指定软件所安装目录,文件列表
查询未安装的RPM包文件
格式: rpm -qpl 包全名  查询指定未安装软件所安装的目录,文件列表rpm -qpR  包全名  查询指定未安装软件的依赖文件
查询文件或者目录属于那个RPM软件
rpm -qf 文件或目录名

三、yum安装

因为在RPM安装过程中经常需要解决依赖关系,而有些依赖关系并不会有准确的依赖安装包提示信息,YUM是RPM包管理工具,可以很好解决RPM包安装过程中会遇到的依赖关系问题。

YUM可以从多个 源中搜索软件及软件安装所依赖的安装包,并自动安装相应的依赖软件。使用

YUM安装软件时至少需要一个YUM源,YUM源就像一个存放了好多RPM包的仓库,用户可以使用ftp、http等方式访问YUM源

1. 设置YUM源
centos当中YUM的配置文件在/etc/yum.repos.d/目录下,用户可以自定义文件名称,但是文件后缀必须是以 .repo结尾
[root@localhost ~]# cat /etc/yum.repos.d/CentOS-Base.repo 
[base]							  #YUM唯一ID号,可任意填写
name=CentOS-$releasever - Base    #YUM源描述,可任意填写
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os&infra=$infra  #指定镜像站点目录#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/  
#指定YUM源URL地址,ftp或http地址
gpgcheck=1             #是否开启gpg验证  0关闭  1开启
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7  #检查软件包gpg验证信息[root@localhost ~]# cat /etc/yum.repos.d/CentOS-Base.repo 
[base]
name=CentOS-$releasever - Base
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os&infra=$infra
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
gpgcheck=1
enable=1         #是否启用该YUM源,  0不启用  1启用
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
2. yum管理命令

yum安装

yum install 软件名
yum groupinstall 软件组名

yum 卸载

yum remove 软件名
yum  groupremove  软件组名

yum 升级

yum update
yum groupdate

YUM软件包查询

yum list               查询所有可以安装的软件包
yum list  包名          查询yum源中是否有所查询包
yum info 软件名         查询指定软件包的信息
yum grouplist          查询所有可以安装的软件组
yum groupinfo 软件组名   列出软件组中包含的软件
yum provides           查询文件在什么包中
注:
频繁的用yum安装后可能会出现安装错误的可能
需要执行yum clean all 命令来清空下yum缓存信息
之后使用yum  makecache根据配置文件建立新的缓存数据
在执行yum list 读取yum可安装的软件包

软件组安装-字符界面安装图形化

yum -y groupinstall “X Window System”
yum -y groupinstall “GNOME Desktop”安装图形化以及工具
systemctl get-default 查看系统默认运行级别
systemctl set-default graphical.target  设置默认级别graphical.target(图形)
3. 局域网YUM源
在日常工作情况下,多台服务器可能都需要安装同样的服务等。
那么我们重复下载多次同样的安装就是不合理的(占用带宽,下载时间加长等问题)
所以我们更需要一次下载多次使用的方式来使用
在这种情况下,需要分清服务器端和客户端两种身份。
服务端我们使用centos7.6当作服务器端,将RPM包共享给客户端,在当前实验下,我们使用光盘YUM源作为共享。我们主要使用createrepo命令创建repository仓库。在当前此命令是安装过的,如果没有此命令yum安装即可

服务器端:

1.安装httpd、createrepo
2.将光盘中Packages所有内容复制到/var/html/package下
3.createrepo  /var/www/html
4.createrepo  /var/www/html/  -g  /mnt/repodata/*comps.xml --update
5.关闭防火墙。  -g生成软件组依赖  --update在已有基础上生成
6.启动http服务

客户端

1.关闭防火墙。
#2.客户端/dev/sr0 卸载
#3.修改/etc/yum.repos.d/Centos-Media.repo  将enable=1修改为0
4.修改/etc/yum.repos.d/Centos-Base.repo  注释所有信息
5.添加[test]name=centos7baseurl=http://192.168.30.252gpgcheck=0enabled=1
6.保存退出测试安装效果yum clean all  清楚原有yum缓存yum makecache  建立元数据缓存yum repolist  查看当前使用yum源yum list   查看当前源下安装包
4. 更改镜像源

安装扩展源

[root@localhost ~]# yum -y install epel-release

备份配置文件

cp -a /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak

更新镜像源(华为)

wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.huaweicloud.com/repository/conf/CentOS-7-anon.repo

清楚原有yum缓存

yum clean all

刷新缓存

yum makecache  或  yum repolist all(查看所有配置可以使用的文件,会自动刷新缓存)
源码包安装
yum -y install gcc*  #安装gcc*
yum install pcre-devel  #作为依赖安装
yum install zlibb zlib-devel  #作为依赖安装
yum install openssl openssl-devel   #作为依赖安装
wget http://nginx.org/download/nginx-1.9.9.tar.gz  #下载压缩包
cd nginx-1.9.9/ #切换目录
./configure --prefix=/usr/local/nginx/  #运行configure到指定位置
make && make install #编译安装
/usr/local/nginx/sbin/nginx  #启动服务

相关文章:

Linux部署安装

Linux部署安装 Linux中有两种软件安装包 一、源码包 软件的源代码是软件的原始数据,但是源代码不能直接在计算机中直接运行安装。 需要通过编译将源代码转换为计算机可以识别的机器语言,之后才可以进行安装。 源码包安装的方式可以在安装过程中发根据…...

docker搭建mysql集群实现主从复制

前言 随着业务的增长,一台数据服务器已经满足不了需求了,负载过重。这个时候就需要减压了,实现负载均衡和读写分离,一主一丛或一主多从。 主服务器只负责写,而从服务器只负责读,从而提高了效率减轻压力。 …...

Neo4j 之安装和 CQL 基本命令学习

正常使用结构化的查询语言 SQL(Structured Query Language)较多一些,但是像 Neo4j 这种非结构化的图形数据库来说,就不得不学习下 CQL(Cypher Query Language)语言了。如果你之前学过 《离散数学》或《图论…...

【全开源】JAVA台球助教台球教练多端系统源码支持微信小程序+微信公众号+H5+APP

功能介绍 球厅端:球厅认证、教练人数、教练的位置记录、助教申请、我的项目、签到记录、我的钱包、数据统计 教练端:我的页面,数据统计、订单详情、保证金、实名认证、服务管理、紧急求助、签到功能 用户端:精准分类、我的助教…...

机器学习-如何为模型选择评估指标?

为机器学习模型选择评估指标是一个关键步骤,因为它直接关联到如何衡量模型的性能。以下是选择评估指标的一些建议: 1、理解问题类型: 分类问题:对于二分类问题,常见的评估指标包括准确率、精确率、召回率、F1分数、R…...

【AutoGPT】踩坑帖(follow李鱼皮)

本文写于2024年5月7日 参考视频:AutoGPT傻瓜式使用教程真实体验! 对应文章:炸裂的AutoGPT,帮我做了个网站! 平台:GitPod 云托管服务 原仓库已经改动很大,应使用的Repo为:Auto-GPT-ZH…...

机器学习-L1正则/L2正则

机器学习-L1正则/L2正则 目录 1.L1正则 2.L2正则 3.结合 1.L1正则 L1正则是一种用来约束模型参数的技术,常用于机器学习和统计建模中,特别是在处理特征选择问题时非常有用。 想象一下,你在装备行囊准备去旅行,但你的行囊有一…...

Linux——socket编程之tcp通信

前言 前面我们学习socket的udp通信,了解到了socket的概念与udp的实现方法,今天我们来学习一下面向连接的tcp通信。 一、tcp套接字创建 UDP和TCP都是通过套接字(socket)来实现通信的,因此TCP也得使用socket()接口创建…...

HTTP协议介绍

文章目录 http协议http协议格式GET请求POST请求http客户端实现 http协议 http协议是应用层协议,一般建立在tcp协议的基础之上(当然你的实现非要基于udp也是可以的),也就是说http协议的数据收发是通过tcp协议的。 http协议也分为h…...

elasticsearch安装配置注意事项

安装Elasticsearch时,需要注意以下几个重要事项: 1、版本选择:选择与你系统和其他组件(如Logstash、Kibana)兼容的Elasticsearch版本。 2、Java环境:Elasticsearch是基于Java构建的,因此确保已…...

Istio 流量管理(请求路由、流量转移、请求重试、流量镜像、故障注入、熔断等)介绍及使用

一、Istio 流量管理 Istio是一个开源的服务网格,它为分布式微服务架构提供了网络层的抽象。它使得服务之间的通信变得更为可靠、安全,并且提供了细粒度的流量管理、监控和策略实施功能。Istio通过在服务之间插入一个透明的代理(Envoy&#x…...

Transformers中加载预训练模型的过程剖析

使用HuggingFace的Transformers库加载预训练模型来处理下游深度学习任务很是方便,然而加载预训练模型的方法多种多样且过程比较隐蔽,这在一定程度上会给人带来困惑。因此,本篇文章主要讲一下使用不同方法加载本地预训练模型的区别、加载预训练模型及其配置的过程,藉此做个记…...

使用MCU的 GPIO口 模拟SDIO时序读写TF/SD卡的可能性。

SD2.0协议详解:命令格式、初始化/读取/写入 - WangXuan的文章 - 知乎 https://zhuanlan.zhihu.com/p/610495260 参考上述与其它理解,若使用GPIO口模拟,重点与难点: 1. 时钟线问题: 在SD准备期间,需不间断…...

SSM【Spring SpringMVC Mybatis】——Mybatis(二)

如果对一些基础理论感兴趣可以看这一期👇 SSM【Spring SpringMVC Mybatis】——Mybatis 目录 1、Mybatis中参数传递问题 1.1 单个普通参数 1.2 多个普通参数 1.3 命名参数 1.4 POJO参数 1.5 Map参数 1.6 Collection|List|Array等参数 2、Mybatis参数传递【#与…...

在线教育系统在线网校报价,培训机构是怎样招聘老师的?流程是什么?

招生是培训机构的一大难题,但招不来老师,招不到好老师却也是培训机构面临的一个更为严峻的问题,没有老师,教学工作就展不开,没有老师,学生就留不住。培训学校的人员招聘不要等缺失时才去招聘,要…...

您的文件和驱动器上的“密码保护”有多安全?

某些行业(例如医疗保健、法律和公司)的人们在通过电子邮件发送文件时通常依赖密码保护,认为它可以提供足够的安全性来防止窥探。然而,对 PDF 或 Excel 文件进行简单的密码保护并不像看起来那样万无一失。 使用密码保护文件而不加…...

4000字超详解Linux权限

各位大佬好 ,这里是阿川的博客 , 祝您变得更强 个人主页:在线OJ的阿川 大佬的支持和鼓励,将是我成长路上最大的动力 阿川水平有限,如有错误,欢迎大佬指正 在Linux当中权限的体现主要有两种 普通用户 超…...

SearXNG - 一个注重隐私的互联网元搜索引擎

引言 在数字监控和数据货币化的时代,对于许多用户而言,在线保护个人信息变得至关重要。隐私问题特别突出的一个领域是搜索引擎,它们经常收集用户数据以定制个性化广告或构建用户档案。SearXNG 是一个开源的元搜索引擎,它汇集了各…...

(第15天)【leetcode题解】459、重复的子字符串

目录 459、重复的子字符串题目描述暴力匹配思路代码 字符串匹配思路代码与暴力匹配的不同 KMP解法思路代码KMP算法的核心和用途 459、重复的子字符串 题目描述 给定一个非空的字符串 s ,检查是否可以通过由它的一个子串重复多次构成。 暴力匹配 思路 推理 如果…...

PostgreSQL的学习心得和知识总结(一百四十二)|深入理解PostgreSQL数据库数据库之 Continuous Integration

目录结构 注:提前言明 本文借鉴了以下博主、书籍或网站的内容,其列表如下: 1、参考书籍:《PostgreSQL数据库内核分析》 2、参考书籍:《数据库事务处理的艺术:事务管理与并发控制》 3、PostgreSQL数据库仓库…...

【外币兑换,简单贪心】

小明刚从美国回来,发现手上还有一些未用完的美金,于是想去银行兑换成人民币。可是听说最近人民币将会升值,并从金融机构得到了接下来十二个月可能的美元对人民币汇率,现在,小明想要在接下来一年中把美金都兑换成人民币…...

数据库入门(sql文档+命令行)

一.基础知识 1.SQL(Structured Query Language)结构化查询语言分类: DDL数据定义语言用来定义数据库对象:数据库、表、字段DML数据操作语言对数据库进行增删改查DQL数据查询语言查询数据库中表的信息DCL数据控制语言用来创建数据…...

【机器学习300问】84、AdaGrad算法是为了解决什么问题?

神经网络的学习的目的是找到使损失函数的值尽可能小的参数。这是寻找最优参数的问题,解决这个问题的过程称为最优化。因为参数空间非常复杂,无法轻易找到最优解,而且在深度神经网络中,参数的数量非常庞大,导致最优化问…...

Java算法-力扣leetcode-14. 最长公共前缀

14. 最长公共前缀 编写一个函数来查找字符串数组中的最长公共前缀。 如果不存在公共前缀,返回空字符串 ""。 示例 1: 输入: strs ["flower","flow","flight"] 输出: "fl"示…...

视频拼接融合产品的产品与架构设计(二)

视频拼接融合产品的产品与架构设计一 以上是第一期,以前思考的时候还是比较着急,现在思考的更多了,现实世界的拼接更加需要我们沉下心来做,尤其是对于更多画面,画面更加清晰怎么做 本篇章不在于其他功能,在…...

【docker 】push 镜像到私服

查看镜像 docker images把这个hello-world 推送到私服 docker push hello-world:latest 报错了。不能推送。需要标记镜像 标记Docker镜像 docker tag hello-world:latest 192.168.2.1:5000/hello-world:latest 将Docker镜像推送到私服 docker push 192.168.2.1:5000/hello…...

Java框架精品项目【用于个人学习】

源码获取:私聊回复【项目关键字】获取 更多选题参考: Java练手项目 & 个人学习等选题参考 推荐菜鸟教程Java学习、Javatpoint学习 前言 大家好,我是二哈喇子,此博文整理了各种项目需求 此文下的项目用于博主自己学习&#x…...

每周一算法:无向图的最小环

题目链接 观光之旅 题目描述 给定一张无向图,求图中一个至少包含 3 3 3 个点的环,环上的节点不重复,并且环上的边的长度之和最小。 该问题称为无向图的最小环问题。 你需要输出最小环的方案,若最小环不唯一,输出…...

分布式websocket IM即时通讯聊天开源项目如何启动

前言 自己之前分享了分布式websocket的视频有同学去fork项目了,自己启动一下更方便理解项目嘛。然后把项目启动需要的东西全部梳理出来。支持群聊单聊,表情包以及发送图片。 支持消息可靠,消息防重,消息有序。同时基础架构有分布式权限&…...

tensorflow学习笔记(1)环境准备写个简单例子(小白手册)-20240506

一、安装python、tensorflow 1、Mac上默认python已经安装,自带pip 2、pip3 install tensorflow 如果报错,提示pip3版本较低,可以根据提示来更新pip3:/Library/Developer/CommandLineTools/usr/bin/python3 -m pip install --upgrade pip 3、然后再使用pip3来安装tensor…...