和windows操作系统类似,Linux是一套性能稳定的多用户网络操作系统
1、rpm系(使用Red Hat(红帽子)的软件库管理系统):
(1) Redhat 红帽,收费,技术支持强大,资料完善,系统稳定安全;
(2) Fedora 被红帽赞助,适合个人使用,免费;
(3) Centos 被红帽收购,免费,系统稳定安全,很多公司在用;
2、dpkg系 (package manager for Debian):
(1) Debian 很多公司在用,基于ubuntu(乌班图);
(2) Ubuntu 基于debian的发行版,比较最受欢迎的免费操作系统,界面强大。比较适合个人用户;
(3) Pear os 基于Ubuntu,仿macos;
3、国产linux系统:
(1) 红旗Linux,真正的国产linux系统,2014年公司解散后被收购
双击【VMware-workstation-full-10.0.0-1295980.exe】文件,安装即可:
选择自定义:
注意,这里的安装目录不要选择C盘,选择其他空间大点点盘,路径不要带中文,然后下一步:
这里的共享虚拟机存储路径需要选择一个非C盘,非中文目录的路径。下面的端口是443,如果你本地安装了SVN的话,那可能会冲突,那就修改成其他端口即可。
然后下一步:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Q8rVMLLH-1673165466128)(https://gitee.com/xiaochen1106/MyImages/raw/master/java/202301081607789.png)]
等待几分钟之后,就会弹出下面界面需要你输入密钥了:
打开课件里面的【密钥.txt】文件,拷贝密钥出来粘贴进去即可:
点击【输入】即可:
安装成功后桌面出现下面图标:
那么怎么验证我们安装成功呢?
打开本地网络链接:
如果出现两个VMware的网络的话,那就是安装成功了,没有这个的话,到时候是无法和虚拟机中的系统进行通信的。
可能出现的问题:安装完成后不能看到屏幕,即红蜘蛛控屏出现问题;
分析原因:红蜘蛛客户端使用了vmware的虚拟网卡作为网卡了,而该网卡的Ip和教师机不在同一网段;
解决方法:
1、vmware是一个虚拟机软件,在Vmware上可以新建不同的虚拟机,而虚拟机是作为宿主机的一个文件而存在的,默认Vmware是安装在C盘,而虚拟机又安装在vmware目录下面的,也就是说虚拟机是在系统盘(C盘),如果宿主机重新安装系统,会导致C盘被格式化,就会让已经安装好的虚拟机被格式化了。所以需要修改虚拟机存储位置,来规避这个问题;
2、修改虚拟机的默认位置(也可以在安装时修改):编辑 -> 首选项
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vLAapZbk-1673165466133)(https://gitee.com/xiaochen1106/MyImages/raw/master/java/202301081607798.png)]
1、创建虚拟机
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-BTx106hO-1673165466134)(https://gitee.com/xiaochen1106/MyImages/raw/master/java/202301081607799.png)]
2、导入导出:可以把已经安装好的虚拟机导出,以后需要时再导入
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wAhEnaFt-1673165466134)(https://gitee.com/xiaochen1106/MyImages/raw/master/java/202301081607800.png)]
3、备份还原
注意:初学者配置快照非常重要,如果Linux中软件安装失败了,可以恢复到指定的快照版本再来一次,否则删除不干净需要重新安装Linux,非常麻烦;
打开我们的虚拟机:
我们开始新建虚拟机:
选择自定义即可:
这一步不用改什么,直接下一步:
选择稍候安装操作系统
这里选择Linux和CentOS 64位,因为给大家准备的镜像文件是CentOS 64位的
这里给虚拟机取个名字,容纳后指定一个位置即可:
这里我为虚拟机分配了4个G的内存,根据你电脑实际内存去分配
默认下一步即可:
这里选择单个文件,磁盘大小我分配了20G,根据实际情况分配即可(必须大于9G):
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-mTFzvO8F-1673165466140)(https://gitee.com/xiaochen1106/MyImages/raw/master/java/202301081607817.png)]
此处,点击【自定义硬件】,将不需要的全部移除,像打印机、声卡、USB等去掉:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1sfUkubl-1673165466141)(https://gitee.com/xiaochen1106/MyImages/raw/master/java/202301081607818.png)]
然后点击关闭
最后虚拟机新建完的效果如下:
选择第一个即可
安装需要等待一会,如果静止不动了点话,按回车即可,鼠标移不出来的了的话,按Alt+Ctrl即可将鼠标移出来
等一会之后就会出现如下界面:
这里我们选择中文即可:
点击继续:
软件选择:默认是最小安装的,这里可以选择带有桌面的选择这种模式,选择图示:
安装位置,选择如下:
KDUMP选择如下:不用勾
点击【网络和主机名】:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-m5fc0MUT-1673165466144)(https://gitee.com/xiaochen1106/MyImages/raw/master/java/202301081607829.png)]
点击完成
到此就全部设置完毕了,点击【开始安装】
点击【ROOT密码】,然后设置超级管理员密码即可:
我这里设置的是123456,自己设置的记住就可以了:
等一段时间安装完成之后就是如下界面:
点击【重启】即可
选择第一个,等会后出现下面界面:
点击第一项,需要勾选统一许可:
然后点击【完成配置】,等会后出现下面界面:
直接点击【前进】
继续点击【前进】
点击【前进】
不管,直接点击【前进】
不选择,直接点击【跳过】
这里可以输入你的名字,然后点击【前进】
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xmt0pOqK-1673165466150)(https://gitee.com/xiaochen1106/MyImages/raw/master/java/202301081607844.png)]
我这里设置的是:itsource123456,然后点击【前进】
设置完毕:
我们这里介绍vmware给我们提供的3中模式,它们分别是:
1、Nat网络地址转换模式
(1) 只能单向访问,虚拟机可以通过网络访问到宿主机,宿主机无法通过网络访问到虚拟机;
(2) 如果linux上的ip地址是自动获取的,是可以通过宿主机访问虚拟机的,但是要保证linux的ip地址网段和宿主机的虚拟网卡的网段一致;
(3) 只要宿主机可以联网,那么虚拟机就可以联网,因为net方式联网是依靠宿主机的ip;
(4) Net方式的ip地址是由虚拟网卡分配的;
2、Bridged Adapter 桥接模式
(1) 可以相互访问,因为虚拟机在真实网络段中有独立IP,主机与虚拟机处于同一网络段中,彼此可以通过各自IP相互访问;
(2) 桥接模式的ip地址是由路由器分配的;如果宿主机能联网,虚拟机不一定能联网,如果宿主机不能联网,虚拟机也可以联网;
3、Host-only Adapter 主机模式
Host-Only模式其实就是NAT模式去除了虚拟NAT设备,然后使用VMware Network Adapter VMnet1虚拟网卡连接VMnet1虚拟交换机来与虚拟机通信的,Host-Only模式将虚拟机与外网隔开,使得虚拟机成为一个独立的系统,只与主机相互通讯
通过上图,我们可以发现,如果要使得虚拟机能联网,我们可以将主机网卡共享给VMware Network Adapter VMnet1网卡,从而达到虚拟机联网的目的
注:宿主机,就是提供给虚拟机环境的主机。这里指的就是我们的windows系统主机;
类似于windows下面的cmd:
注意:此种方式要求你必须在Linux电脑旁边
出现如下界面:
注:如果Linux处理休眠状态:按下回车键和ESC键或者EXIT重新登录
即:服务端有ssh的支持,客户端需要有连接linux的客户端软件;
ps -ef|grep ssh
注意进程号为1268的进程,就是ssh服务正在运行
思考:如要在windows中连接linux,使用什么软件呢?
1、查看当前所在目录(用处:拷贝目录到一些配置文件):pwd
2、切换目录(需要到特定的目录执行命令):cd 目录名
3、文件名和目录名称补全:Tab
4、查看目录文件信息:
(1) ls //列出文件信息
(2) ls -l //以详细信息方式列出文件信息
(3) ls –a //列出所有文件和文件夹,包含隐藏文件
(4) ls -al //以详细信息方式列出所有文件信息,包含隐藏文件
(5) ls 目录名 //查看该目录的文件信息
(6) ll //等于ls -l
5、查看当前用户:
(1) whoami //查看当前操作用户
(2) who am i //查看当前登录用户(有可能是有多个的)的信息
6、查找命令:
(1) 最强大的搜索命令:find 查找各种文件的命令
(2) 在文件资料中查找文件:locate
(3) 搜索命令所在的目录及别名信息:which
(4) 搜索命令所在的目录及帮助文档路径:whereis
7、切换用户:
(5) su 用户名:切换用户
(6) su root:普通用户切到root用户,需要输入密码;
(7) su itsource:切换到itsource的用户
(8) exit //注销当前用户,返回前一用户
在学习文件相关命令之前,我们先来看一Linux的文件系统
/bin 存放二进制可执行文件(命令),所有用户都可以使用
/sbin 存放二进制可执行文件,只有root用户可以使用
/boot 系统启动需要的核心文件
/dev 设备文件
/home 用户的主目录,每一个非root用户都会在home有一个为用户名的文件夹
/lib 系统共享动态链接库
/mnt 挂载目录,通常挂载到该目录下
/etc 存放系统配置文件目录
/etc/passswd 用户信息文件
/etc/group 用户组信息文件
/var 用来存放常态性变动的文件,经常发生变化的文件。比如缓存、登录文件,mysql数据库文件等
/tmp 临时目录,用来存放临时文件
/proc 虚拟目录,是内存的映射,可以访问到内存中的系统信息
/sys 和proc类似,存放和内核相关的信息和数据
/root root用户的主目录
/usr 存放应用程序和文件(类似于windows的system32、program files目录)
/usr/local/src 所有应用程序包都放这儿
/usr/local/ 所有的应用程序都安装在这个目录。
/usr/bin、/usr/sbin:这是对/bin、/sbin的一个补充
注:
/usr:系统级的目录,可以理解为C:/Windows/,/usr/lib理解为C:/Windows/System32
/usr/local:用户级的程序目录,可以理解为C:/Program Files/,用户自己编译的软件默认会安装到这个目录下;
/opt:用户级的程序目录,可以理解为D:/Program Files/,opt有可选的意思,这里可以用于放置第三方大型软件(或游戏),当你不需要时,直接rm -rf掉即可
1、相对路径和绝对路径:
(1) 绝对路径:以/(根目录)开头的路径(例如:/home、/etc/passwd)
(2) 相对路径:以./开头的路径,很多时候./可以省略(指相对于当前路径):
① ./ 表示当前目录(可以省略)./usr/loccal/=usr/local
② …/ 表示上一级目录
注:路径的最后一个斜杠可以省略
2、创建目录:
(1) mkdir 目录名 //创建一个目录
(2) mkdir -p 目录1/目录2/目录3 //递归创建目录
3、删除目录:rm -rf 路径 //可以删除文件和目录 -r(递归) -f(暴力)
4、移动目录/修改文件名:mv dir1 dir2 如果dir2不存在,将dir1目录名修改为dir2(重命名),否则将dir1目录移动到dir2中;
5、复制目录:
(1) cp -rf dir1 dir2 //将dir1复制一份到dir2目录(包含目录内容一起复制)
(2) cp -rf dir1/* dir2 //直接复制内容(非常重要)
6、打包和解压:
(1) tar -czvf tom.tar.gz tom – 打包
(2) tar -xzvf tom.tar.gz -C /usr/local – 解包
(3) 参数:
-c 创建一个新的tar文件 -t 参看压缩文件内容
-v 显示运行过程信息 -j 调用bzip2压缩命令执行压缩
-f 指定文件名称 -C 指定需要解压到的目录
-z 调用gzip压缩命令执行压缩
-x 解开tar文件
1、创建文件:touch 文件路径 //创建一个空白文件
2、查看文件内容:cat //将文件内容直接显示出来
3、打开文件、保存、关闭文件(vi命令模式下使用)
vi filename //打开filename文件
:w //保存文件
:w vpser.net //保存至vpser.net文件
:q //退出编辑器,如果文件已修改请使用下面的命令 ,q(quit)
:q! //退出编辑器,且不保存
:wq //退出编辑器,且保存文件
注意:按i(insert)进入编辑,按Ctrl + C 退出编辑,退出编辑输入:wq退出编辑器
小结:
我们学习了一些常用命令和文件相关命令,其实Linux还有有很多命令,不用死记硬背。会使用一些常用的就ok,用到时查看命令文档或网上搜索即可
注意:在linux中Ctrl+s表示锁住屏幕,按住Ctrl+q解除锁定;
lsof -i:端口号
注意:slof -i 需要 root 用户的权限来执行
案例:
更多 lsof 的命令如下:
lsof -i:8080:查看8080端口占用
lsof abc.txt:显示开启文件abc.txt的进程
lsof -c abc:显示abc进程现在打开的文件
lsof -c -p 1234:列出进程号为1234的进程所打开的文件
lsof -g gid:显示归属gid的进程情况
lsof +d /usr/local/:显示目录下被进程开启的文件
lsof +D /usr/local/:同上,但是会搜索目录下的目录,时间较长
lsof -d 4:显示使用fd为4的进程
lsof -i -U:显示所有打开的端口和UNIX domain文件
还可以使用下面方式查看端口使用情况:
netstat -tunlp 用于显示 tcp,udp 的端口和进程等相关情况:
netstat -tunlp | grep 端口号
案例:
更多命令:
netstat -ntlp //查看当前所有tcp端口
netstat -ntulp | grep 80 //查看所有80端口使用情况
netstat -ntulp | grep 3306 //查看所有3306端口使用情况
上面查询到端口占用情况之后,一般需要杀死这个程序或者进程的话,用下面命令
kill -9 PID
彻底杀死进程PID
特点:
命令:tar -zxvf 压缩包名(后缀为.tar.gz)
例如:将jdk的tar.gz包解压到指定文件夹:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-00mu3NbG-1673165466155)(https://gitee.com/xiaochen1106/MyImages/raw/master/java/202301081607857.png)]
特点:
命令:
rpm -qa 软件名称 :查询软件是否被安装
rpm -ivh 软件包路径 需要安装的包文件 : rpm –ivh xxx.rpm
rpm -e --nodeps 需要卸载的软件包 : 卸载软件(–nodeps 忽略依赖关系并继续操作)
rpm -qa | grep 查询名称 :利用管道模糊查询软件安装情况:
例如: rpm -qa | grep java 检测系统自带的jdk安装包
参数说明:rpm [选项] [参数]
-a:查询所有软件包
-e:删除指定的软件包
-f<文件>:查询拥有指定文件的套件;
-h或–hash:显示进度信息 ,以#显示进度
-i:显示包的详细信息
-i<软件包>或–install<软件包>:安装指定的软件包
-l:显示包的文件列表
-p:查询指定的RPM包
-q:使用询问模式
-U<软件包>或–upgrade<软件包>:升级指定的程序包
-v:显示指令执行详细过程
-vv:详细显示指令执行过程,便于排错
例子:
先检查是否安装JDK:
rpm -qa | grep java
这里默认就有一些,我们先将这些删除掉:
rpm -e --nodeps javapackages-tools-3.4.1-11.el7.noarch
npm:管理套件
-e:删除
--nodeps:不验证套件的相关关联性,就是强制删除
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3dJ5MnZC-1673165466156)(https://gitee.com/xiaochen1106/MyImages/raw/master/java/202301081607859.png)]
报错,说我权限不够,那么可以用下面命令切换用户:
su root
然后输入root密码,我这里是123456
再执行下面命令删除:
rpm -e --nodeps javapackages-tools-3.4.1-11.el7.noarch
rpm -e --nodeps tzdata-java-2019c-1.el7.noarch
rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.242.b08-1.el7.x86_64
rpm -e --nodeps java-1.8.0-openjdk-1.8.0.242.b08-1.el7.x86_64
rpm -e --nodeps java-1.7.0-openjdk-headless-1.7.0.251-2.6.21.1.el7.x86_64
rpm -e --nodeps python-javapackages-3.4.1-11.el7.noarch
rpm -e --nodeps java-1.7.0-openjdk-1.7.0.251-2.6.21.1.el7.x86_64
然后再输入:rpm -qa | grep java,查看下是否还存在Java相关软件
已经清除干净了,现在我们可以安装我们自己下载到JDK了
先到官网上下载JDK,需要下载的格式不是.exe的,而是.rpm的
网址:https://www.oracle.com/java/technologies/downloads/#java8
然后将文件上传到Linux的opt目录中:
然后通过以下命令安装:
rpm -ivh jdk-8u311-linux-x64.rpm
安装完成后,看下JDK是否安装成功,输入下面命令
java
说明已经安装成功了
特点:将所有软件包放到官方服务器上,当进行yum在线安装时,可以自动解决依赖性问题;
缺点:安装过程中,rpm包依赖性太强
yum命令:
1、查询:
(1) yum list --查询所有可用软件包列表
(2) yum search 关键字 --搜索服务器上所有和关键字相关的包
2、安装:
(1) yum -y install 包名 (-y 自动回答yes)
(2) yum安装只写包名即可! eg:yum -y install gcc --c语言编译器
3、升级/卸载
(1) 升级:yum -y update 包名
① update:升级;
② -y:自动回答yes;
(2) 卸载:yum -y remove 包名
① remove:卸载;
② -y:自动回答yes;
首先下载Linux环境下JDK的安装包,网址:https://www.oracle.com/java/technologies/downloads/#java8
我给大家准备好了,地址如下:
链接:https://pan.baidu.com/s/1iCqdBFTyibdwmT7g6sK52w
提取码:w0h4
然后将【jdk-8u341-linux-x64.tar.gz】包上传到【/opt】目录下
然后在opt目录下使用下面命令解压即可:
tar -xvf jdk-8u341-linux-x64.tar.gz
如下,已解压成功:
然后配置环境变量,方法如下:
编辑文件:
vim /etc/profile
再按字母【i】进入编辑模式,然后将下面配置全部拷贝进去,放到文件最后:
export JAVA_HOME=/opt/jdk1.8.0_341
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
然后按【Esc】后再输入【:wq】,表示保存并退出
然后运行下面命令重新加载一下配置:
source /etc/profile
至此,JDK就安装成功了,下面我们来测试下看安装成功没有
依次输入下面命令:
java -version
javac -version
OK,测试成功了,JDK环境就安装好了
上面我们已经安装了JDK了,现在我们开始安装MySQL,我们这里是以RPM方式安装MySQL
先查看当前mysql的安装情况
rpm -qa|grep -i mysql
-q就是 --query ,-a就是--all
|grep mysql就是查含有mysql的包名(grep正则表达式)
可以看到,目前是没有安装mysql的
如果有的话,可以使用下面命令删除:
rpm -e --noscripts 包名 --nodeps
卸载MySQL:
yum remove mysql mysql-server mysql-libs mysql-common
查找之前老版本mysql的目录、并且删除老版本mysql的文件和库
find / -name mysql
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Lvy8yRiS-1673165466160)(https://gitee.com/xiaochen1106/MyImages/raw/master/java/202301081607869.png)]
如果需要删除mysql的目录,则使用下面命令:
rm -rf 目录
确认全部删除了
我这里安装的版本是5.7.40
首先进入opt目录,执行下面命令进行下载:
wget https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
然后执行下面命令进行安装:
rpm -ivh mysql57-community-release-el7-9.noarch.rpm
执行完成后会在/etc/yum.repos.d/
目录下生成两个repo文件mysql-community.repo
mysql-community-source.repo
必须进入到 /etc/yum.repos.d/目录后再执行安装
cd /etc/yum.repos.d/
yum install mysql-server --nogpgcheck //nogpgcheck表示不校验key
下面就表示安装成功了
运行下面命令进行启动:
systemctl start mysqld
设置开机自动启动:
systemctl enable mysqld
其他命令:
# 关闭开机启动
systemctl stop mysqld
# 关闭MySQL
systemctl stop mysqld
# 重启MySQL
systemctl restart mysqld
运行下面命令查看MySQL运行状态:
systemctl status mysqld
如下:
那么如何设置root账户的登录密码呢?
可按照下面步骤修改root账户密码:
1、进入MySQL数据配置文件进行修改
vi /etc/my.cnf
再按字母【i】进入编辑模式,然后将下面这一行拷贝进去,放到最后一行,含义是免密码登录
skip-grant-tables
然后按【Esc】后再输入【:wq】,表示保存并退出
然后重启:
systemctl restart mysqld.service
2、直接免密登录
mysql -uroot -p
此时提示要你输入密码,什么都不用输入,直接回车就可以进入数据库了
3、设置密码
你可以使用以下命令来重置root账户的密码:(我这里设置的是AaBa123456,设置最好不要设置的太简单)
5.7以上版本运行:
update user set password= password("123456")where user='root';
5.7以下版本运行:
update user set authentication_string= password("123456")where user='root';
4、删除免密设置
按照刚才的步骤,进入【my.cnf】文件中,将【skip-grant-tables】代码删除,并保存退出,再重启MySQL服务器即可,这样以后就可以使用123456这个密码进行登录了
安装完的MySQL的默认字符集为 latin1 ,那么如果此时创建表和数据库,或者导入外部带中文的数据,mysql是不支持的。为了要将其字符集改为用户所需要的(比如utf8),就必须改其相关的配置文件。查看默认字符集
show variables like 'character_set%';
执行上面语句如果报下面错:
就执行下面语句:
SET PASSWORD = PASSWORD('AaBa123456'); //MySQL5.7.6版本以前执行这个
ALTER USER USER() IDENTIFIED BY 'AaBa123456'; //MySQL5.7.6版本开始更高版本则执行这个
如果报错:Your password does not satisfy the current policy requirements
那就是密码等级设置的太低了,需要执行下面语句:(需要先登录MySQL,然后执行:use mysql)
//设置密码的验证强度等级(目前我设置等级为低)
set global validate_password_policy=LOW;
还可以设置密码长度:
set global validate_password_length=6;
修改字符集,修改 /etc/my.cnf文件(输入exit或Ctrl + C退出mysql命令窗口):
vi /etc/my.cnf(没有就自己创建一个,vi会自动创建)
执行这个命令后,发现里面没有设置编码的地方,那我们就把下面的配置添加进去,到第三行即可:
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
character-set-server=utf8
先按【i】进入编辑模式,然后将上面配置添加进去,如下:
然后按【Esc】再按【:wq】,表示保存退出,修改完配置,需要重启一下mysql服务,命令如下:
systemctl restart mysqld
重启完之后可以再使用如下命令进入到mysql检查下
mysql -uroot -p123456
-u跟用户名
-p跟密码
输入下面命令检查下:
show variables like 'character_set%';
此时我们发现,编码都已经改成utf8了
上面步骤做完,可以实现本地登录,但如果使用navicat登录的话,会报下面错误:
为了解决这个问题,允许远程访问,需要本地登陆MySQL后执行如下命令
进入MySQL,授权远程连接
grant all privileges on *.* to root@'%' identified by '123456';
这句话的意思是:任意用户使用root用户使用123456密码访问,可以设置成mysql的密码
然后再刷新授权
flush privileges;
然后再使用navicat连接Linux中的mysql,就可以连成功了
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-CvXCBSEV-1673165466164)(https://gitee.com/xiaochen1106/MyImages/raw/master/java/202301081607881.png)]
如上增加远程登录权限后,还是报如下错误的话,就是你的虚拟机上的防火墙没有关
关闭防火墙相关命令:
查看防火墙状态: systemctl status firewalld.service(绿的running表示防火墙开启)
执行关闭命令(立即关闭,立即生效,临时关闭,Linux重启后又会打开): systemctl stop firewalld.service
执行开机禁用防火墙自启命令(永久关闭 - 重启生效,Linux重启后也是关闭状态): systemctl disable firewalld.service
开启防火墙:systemctl start firewalld.service
安装步骤如下:
将安装包【apache-tomcat-8.5.15.tar.gz】解压解压到/usr/local目录中
tar -zxvf /opt/apache-tomcat-8.5.15.tar.gz -C /usr/local/
cd /usr/local/apache-tomcat-8.5.15/bin
./startup.sh
./shutdown.sh
解压文件中目录结构如下:
将SpringBoot项目打包,注意pom.xml中需要加入打包插件:
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0modelVersion>
<groupId>org.examplegroupId>
<artifactId>LinuxSpringBootDemoartifactId>
<version>1.0-SNAPSHOTversion>
<parent>
<groupId>org.springframework.bootgroupId>
<artifactId>spring-boot-starter-parentartifactId>
<version>2.0.5.RELEASEversion>
parent>
<dependencies>
<dependency>
<groupId>org.springframework.bootgroupId>
<artifactId>spring-boot-starter-webartifactId>
dependency>
dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.bootgroupId>
<artifactId>spring-boot-maven-pluginartifactId>
<version>2.3.5.RELEASEversion>
plugin>
plugins>
<finalName>bootfinalName>
build>
project>
我这里生成一个boot.jar,然后上传到opt目录中,如下:
我这个项目非常简单只有一个启动类和一个application.yml,启动类代码:
package cn.itsource;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* 启动类
*
* @author 波波老师(微信 : javabobo0513)
*/
@SpringBootApplication
@RestController
public class App {
@GetMapping("/test")
public String test(){
System.out.println("恭喜你,SpringBoot项目运行成功啦.......");
return "恭喜你,SpringBoot项目运行成功啦.......";
}
public static void main(String[] args){
SpringApplication.run(App.class);
}
}
yml内容:
server:
port: 8001
然后进入opt目录中:cd /opt,然后使用下面命令启动项目:
java -jar boot.jar
然后我们通过浏览器访问:http://120.26.60.94:8001/test,可以返回数据:恭喜你,SpringBoot项目运行成功啦…
页面每刷新一次,控制台就会打印一次日志:恭喜你,SpringBoot项目运行成功啦…,如下:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-DCo7lca2-1673165466166)(https://gitee.com/xiaochen1106/MyImages/raw/master/java/202301081607886.png)]
此时项目虽然启动了,但是当前页面就无法输入其他命令了,此时如果想在后台运行项目的话,可以使用下面命令:
java -jar boot.jar &
此时需要关闭项目的话,需要杀死进程,先通过下面命令查询我们8001占用的进程ID:
netstat -tunlp | grep 8001
然后再杀死进程:
kill -9 20294
如下:
CentOS7下载地址:
链接:https://pan.baidu.com/s/1fSxiUYucG7xWvyN70dGdZg?pwd=1069
提取码:1069
其他相关工具下载地址:
链接:https://pan.baidu.com/s/1zhJiM5QZNlD4ym4iJGtBqQ
提取码:7777
如果本文对你有帮助的话,记得点个赞哦