Linux 配置全面讲解(安装JDK、Mysql、Nginx)

1,160 阅读13分钟

1 Linux概述

1.1 Linux介绍

      Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIXUNIX的多用户、多任务、支持多线程多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位64位硬件。Linux继承了Unix网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。       Linux操作系统诞生于1991 年10 月5 日(这是第一次正式向外公布时间)。Linux存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。       严格来讲,Linux这个词本身只表示Linux内核,但实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU工程各种工具和数据库的操作系统。

1.2 Linux发展史

      1965 年,Bell 实验室、MIT、GE(通用电气公司)准备开发 Multics 系统,为了同时支持 300 个终端访问主机,但是 1969 年失败了; (刚开始并没有鼠标、键盘,输入设备只有卡片机,因此如果要测试某个程序,则需要将读卡纸插入卡片机,如果有错误,还需要重新来过; Multics:Multiplexed Information and Computing Service)        1969 年,Ken Thompson(B语言之父)利用汇编语言开发了 FIle Server System(Unics,即 UNIX 的原型) (因为汇编语言对于硬件的依赖性,因此只能针对特定硬件; 只是为了移植一款“太空旅游”的游戏;)        1973 年,Dennis Ritchie 和 Ken Thompson 发明了 C 语言,而后写出了 UNIX 的内核 (将 B 语言改成 C 语言,由此产生了 C 语言之父; 90% 的代码是 C 语言写的,10% 的代码用汇编写的,因此移植时只要修改那 10% 的代码即可;)        1977 年,Berkeley 大学的 Bill Joy 针对他的机器修改 UNIX 源码,称为BSD(Berkeley Software Distribution)        1979 年,UNIX 发布 System V,用于个人计算机;       1984 年,因为 UNIX 规定:“不能对学生提供源码”,Tanenbaum 老师自己编写兼容于 UNIX 的Minix,用于教学;        1984 年,Stallman 开始 GNU(GNU's Not Unix)项目,创办 FSF(Free Software Foundation)基金会; (产品:GCC、Emacs、Bash Shell、GLIBC; 倡导“自由软件”; GNU 的软件缺乏一个开放的平台运行,只能在 UNIX 上运行; 自由软件指用户可以对软件做任何修改,甚至再发行,但是始终要挂着 GPL 的版权; 自由软件是可以卖的,但是不能只卖软件,而是卖服务、手册等;)        1985 年,为了避免 GNU 开发的自由软件被其他人用作专利软件,因此创建 GPL(General Public License)版权声明;       1988 年,MIT 为了开发 GUI,成立了 XFree86 的组织;       1991 年芬兰赫尔辛基大学的研究生 Linus Torvalds 基于 gcc、bash 开发了针对 386 机器的 Linux 内核;        1994 年,Torvalds 发布 Linux-v1.0;       1996 年,Torvalds 发布 Linux-v2.0,确定了 Linux 的吉祥物:企鹅;

如图-9所示

在这里插入图片描述

1.3 Linux系统层级结构

在这里插入图片描述

1.4 Linux特点

1.系统开源并且免费 2.对硬件要求很低 800M 3-4 3.系统稳定性强 4.系统安全性更好 (军工企业 断网)

1.5 Linux系统主流产品

如图-10所示

在这里插入图片描述

2.Linux命令

说明:Linux全部都是基于文件的. 并且Linux中的目录都是树形结构!

在这里插入图片描述

2.1 cd命令集

ifconfig/ip addr    检查IP地址
pwd				    检查当前的位置
tab键			    自动补齐(注意唯一性)
cd                  命令是linux中最基本的命令语句,必须熟练掌握
cd /                返回根目录
cd ~                用户主目录
cd .                当前目录
cd ..               返回到上一级目录
cd /usr/            进入到usr目录
cd –                返回上一个目录
cd                  直接回家

2.2 目录和文件

ls –l      详细格式,文件权限,时间
ll         和ls –l作用相同
ls *.txt   查看所有的txt类型文档

2.3 目录操作

mkdir           创建目录
mkdir a         创建 a目录
mkdir -p a/b    创建 a目录,并在a目录里创建b目录
mkdir -m 777 c  创建一个权限为777的C目录
rmdir           删除目录(如果目录里有文件,则不能用此命令)

2.4 Vi/vim创建/查看/编辑文件

命令行:Esc切换到命令行模式。
编辑模式:
按i,在光标前开始编辑
按a,在光标后开始编辑
按o,在当前行的下一行开始编辑
按u, 撤销之前的操作
底行模式:按  shift+:冒号。
:q! 不保存退出
:wq 保存退出
:/world 从当前光标处,向上查找world关键字
:?world 从当前光标处,向后查找world关键字

2.5 删除文件

rm              删除文件
rm n.txt        提示y删除n放弃
rm –f n.txt     不提示
rm –rf dirname  不提示递归删除目录下所以内容
rm –rf *        删除所有文件
rm –rf /*       删除所有子目录所有和文件

2.6 复制和移动文件

cp 复制文件
cp nginx.conf n.txt
cp –R tomcat1 tomcat2                #复制整个目录
mv 修改文件名,移动文件
mv n.txt m.txt  修改文件名称

2.7 浏览文件

cat    输出文件所有的内容
more   输出文档所有的内容,分页输出,空格浏览下一屏,q退出
less   用法和more相同,只是通过PgUp、PgOn键来控制
tail   用于显示文件后几号,使用频繁
tail -10 nginx.conf  查看nginx.conf的最后10行
tail –f nginx.conf   动态查看日志,方便查看日志新增的信息
ctrl+c 结束查看

2.8 打包命令

tar  命令位于/bin目录下,它能够将用户所指定的文件或目录打包成一个文件,但不做压缩。一般Linux上常用的压缩方式是选用tar将许多文件打包成一个文件,再以gzip压缩命令压缩成name.tar.gz的文件。
-c 创建一个新的tar文件
-v 显示运行过程的信息
-f 指定文件名
-z 调用gzip压缩命令进行压缩
-t 查看压缩文件的内容
-x 解开tar文件
tar –cvf n.tar ./*  压缩当前目录下的所有文件和目录,文件名为n.tar
tar –xvf n.tar      解压压缩包中的文件到当前目录(如果长时间未解压成功 Ctrl+C推出)
tar –cvzf m.tar.gz ./*  压缩文件
tar -zxvf m.tar.gz		解压m.tar文件到当前目录

2.9 grep命令

grep root  /etc/passwd               在文件中查找关键字root
grep root  /etc/passwd  –-color      高亮显示
grep root  /etc/passwd  –A5 –B5      高亮显示,A后5行,B前5行
grep -n root /etc/passwd             查找并显示行数
grep -v root /etc/passwd             取反,查出不含root的数据

3 虚拟机安装和使用

3.1 虚拟机介绍

      虚拟系统通过生成现有操作系统的全新虚拟镜像,它具有真实windows系统完全一样的功能,进入虚拟系统后,所有操作都是在这个全新的独立的虚拟系统里面进行,可以独立安装运行软件,保存数据,拥有自己的独立桌面,不会对真正的系统产生任何影响 ,而且具有能够在现有系统与虚拟镜像之间灵活切换的一类操作系统。虚拟系统和传统的虚拟机(Parallels Desktop ,Vmware,VirtualBox,Virtual pc)不同在于:虚拟系统不会降低电脑的性能,启动虚拟系统不需要像启动windows系统那样耗费时间,运行程序更加方便快捷;虚拟系统只能模拟和现有操作系统相同的环境,而虚拟机则可以模拟出其他种类的操作系统;而且虚拟机需要模拟底层的硬件指令,所以在应用程序运行速度上比虚拟系统慢得多。

3.2 运行虚拟机镜像

将资料中的虚拟机镜像解压到本地磁盘中(不要有中文和空格),之后双击运行.vmx文件 在这里插入图片描述

3.3 虚拟机配置

在这里插入图片描述 内存:一般最大为真实内存的3/4, 一般为512M-1G 硬盘:一般默认20G       如果上述的设置一旦确定,则直接向操作系统割裂对应数据的资源. 网络模式:桥接模式/NAT模式

3.4 网络模式

3.4.1 桥接模式

相当于将虚拟机直接接入局域网中,这时会独占IP地址.可以与本机通过局域网通信。       特点:所有的在局域网中的IP都可以访问虚拟机。       依赖:如果设置桥接模式,则必须有物理设备的支持。 在这里插入图片描述

3.4.2 NAT模式

相当于在网络环境中会开辟一块全新的网络空间,只有主机能够访问。 特点:NAT模式只有主机访问,其他人通过IP地址禁止访问。 在这里插入图片描述

3.4.3 虚拟机克隆

说明:JT虚拟机中安装了很多插件和环境.为了保护环境不被破坏,所以需要克隆虚拟机备份数据,之后的操作全部在备份的机器上运行。 在这里插入图片描述

在这里插入图片描述

3.5 LinuxIP划分和链接

3.5.1 IP划分

本机IP:192.168.126.1 虚拟机IP:192.168.126.180 说明:以上的IP地址表示在同一个网络空间内.如果前三项不一致,则按照以下方式修改。 在这里插入图片描述

3.5.2 IP地址动态修改

在这里插入图片描述 配置租约: 在这里插入图片描述

3.5.3 配置静态IP地址

在这里插入图片描述

3.5.4 修改时间

在这里插入图片描述

3.6 Xshell

3.6.1Xshell介绍

说明:Xshell是远程连接Linux系统的工具.可以进行文件传输,命令的编辑等一列的操作,和操作真实的Linux系统一致。 连接步骤: 1.获取服务器IP地址 2.获取服务器用户名和密码 3.Xshell远程连接工具都是加密传输 公钥和私钥

3.6.2 远程连接方式

说明:新建会话后连接远程虚拟机 在这里插入图片描述

3.6.3 MobaXterm工具

或者使用:MobaXterm_Personal_20.3 官网:mobaxterm.mobatek.net/ 在这里插入图片描述

下载完成安装后,打开软件: 在这里插入图片描述

选择SSH 在这里插入图片描述

新建用户 在这里插入图片描述

为了方便后期学习,全部输入root 在这里插入图片描述

在这里插入图片描述 在这里插入图片描述

输入密码后: 在这里插入图片描述

4 Linux系统安装JDK

4.1上传JDK安装包

说明:将JDK安装包上传到指定文件目录下/usr/local/src下

JDK下载地址: 链接:pan.baidu.com/s/1Wt5VdbyN… 提取码:glxt

在这里插入图片描述 在这里插入图片描述

4.2 解压JDK文件

命令: tar -xvf jdk-8u51-linux-x64.tar.gz 在这里插入图片描述 在这里插入图片描述

4.3 刪除JDK

在这里插入图片描述

4.4 修改JDK文件名称

在这里插入图片描述

4.5 配置JDK环境变量

说明:修改Linux系统中环境变量需要修改/etc/profile文件

环境变量文件名称: /etc/profile 命令: vim /etc/profile 让环境变量生效: source /etc/profile

在这里插入图片描述

4.6 检测JDK是否生效

查看jdk版本命令:java -version 在这里插入图片描述

5 Linux项目部署流程图

5.1 项目流程图设计

在这里插入图片描述

6 安装Mysql数据库

[root@localhost src]# yum  install mariadb-server      安装mariadb数据库
[root@localhost src]# yum  clean   all                 清空已安装文件   如果下载失败之后执行的

6.1 测试虚拟机网络

测试: 当前虚拟机是否可以正确的链接外网,ctrl+c,停止测试 在这里插入图片描述

测试网络无问题后,输入命令:

6.2 下载MariaDB数据库

1 输入安装命令

[root@localhost src]# yum  install mariadb-server      安装mariadb数据库

在这里插入图片描述

如果下载失败之后,执行此命令:

[root@localhost src]# yum  clean   all                 清空已安装文件

2 确认下载回复: y 在这里插入图片描述


3 安装完成提示 在这里插入图片描述

6.3 数据库启动

命令:

	1.   启动命令    [root@localhost src]# systemctl  start  mariadb
	2.   重启命令    [root@localhost src]# systemctl  restart  mariadb
	3.   关闭命令    [root@localhost src]# systemctl  stop  mariadb
	4.   设定开机自起 [root@localhost src]# systemctl  enable mariadb 
	5.   关闭开机自起 [root@localhost src]# systemctl  disable mariadb 

6.4 数据库初始化操作

注意:密码默认不显示,直接输入就行

命令: mysql_secure_installation 在这里插入图片描述初始化完成 在这里插入图片描述

6.5 测试数据库用户名和密码是否有效

我们设置的账号密码为:root

进入mysql   [root@localhost src]# mysql -u root -p root
退出mysql   [root@localhost src]# exit

在这里插入图片描述

6.6 导入数据表

说明:如果mysql数据库需要导入数据表命令如下: 命令: source /xxx/xxxx/xxxx/jtdb.sql; 在这里插入图片描述

6.7 Mysql数据库远程访问配置

在这里插入图片描述 在这里插入图片描述

6.7.1 关于链接数据库的说明

说明:

1.如果需要远程链接数据库必须通过防火墙 2.如果远程链接数据库,数据库中必须开启远程访问权限才行,否则拒绝链接

6.7.2 配置数据库权限配置说明

在这里插入图片描述

6.8 配置Linux数据库权限

切换数据库mysql 在这里插入图片描述 切换Mysql数据库 在这里插入图片描述

6.9 修改数据库表

1).检查数据表 在这里插入图片描述

2).查询user表中的host/root/password 在这里插入图片描述

3).将host=“localhost” 改为 “%” 在这里插入图片描述

4).刷新数据库权限 在这里插入图片描述

7 配置Linux防火墙策略

7.1 检查防火墙状态

命令: firewall-cmd --state 在这里插入图片描述

7.2 防火墙配置

说明:防火墙中有一个配置文件,表示当Linux系统启动时防火墙应该如何操作!!! 需求: 告诉linux系统以后开机不需要启动防火墙 命令: systemctl disable firewalld.service systemctl enable firewalld.service

在这里插入图片描述

7.3 手动关闭防火墙

说明:通过命令手动将防火墙关闭 命令: systemctl stop firewalld.service systemctl start firewalld.service 在这里插入图片描述

7.4 手动开放防火墙端口

1). 检查防火墙开放的端口

firewall-cmd --list-ports

2).检查端口是否开放

firewall-cmd --query-port 80/tcp

3). 开启防火墙

firewall-cmd --zone=public --add-port=80/tcp --permanent

在这里插入图片描述 4).移除端口

 firewall-cmd --zone=public --remove-port=9090/tcp --permanent

在这里插入图片描述

5).关于防火墙操作的解释

–zone #作用域

–add-port=80/tcp #添加端口,格式为:端口/通讯协议

–remove-port=80/tcp #移除端口,格式为:端口/通讯协议

–permanent #永久生效,没有此参数重启后失效

6).重启防火墙

firewall-cmd --reload


7.5 数据库远程测试

在这里插入图片描述 在这里插入图片描述

8.Linux安装Nginx

8.1 业务说明

由于 nginx主要的作用 :

  • 1.负载均衡
  • 2.完成反向代理机制

由于图片在Linux的磁盘中,所以必须通过Nginx方式进行反向代理 在这里插入图片描述

8.2 手动安装Nginx

8.2.1 下载Nginx安装包

命令:

wget http://nginx.org/download/nginx-1.19.8.tar.gz 在这里插入图片描述

8.2.2 安装nginx

1). 解压

[root@localhost src]# tar -xvf nginx-1.19.8.tar.gz

2).修改文件名称 在源文件目录中执行下列命令 在这里插入图片描述

3).编译/安装 3.1) ./configure 在这里插入图片描述

3.2) make 编译C语言的程序 在这里插入图片描述

3.3) make install 安装nginx 在这里插入图片描述

3.4) whereis nginx 检查nginx安装位置 在这里插入图片描述

8.2.3 nginx命令

1).路径 在这里插入图片描述 2)

  • ./nginx 启动
  • ./nginx -s reload 重启
  • ./nginx -s stop 停止

3).调试nginx 在这里插入图片描述