Linux软件安装

软件安装

安装软件的方式

软件的安装方式

  • 二进制发布包安装: 软件已经针对具体平台编译打包发布,只要解压,修改配置即可
  • rpm安装:软件已经按照redhat的包管理规范进行打包,使用rpm命令进行安装,不能自行解决库依赖问题
  • yum安装:一种在线软件安装方式,本质上还是rpm安装,自动下载安装包并安装,安装过程中自动解决库依赖问题
  • 源码编译安装:软件以源码工程的形式发布,需要自己编译打包

Windows操作系统安装软件一般分为两种方式

  • 下载安装包自行安装: win系统使用exe文件、msi文件等, mac系统使用dmg文件、pkg文件等
  • 系统的应用商店内安装: win系统有Microsoft Store商店, mac系统有AppStore商店

Linux系统同样支持这两种方式,Linux命令行内的”应用商店”是通过yum命令安装软件

  • yum是CentOS系统的RPM包软件管理器,用于自动化安装配置Linux软件并可以自动解决依赖问题(如果A软件依赖B软件,那么安装A软件时必须有B软件)
  • apt是Ubuntu系统的deb包软件管理器,功能都一样

yum [-y] [install 或 remove 或 search] 软件名称 : 用于自动化安装配置Linux软件

  • -y选项:表示自动确认,无需手动确认安装或卸载过程
  • install表示安装软件, remove表示卸载软件, search表示搜索软件安装包
  • 执行yum命令需要root权限(可以su切换到root或使用sudo授权),并且需要联网

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1ygpx53g-1691241020916)(C:\Users\meng\AppData\Roaming\Typora\typora-user-images\1688651943452.png)]

apt [-y] [install 或 remove 或 search] 软件名称 : 用法和yum一致,同样需要root权限

#安装wget
apt install wget
#移除wget
apt remove wget
#搜索wget
apt search wget

MySQL数据库安装

MySQL数据库管理系统是一款知名的数据库系统,其特点是:轻量、简单、功能丰富, 应用于后端开发、大数据、AI、运维、测试等各类岗位

MySQL5.7版本安装

rpm -qa: 检测当前系统中安装的所有软件,配合过滤命令可以查看当前系统中是否安装了某软件

  • rpm -qa | grep mariadb(查询当前系统中安装的名称带mariadb的软件), CentOS7自带的mariadb与MySQL数据库冲突导致安装失败

rpm -e --nodeps mariadb-libs-5.5.xx-1.el7.x86_64: 卸载自带的mariadb软件

  • RPM (Red-Hat Package Manager)RPM软件包管理器, 是红帽Linux用于管理和安装软件的工具,所以Centos系统也可以使用

第一步配置yum仓库: 由于MySQL并不在CentOS的官方仓库中,所以我们需要通过rpm命令导入MySQL仓库的密钥并配置MySQLQ的yum仓库

# 更新密钥
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022# 安装Mysql yum库
rpm -Uvh http://repo.mysql.com//mysql57-community-release-el7-7.noarch.rpm

image-20221012182514865

第二步: 切换到root用户, 使用yum命令安装MySQL,安装操作需要root权限

# yum安装Mysql
yum -y install mysql-community-server

第三步:MySQL安装完成后会自动配置为名称叫做mysqld的服务,可以被systemctl所管理

  • 如果在查看MySQL服务状态时出现了问题,请查看3306端口是否被占用
# MySQL默认绑定了3306端口,可以通过端口占用检查MySQL的网络状态
netstat -anp | grep 3306
# 启动MySQL服务并配置开机自启动
systemctl start mysqld		# 启动
systemctl enable mysqld		# 开机自启
# 检查MySQL的运行状态
systemctl status mysqld

第四步:主要配置管理员用户root的密码以及配置允许远程登录的权限

  • 过滤MySQL日志文件的关键字获取初始密码: grep 'temporary password' /var/log/mysqld.log

image-20221012182744115

第五步: 执行命令登陆MySQL数据库系统mysql -uroot -p(粘贴密码)

  • -u表示登陆的用户,MySQL数据库的管理员用户同Linux一样都是root
  • -p表示使用密码登陆

image-20221012182805966

第六步: 在mysql内执行命令修改root用户密码,注意mysql的命令是不见分号不结尾

