题记:看完文章你将学到的知识
- 远程连接服务器Linux服务器,将JDK部署好
- 将SpringBoot项目的jar包上传至服务器并且启动
- 一些linux防火墙的知识,开放端口,移除端口,检查端口是否开放,关闭和启动防火墙
- Linux的部分指令:查看一个端口的所有进程,关闭进程,查看进程的PID
第一步 :远程连接Linux服务器,并且下载JDK
用xshell连接服务器。
- 第一个方法下载JDK,使用命令行下载 :yum install java-1.8.0-openjdk* -y 执行完就可以用的。查看电脑上java的信息:java -version
- 第二个方法是在本机上下载Linux的JDK,然后用WINSCP上传到服务器,
- 在usr目录下建立java安装目录:
- 进入usr目录: cd /usr
- 在usr目录下创建java文件: mkdir java
- 去这里:http://www.oracle.com/technetwork/java/javase/downloads/index.html 下载jdk最新版本
- 下载完之后用winscp软件上传到服务器上,上传到:==/usr/java/==目录下
4 - 解压tar.gz 文件:tar -zxvf jdk-13.0.1_linux-x64_bin.tar.gz
- 删除tar.gz文件 :rm -f jdk-13.0.1_linux-x64_bin.tar.gz(这里有个小技巧就是 后面的文件名字太长了,我们可以先输入ls命令,回车 然后再打出文件前面的部分字母,再按tab键,它就会自动补全文件名字和后缀)
- 编辑配置文件(/etc/profile):vim /etc/profile,profile文件里面有服务器的一些信息,也可以配置一些环境信息,配置环境变量。
添加如下内容:JAVA_HOME根据实际目录来
export JAVA_HOME=/usr/java/jdk-13.0.1
export CLASSPATH=$JAVA_HOME/lib/
export PATH=$PATH:$JAVA_HOME/bin
export PATH JAVA_HOME CLASSPATH
- 使修改后的配置生效:source /etc/profile
- 可以在输入:java -version查看有没有配置成功,要是出现版本信息,就成功了。
第二步 :部署和启动springBoot项目的jar包
- 先把jar包用winscp上传到 /home/目录下
- 启动jar包:java -jar test.jar,出现下面的图片,就部署和启动成功了。
测试:
补充的知识:
- 部署完成项目之后,按 ctrl + z 退出项目,出现下面的状况。
(1)CTRL+Z挂起进程并放入后台
(2) jobs 显示当前暂停的进程
(3) bg %N 使第N个任务在后台运行(%前有空格)
(4) fg %N 使第N个任务在前台运行
默认bg,fg不带%N时表示对最后一个进程操作! - 所以此时我再次输入 java -jar test.jar 就会报错,部署失败,端口被已经占用。
- 如何查看端口的被占用情况?
- 用指令:jobs -l 值得一提的是,11323 就是这个进程的PID (每一个进程都会有唯一的PID,在开启的时候产生)
- 用指令:netstat -tunlp|grep 8080 我这里查的是8080端口,作为例子,后面的11902 是PID
- 杀死进程:
第一种方式:kill -9 PID
第二种方式:sudo fuser -k -n tcp 端口
于是进程的状态就改变了:
- 那么防火墙在外来用户与服务器之间起什么作用?
实际上:Linux的防火墙就是可以开启和关闭,开启的时候,就可以通过控制端口的开和关来设置允许外来用户访问与否,因为计算机的通信其中一个环节就是端口通信,需要指明与计算机的哪一个端口通信才行。比如:http://www.haibolo.com:8080/hello 其中就指明的8080端口 - 一些关于防火墙的指令(Centos7.x发行版本):
查看防火墙状态:sudo systemctl status firewalld
开启firewall:service firewalld start
停止firewall:systemctl stop firewalld.service
查询端口是否开放:firewall-cmd --query-port=8080/tcp
开放8080端口:firewall-cmd --permanent --add-port=8080/tcp
移除端口:firewall-cmd --permanent --remove-port=8080/tcp
重启防火墙(修改配置后要重启防火墙!!!):firewall-cmd --reload
希望能对大家有所班组