【Linux】——从0到1的学习,让你熟练掌握,带你玩转Linux,教你安装Java常用软件、及spring boot项目部署
🎼个人主页:【Y小夜】
😎作者简介:一位双非学校的大三学生,编程爱好者,
专注于基础和实战分享,欢迎私信咨询!
🎆入门专栏:🎇【MySQL,Java基础,Rust】
🎈热门专栏:🎊【Python,Javaweb,Springboot】
感谢您的点赞、关注、评论、收藏、是对我最大的认可和支持!❤️
目录
🎈Linux安装
🎁安装步骤
🎁网卡设置
🎁目录功能及介绍
🎈常用命令
🎁初体验
🎟命令
🎟实战
🎟出现乱码
🎟小技巧
🎟Linux命令格式
🎁文件目录操作命令
🎟ls
🎟cd
🎟cat
🎟more
🎟tail
🎟rmdir
🎟rm
🎁拷贝移动命令
🎟cp
🎟mv
🎁打包压缩命令
🎟tar
🎁文本编辑
🎟vi/vim
🎗命令模式
🎗插入模式
🎗底行模式
🎁查找命令
🎟find
🎟grep
🎈软件安装
🎁安装方式
🎁安装jdk
🎁安装Tomcat
🎟验证是否启动成功
🎟防火墙操作
🎟关闭tomcat
🎁安装MySQL
🎟查看并卸载旧版本
🎟开始安装
🎟yum一直尝试其他镜像
🎟启动MySQL
🎟登录Mysql
🎁安装lrzsz
🎈项目部署
🎁手动部署
🎟部署启动
🎟将程序改为后台运行
🎟关闭程序
🎁Shell脚本自动部署项目
🎟基本步骤
🎟安装git
🎟进行克隆
🎟安装Maven
🎟设置maven的本地仓库
🎟创建一个脚本,将脚本内容复制到其中
🎟为用户授权
🎟执行脚本
🎟配置静态ip
🎈Linux安装
🎁安装步骤
详细内容可参考我写的这篇文章:【VMware安装+centos 7Linux系统+MySQL安装】——在Linux系统中安装MySQL步骤,以及遇见的各种问题(如:vm两个虚拟网卡消失、vm网络适配器有感叹号等等)_linux安装的步骤以及遇到的问题-CSDN博客
🎁网卡设置
由于启动服时未加载网卡,导致IP地址初始化失败(可以输入ip addr命令尝试)
修改网络初始化配置,设定网卡在启动时初始化:a
进入文件之中,将此处修改为yes
然后进行重启就可以
🎁目录功能及介绍
🎈常用命令
🎁初体验
🎟命令
🎟实战
🎟出现乱码
如果出现这个中乱码情况,这是编码问题导致的
执行以下两条命令
🎟小技巧
🎟Linux命令格式
🎁文件目录操作命令
🎟ls
🎟cd
🎟cat
🎟more
🎟tail
默认显示最后10行的内容
如果要显示最后n行,可以使用tail -n
🎟rmdir
🎟rm
提醒:千万不要尝试执行rm -rf /*,这个命令会将你的Linux中全部文件都删除
🎁拷贝移动命令
🎟cp
🎟mv
🎁打包压缩命令
🎟tar
🎁文本编辑
🎟vi/vim
🎗命令模式
🎗插入模式
🎗底行模式
🎁查找命令
🎟find
🎟grep
🎈软件安装
🎁安装方式
🎁安装jdk
上传文件,将下载好的压缩包文件上传至Linux中
将安装包解压到 /usr/local 目录下
tar -zxvf jdk-8u171-linux-x64.tar.gz -C /usr/local
配置环境变量,使用vim 修改 /ect/profile 文件,在文件末尾加入如下配置
(输入大写G可以快速到达末尾)
JAVA_HOME=/usr/local/jdk1.8.0_171
PATH=$JAVA_HOME/bin:$PATH
重新加载profile文件,是更改的配置立刻生效
source /etc/profile
检查安装是否成功
java -version
🎁安装Tomcat
上传文件,将下载好的压缩包文件上传至Linux中
将安装包解压到 /usr/local 目录下
tar -zxvf apache-tomcat-7.0.57.tar.gz -C /usr/local/
进入Tomcat的bin目录启动服务
sh startup.sh或者./startup.sh
🎟验证是否启动成功
结果如图所示:
🎟防火墙操作
当防火墙开启时,外部windows系统访问tomca服务器,则无法访问
查看防火墙状态,此时为开始状态
使用 systemctl stop firewalld 命令使得防火墙暂时关闭
然后再次查看状态
firewall-cmd --state
再次用外部windows系统访问tomca服务器,则访问成功
但为了系统安全,我们通常都是开放指定端口号
firewall-cmd --zone=public --add-port=8080/tcp --permanent
这里顺便可以将MySQL的3306端口也开放
firewall-cmd --zone=public --add-port=3306/tcp --permanent
使用命令,使其生效
firewall-cmd --reload
查看开放的端口
firewall-cmd --zone=public --list-ports
🎟关闭tomcat
非特殊情况,不建议使用kill
🎁安装MySQL
🎟查看并卸载旧版本
查看当前Linux中是否有mysql或者时mariadb(系统自带)
rpm -qa|grep mysql
rpm -qa|grep mariadb
这个结果表明,当前不存在mysql,但存在mariadb,我们需要进行卸载
rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64
🎟开始安装
进行上传
创建一个目录
mkdir /usr/local/mysql
将压缩包移动过去
mv mysql-5.7.25-1.el7.x86_64.rpm-bundle.tar.gz /usr/local/mysql/
将压缩包解压到该目录中
tar -zxvf mysql-5.7.25-1.el7.x86_64.rpm-bundle.tar.gz
这里的.rpm文件相当于windows中的.exe文件,所以我们需要按顺序安装
🎟yum一直尝试其他镜像
可以先检查一下网络是否可以ping通,如果不能ping通,可以看我上一篇linux文章
若能ping通,那我们就要更换镜像
先去阿里云上面看一下自己的教程
centos镜像_centos下载地址_centos安装教程-阿里巴巴开源镜像站
下面我以centos7举例子
先备份原yum配置文件
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
下载了阿里云提供的CentOS 7的Yum源配置文件,并将其覆盖到系统中
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
清除旧缓存
sudo yum clean all
生成新缓存
sudo yum makecache
## 生成缓存
查看是否有效
yum repolist
🎟启动MySQL
查看MySQL是否启动
systemctl status mysqld
开启MySQL,查看状态
systemctl start mysqld
设置开机自动开启MySQL服务
systemctl enable mysqld
使用命令查看已经启动的服务(这个命令只有安装net-tools后才可以使用)
netstat -tunlp
🎟登录Mysql
第一次登录先查看临时密码
cat /var/log/mysqld.log|grep password
开始登录
mysql -uroot -p
然后输出初始密码,就可以登录进来了
然后修改MySQL密码:
设置密码最低位数
set global validate_password_length=4;
设置安全等级
set global validate_password_policy=LOW;
设置密码(这里我设为root)
set password=password('root');
开启访问权限,从外部也可以访问mysql
grant all on *.* to 'root'@'%' identified by 'root';
刷新权限
flush privileges;
然后可以退出,使用新密码进行登录
🎁安装lrzsz
安装完成输入rz命令可以上传压缩包以及文件等,如果远程连接工具上有,则无需安装
进行搜索lrzsz (这里我已经安装好了)
yum list lrzsz
若要安装则执行
yum install lrzsz.x86_64
🎈项目部署
🎁手动部署
🎟部署启动
拿到一个Java项目,注意要先在属性中配置,在属性里加跳过测试:
将其打成一个包
找到这个jar包
在Linux中建立一个目录
mkdir /usr/local/app
上传文件之后,将文件移动到创建目录下
mv springcache-demo-1.0-SNAPSHOT.jar /usr/local/app
启动该程序
java -jar springcache-demo-1.0-SNAPSHOT.jar
🎟将程序改为后台运行
将项目于进行在后台运行,并将日志文件输出在test1.log中
nohup java -jar springcache-demo-1.0-SNAPSHOT.jar &> test1.log &
然后可以自己去访问一下端口
使用more test1.log 查看日志文件
🎟关闭程序
查看进程
ps -ef|grep java
杀死进程
kill -9 124664
再次查询
🎁Shell脚本自动部署项目
🎟基本步骤
🎟安装git
🎟进行克隆
克隆完毕
🎟安装Maven
解压后,进行环境变量的配置
vim /etc/profile
export MAVEN_HOME=/usr/local/apache-maven-3.5.4
PATH=$JAVA_HOME/bin:$MAVEN_HOME/bin:$PATH
重新加载文件
source /etc/profile
查看版本
mvn -version
🎟设置maven的本地仓库
创建文件夹
mkdir repo
进入maven中
cd apache-maven-3.5.4/
然后进入conf中
进入settings中,加入
a
/usr/local/repo
🎟创建一个脚本,将脚本内容复制到其中
注意脚本中的jar包名称,要与pom.xml中的相同
#!/bin/sh
echo =================================
echo 自动化部署脚本启动
echo =================================
echo 停止原来运行中的工程
APP_NAME=reggie
tpid=`ps -ef|grep $APP_NAME|grep -v grep|grep -v kill|awk '{print $2}'`
if [ ${tpid} ]; then
echo 'Stop Process...'
kill -15 $tpid
fi
sleep 2
tpid=`ps -ef|grep $APP_NAME|grep -v grep|grep -v kill|awk '{print $2}'`
if [ ${tpid} ]; then
echo 'Kill Process!'
kill -9 $tpid
else
echo 'Stop Success!'
fi
echo 准备从Git仓库拉取最新代码
cd /usr/local/reggie
echo 开始从Git仓库拉取最新代码
git pull
echo 代码拉取完成
echo 开始打包
output=`mvn clean package -Dmaven.test.skip=true`
cd target
echo 启动项目
nohup java -jar reggie.jar &> reggie.log &
echo 项目启动完成
🎟为用户授权
将所有的权限都给它
🎟执行脚本
启动脚本(可能第一次比较慢,因为maven仓库中没东西)
没有target去把原项目中的gitignore里面的/target给删了,在上传一次就行
查看日志,如果报下面错误的
将pom文件这个改为false,上传gitee,重新拉取
再次运行.sh文件,部署成功
🎟配置静态ip
这个我没有实操,没设置,如果有具体问题的话,可以在评论区讨论