-- 直接设置密码需要符合规范大于8位,有大写字母,有特殊符号
ALTER USER 'root'@'localhost' IDENTIFIED BY '密码';	-- 配置root的简单密码需要降低Mysql的密码安全级别
set global validate_password_policy=LOW; # 密码安全级别低
set global validate_password_length=4;	 # 密码长度最低4位即可
ALTER USER 'root'@'localhost' IDENTIFIED BY '简单密码';
set password = password('简单密码');

第七步: 配置root运行远程登录,由于root远程登录会带来安全风险, 默认情况下要求root用户必须在MySQL服务所在的Linux服务器登陆MySQL系统

  • 使用Navicat或者SQLyog就可以连接到我们的数据库了,主机名就是ip地址,用户名和密码就是刚刚设置的(对3306端口要放行)
-- IP地址即允许登陆的IP地址,也可以填写%,表示允许任何地址
-- 密码表示给远程登录独立设置密码,和本地登陆的密码可以不同
grant all privileges on *.* to root@"IP地址" identified by '密码' with grant option;  
flush privileges;-- 刷新权限,生效

第八步: 退出MySQL控制台页面exit或快捷键ctrl + d

# 开放3306端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
# 重新载入防火墙规则使其生效
firewall-cmd --reload								

JDK安装

安装步骤

第一步: 在Oracle官网登录账号下载Linux系统的JDK,如果没有Oracle账户可以免费注册

  • 也可以使用FinalShell自带的上传工具将jdk的二进制发布包上传到Linux

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-GeRSs9jm-1691241020918)(C:\Users\meng\AppData\Roaming\Typora\typora-user-images\1690964640721.png)]

第二步: 登陆Linux系统切换到root用户解压安装包到usr/local目录下tar -zxvf jdk-8uxxx-linux-x64.tar.gz -C /usr/local

  • 也可以配置JDK的软链接也放到该目录下,在环境变量中使用软连接代替本体: ln -s /usr/local/jdk1.8.0_xxx /usr/local/jdk
  • 如果不是最小安装的Linux系统可能会自带Java程序,此时可以删除自带的防止冲突
# 删除系统自带的java程序
rm -f /usr/bin/java
# 软链接我们自己安装的java程序(此时可以不用配置环境变量)
ln -s /usr/local/jdk/bin/java /usr/bin/java

第三步: vi /etc/profile文件, 配置JAVA_HOME环境变量并将$JAVA_HOME/bin文件夹加入到PATH环境变量中

# 编辑/etc/profile文件
export JAVA_HOME=/export/server/jdk
export PATH=$PATH:$JAVA_HOME/bin# 以追加的方式向/etc/profile文件写入内容
echo 'JAVA_HOME=/usr/local/jdk1.8.0_171' >> /etc/profile
echo 'PATH=$JAVA_HOME/bin:$PATH' >> /etc/profile

第四步:source /etc/profile重新加载profile文件,使更改的配置立即生效

第五步检查安装是否成功: java -version

[root@localhost local]# java -version
java version "1.8.0_171"
Java(TM) SE Runtime Environment (build 1.8.0_171-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.171-b11, mixed mode)

Tomcat安装部署

Tomcat是由Apache开发的一个Servlet容器实现了对Servlet和JSP的支持, 并提供了作为Web服务器的特有功能,如管理和控制平台,全域管理和Tomcat阀等

  • Tomcat是一个WEB应用程序的托管平台,可以让用户编写的WEB应用程序变成可以被访问的网页

安装步骤

Tomcat的安装非常简单主要分为2部分: 先安装JDK环境, 然后解压并安装Tomcat(建议使用非Root用户安装并启动)

第一步: CentOS系统默认开启了防火墙用来阻止外部网络流量访问系统内部,如果想要Tomcat可以正常使用需要对Tomcat默认使用的8080端口进行放行

  • 使用systemctl管理服务命令直接关闭防火墙(可以对服务进行启动,停止,重启,查看状态等),但为了保证系统安全,服务器的防火墙一般不建议关闭
  • 使用firewall-cmdLinux中专门用于控制防火墙的命令(显示简洁), 可以配置防火墙规则端只开放指定的端口
#查看防火墙状态
systemctl status firewalld或firewall-cmd --state# 方式1:关闭防火墙
systemctl stop firewalld		# 暂时关闭防火墙
systemctl disable firewalld		# 停止防火墙开机自启(永久关闭)# 开放指定端口,--add-port=8080/tcp表示放行8080端口的tcp访问,--permanent表示永久生效
firewall-cmd --zone=public --add-port=8080/tcp --permanent
# 重新载入防火墙规则使其生效
firewall-cmd --reload								
# 关闭指定端口
firewall-cmd --zone=public --remove-port=8080/tcp --permanent# 查看开放的端口
firewall-cmd --zone=public --list-ports

第二步:使用root用户创建tomcat用户专门用来部署

# 使用root用户操作
useradd tomcat
# 可选,为tomcat用户配置密码
passwd tomcat

第三步: 使用wget命令在Linux内下载Tomcat安装包,也可以复制下载链接在Windows系统中使用迅雷等软件加速下载然后上传到Linux内

# 使用root用户操作
wget https://dlcdn.apache.org/tomcat/tomcat-x/版本号/bin/apache-tomcat-x.x.x.tar.gz
# 如果出现https相关错误,可以使用--no-check-certificate选项
wget --no-check-certificate  https://dlcdn.apache.org/tomcat/tomcat-x/版本号/bin/apache-tomcat-x.x.x.tar.gz

第四步: 解压自己下载/上传的Tomcat安装包(非root用户无权限解压到HOME目录以外的目录)tar -zxvf apache-tomcat-x.x.x.tar.gz-C /usr/local

  • 使用root用创建Tomcat安装目录的软连接,然后修改Tomcat安装目录权限为tomcat用户
# 创建软连接
ln -s /usr/local/apache-tomcat-x.x.x /usr/local/tomcat
# 对tomcat安装文件夹的权限进行修改,使用通配符*进行匹配文件
chown -R tomcat:tomcat /usr/local/*tomcat*

第五步: 切换到tomcat用户su - tomcat, 执行Tomcat的bin目录下的startup.sh/shutdowno.sh脚本文件启动/关闭tomcat

[root@localhost] sh /usr/local/apache-tomcat-x.x.x/bin/startup.sh/shutdowno.sh

第六步: 验证Tomcat是否启动成功有很多种方式

# 查看端口号的占用情况
netstat -anp | grep 8080# 查看进程
ps -ef | grep tomcat
root      71967      1  4 16:05 pts/0    00:00:02 /usr/local/jdk1.8.0_171/bin/java -Djava.util.logging.config.file=/usr/local/apache-tomcat-7.0.57/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.endorsed.dirs=/usr/local/apache-tomcat-7.0.57/endorsed -classpath /usr/local/apache-tomcat-7.0.57/bin/bootstrap.jar:/usr/local/apache-tomcat-7.0.57/bin/tomcat-juli.jar -Dcatalina.base=/usr/local/apache-tomcat-7.0.57 -Dcatalina.home=/usr/local/apache-tomcat-7.0.57 -Djava.io.tmpdir=/usr/local/apache-tomcat-7.0.57/temp org.apache.catalina.startup.Bootstrap start
root      73174  42704  0 16:06 pts/0    00:00:00 grep --color=auto tomcat# 查看tomcat日志
more /usr/local/ apache-tomcat-7.0.57/logs/catalina.out
tail -50 /usr/local/apache-tomcat-7.0.57/logs/catalina.out#结束Tomcat进程(等价于关闭)
kill -9 Tomcat的进程id

第七步: 打开浏览器输入http://主机的IP地址或配置好的主机名映射:8080访问Tomcat的WEB页面

image-20221017223915498

安装Git和Maven

安装Git

在Linux中安装Git

# 列出git安装包
yum list git
# 在线安装git
yum install git

安装Maven

在Linux解压Maven的安装包到/usr/local目录下

tar zxvf apache-maven-x.x.x-bin.tar.gz -C /usr/local

编辑配置文件vi /etc/profile配置Maven到环境变量中,source /etc/profile使配置文件生效

export MAVEN_HOME=/usr/local/apache-maven-x.x.x
export PATH=$JAVA_HOME/bin:$MAVEN_HOME/bin:$PATH

验证Maven是否安装成功

[root@CentOs etc] mvn -version
Apache Maven 3.8.8 (4c87b05d9aedce574290d1acc98575ed5eb6cd39)
Maven home: /usr/local/apache-maven-3.8.8
Java version: 1.8.0_212, vendor: Oracle Corporation, runtime: /usr/local/jdk1.8.0_212/jre
Default locale: zh_CN, platform encoding: UTF-8
OS name: "linux", version: "3.10.0-1062.el7.x86_64", arch: "amd64", family: "unix"

编辑Maven的配置文件vim /usr/local/apache-maven-x.x.x/conf/settings.xml, 配置Maven仓库的位置到mkdir /usr/local/repo

# 创建仓库
mkdir /usr/local/repo
# 在settings标签下加上这句话设置仓库位置
<localRepository>/usr/local/repo</localRepository>

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-95YBJhtx-1691241020920)(C:\Users\meng\AppData\Roaming\Typora\typora-user-images\1691134597117.png)]

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

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

相关文章

65 # 实现 http-server 里的 gzip 压缩

用 zlib 来实现 gzip 压缩 服务端优化都是&#xff1a;压缩 缓存 前端可以通过 webpack 插件进行压缩 gzip 根据替换来实现的&#xff0c;重复率越高&#xff0c;压缩后的结果越小 const zlib require("zlib"); const fs require("fs"); const path …

数据可视化:Matplotlib详解及实战

1 Matplotlib介绍 Matplotlib是Python中最常用的可视化工具之一,可以非常方便地创建海量类型的2D图表和一些基本的3D图表。 Matplotlib提供了一个套面向绘图对象编程的API接口&#xff0c;能够很轻松地实现各种图像的绘制&#xff0c;并且它可以配合Python GUI工具&#xff08;…

黑马程序员SpringMVC练手项目

目录 1、需求 2、项目准备 pom.xml SQL jdbc.properties log4j.properties applicationContext.xml spring-mvc.xml web.xml 3、工作流程 4、难点 项目已经上传到gitee&#xff1a;https://gitee.com/xzl-it/my-projects 1、需求 SpringMVC项目练习&#xff1a;数…

基于Open3D的点云处理14-法向量

法向量 计算法向量的接口函数&#xff1a; Open3d使用estimate_normals函数来计算法向量。其参数设置Open3d提供了3中参数搜索的方法&#xff08;所有计算的法向量模长为1&#xff09;&#xff1a; open3d.geometry.KDTreeSearchParamKNN(knn20) # 计…

Linux从安装到实战 常用命令 Bash常用功能 用户和组管理

1.0初识Linux 1.1虚拟机介绍 1.2VMware Workstation虚拟化软件 下载CentOS; 1.3远程链接Linux系统 &FinalShell 链接finalshell半天没连接进去 他说ip adress 看IP地址是在虚拟机上 win11主机是 终端输入&#xff1a; ifconfig VMware虚拟机的设置 & ssh连接_snge…

初识MySQL数据库之用户管理

目录 一、用户管理 二、用户 1. 用户信息 2. 创建用户 3. 用户登录测试 4. 删除用户 5. 设置用户远端登录 6. 修改密码 6.1 修改当前用户的密码 6.2 root用户修改指定用户的密码 三、权限 1. 数据库中的各个权限含义 2. 给用户授权 3. 查看用户拥有权限 4. 授权…

Flink之JDBC Sink

这里介绍一下Flink Sink中jdbc sink的使用方法,以mysql为例,这里代码分为两种,事务和非事务 非事务代码 import org.apache.flink.connector.jdbc.JdbcConnectionOptions; import org.apache.flink.connector.jdbc.JdbcExecutionOptions; import org.apache.flink.connector.…

设计模式概述与UML图

文章目录 一、设计模式概述1. 软件设计模式的产生背景2. 软件设计模式的概念3. 学习设计模式的必要性4. 设计模式分类&#xff08;1&#xff09;创建型模式&#xff08;2&#xff09;结构型模式&#xff08;3&#xff09;行为型模式 二、UML图1. 类图概述2. 类图作用3. 类图表示…

深入学习JVM —— GC垃圾回收机制

前言 前面荔枝已经梳理了有关JVM的体系结构和类加载机制&#xff0c;也详细地介绍了JVM在类加载时的双亲委派模型&#xff0c;而在这篇文章中荔枝将会比较详细地梳理有关JVM学习的另一大重点——GC垃圾回收机制的相关知识&#xff0c;重点了解的比如对象可达性的判断、四种回收…

215. 数组中的第K个最大元素(快排+大根堆+小根堆)

题目链接&#xff1a;力扣 解题思路&#xff1a; 方法一&#xff1a;基于快速排序 因为题目中只需要找到第k大的元素&#xff0c;而快速排序中&#xff0c;每一趟排序都可以确定一个最终元素的位置。 当使用快速排序对数组进行降序排序时&#xff0c;那么如果有一趟排序过程…

VSCode C/C++ 分目录编译配置

分目录编译配置记录 launch.json文件 注释处为修改内容 {// 使用 IntelliSense 了解相关属性。 // 悬停以查看现有属性的描述。// 欲了解更多信息&#xff0c;请访问: https://go.microsoft.com/fwlink/?linkid830387"version": "0.2.0","configur…

PHP8的表达式-PHP8知识详解

表达式是 PHP 最重要的基石。在 PHP8中&#xff0c;几乎所写的任何东西都是一个表达式。简单但却最精确的定义一个表达式的方式就是"任何有值的东西"。 最基本的表达式形式是常量和变量。当键入"$a 5"&#xff0c;即将值"5"分配给变量 $a。&quo…

后端进阶之路——综述Spring Security认证,授权(一)

前言 「作者主页」&#xff1a;雪碧有白泡泡 「个人网站」&#xff1a;雪碧的个人网站 「推荐专栏」&#xff1a; ★java一站式服务 ★ ★前端炫酷代码分享 ★ ★ uniapp-从构建到提升★ ★ 从0到英雄&#xff0c;vue成神之路★ ★ 解决算法&#xff0c;一个专栏就够了★ ★ 架…

【数据结构篇】手写双向链表、单向链表(超详细)

文章目录 链表1、基本介绍2、单向链表2.1 带头节点的单向链表测试类&#xff1a;链表实现类&#xff1a; 2.2 不带头节点的单向链表2.3 练习测试类&#xff1a;链表实现类&#xff1a; 3、双向链表测试类&#xff1a;双向链表实现类&#xff1a; 4、单向环形链表**测试类**&…

Gitlab CI/CD笔记-第二天-GitOps的流水线常用关键词(1)

一、常用关键词 在Gitlab项目的根目录需要创建一个 .gitlab-ci.yaml的文件。 这个文件就是定义的流水线。Call :"Pipeline as code" 二、这条流水线怎么写&#xff1f; 一、掌握常用的关键词即可。 1.关键词分类 1.全局关键词 Global Keywards 2.任务关键词…

Java课题笔记~ Spring 概述

Spring 框架 一、Spring 概述 1、Spring 框架是什么 Spring 是于 2003 年兴起的一个轻量级的 Java 开发框架&#xff0c;它是为了解决企业应用开发的复杂性而创建的。Spring 的核心是控制反转&#xff08;IoC&#xff09;和面向切面编程&#xff08;AOP&#xff09;。 Spring…

vue 标题文字字数过长超出部分用...代替 动态显示

效果: 浏览器最大化: 浏览器缩小: 代码: html: <div class"title overflow">{{item.name}}</div> <div class"content overflow">{{item.content}}</div> css: .overflow {/* 一定要加宽度 */width: 90%;/* 文字的大小 */he…

聊聊 Docker 和 Dockerfile

目录 一、前言 二、了解Dockerfile 三、Dockerfile 指令 四、多阶段构建 五、Dockerfile 高级用法 六、小结 一、前言 对于开发人员来说&#xff0c;会Docker而不知道Dockerfile等于不会Docker&#xff0c;上一篇文章带大家学习了Docker的基本使用方法&#xff1a;《一文…

【NLP概念源和流】 01-稀疏文档表示(第 1/20 部分)

一、介绍 自然语言处理(NLP)是计算方法的应用,不仅可以从文本中提取信息,还可以在其上对不同的应用程序进行建模。所有基于语言的文本都有系统的结构或规则,通常被称为形态学,例如“跳跃”的过去时总是“跳跃”。对于人类来说,这种形态学的理解是显而易见的。 在这篇介…

设计模式-迭代器模式在Java中使用示例

场景 为开发一套销售管理系统&#xff0c;在对该系统进行分析和设计时&#xff0c;发现经常需要对系统中的商品数据、客户数据等进行遍历&#xff0c; 为了复用这些遍历代码&#xff0c;开发人员设计了一个抽象的数据集合类AbstractObjectList&#xff0c;而将存储商品和客户…