您现在的位置是:首页 >其他 >瑞吉外卖Linux网站首页其他
瑞吉外卖Linux
1、linux简介
Linux系统版本
Linux系统分为内核版和发行版
内核版:
由LinusTorvalds及其团队开发、维护
免费、开源
负责控制硬件
发行版:
基于Linux内核版进行扩展
由各个Linux厂商开发、维护
有收费版本和免费版本
2、linux安装
Linux系统的安装方式
物理机安装:直接将操作系统安装到服务器硬件上
虚拟机安装:通过虚拟机软件安装
3、网卡
ip addr
3.1网卡设置
3.2安装SSH连接工具
SSH(Secureshell),建立在应用层基础上的安全协议
企业linux安装在服务器上,需要我们远程连接。
使用:xshell
4、目录介绍
5、安装方式
5.1安装jdk
//注意jdk的位置
JAVA_HOME=/usr/local/jdk1.8.0_171
PATH=$JAVA_HOME/bin:$PATH
5.2安装Tomcat
5.2.1验证是否成功
5.2.2防火墙操作
查看防火墙状态
systemctl status firewalld
或
firewall-cmd --state
暂时关闭防火墙
systemctl stop firewalld
永久关闭防火墙
systemctl disable firewalld
开启防火墙
systemctl start firewalld
开放指定端口
firewall-cmd --zone=public --add-port=8080/tcp --permanent
关闭指定端口
firewall-cmd --zone=public --remove-port=8080/tcp --permanent
立即生效
firewall-cmd --reload
查看开放的端口
firewall-cmd --zone=public --list-ports
注意:
1、systemct是管理Linux中服务的命令,可以对服务进行启动、停止、重启、查看状态等操作
2、firewall-cmd是Linux中专门用于控制防火墙的命令
3、为了保证系统安全,服务器的防火墙不建议关闭
5.2.3停止Tomcat服务的方式:
①运行Tomcat的bin目录中提供的停止服务的脚本文件shutdwnoch
sh shutdown.sh
./shutdown.sh
②结束Tomcat进程
查看Tomcat进程,获得进程id
ps -ef | grep tomcat
注意:
kill 命令是Linux提供的用于结束进程的命令,-9表示强制结束
5.3安装MySQL
①:检测当前系统中是否安装MySQL数据库
rpm -qa
查询当前系统中安装的所有软件
rpm -qa | grep mysql
查询当前系统中安装的名称带mysql的软件
rpm -qa | grep mariadb
查询当前系统中安装的名称带mariadb的软件
RPM(Red-HatPackageManager)RPM软件包管理器,是红帽Linux用于管理和安装软件的工具
注意事项:
如果当前系统中已经安装有MySQL数据库,安装将失败。Centos7自带mariadb,与MySQL数据库冲爽
②:卸载已经安装的冲突软件
rpm -e --nodeps 软件名称 卸载软件
rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.×86_64
③:将资料中提供的MySQL安装包上传到Linux并解压
mkdir /usr/loca/mysql
tar-zxvf mysql-5.7.25-1.el7.x86_64.rpm-bundle.tar.gz-c /usr/local/mysql
④:按照顺序安装rpm软件包
rpm -ivh mysql-community-common-5.7.25-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.25-1.el7.x86_64.rpm
rpm -ivh mysql-community-devel-5.7.25-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-compat-5.7.25-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.25-1.el7.x86_64.rpm
yum install net-tools
rpm -ivh mysql-community-server-5.7.25-1.el7.x86_64.rpm
检测依赖失败:
因为yum安装了旧版本的gpg keys造成的
给后缀添加"--force --nodeps"即可
eg:
rpm -ivh mysql-community-common-5.7.25-1.el7.x86_64.rpm --force --nodeps
说明1:安装过程中提示缺少net-tools依赖,使用yum安装
说明2:可以通过指令升级现有软件及系统内核
yum update
⑤:启动mysql(注意不要粘贴空格)
systemctl status mysqld 查看mysql服务状态
systemctl start mysqld 启动mysq服务
systemctl enable mysqld 开机启动mysq服务
netstat -tunlp或netstat -tunlp l grep mysql 查看已经启动的服务
ps -ef | grep mysql 查看mysql进程
⑥登录MySQL数据库,查阅临时密码
cat /var/log/mysqld.log 查看文件内容
cat /var/log/mysqld.log | grep password 查看文件内容中包含password的行信息
注意:
[Note] A temporary password is generated for root@localhost: IAzt_RVda7sD
冒号后面的是密码,注意空格(不要空格)
⑦:登录MySQL,修改密码,开放访问权限
mysql -uroot -p 登录mysql(使用临时密码登录)
#修改密码
set global validate_password_length=4; 设置密码长度最低位数
set global validate_password_policy=Low; 设置密码安全等级低,便于密码可以修改成root
set password = password('root'); 设置密码为root
#开启访问权限
grant all on *.* to 'root'@'%'identified by 'root';
flush privileges; 刷新权限
⑧:测试MySQL数据库是否正常工作
show databases;
5.4安装lrzsz
1、搜索lrzsz安装包,命令为yum list lrzsz
2、使用yum命令在线安装,命令为 yum install lrzsz.x86_64
注意:
Yum(全称为YellowdogUpdater,Modified)是一个在Fedora和RedHat以及CentOs中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖关系,并且一次安装所有依赖的软件包,无须繁项地一次次下载、安装。
6、项目部署
6、1手工部署项目(复杂)
手动打包,上传jar包 。通过命令运行
①:在IDEA中开发SpringBoot项目并打成jar包
②:将jar包上传到Linux服务器
eg:mkdir /usr/local/app
创建目录,将项目jar包放到此目录
③:启动SpringBoot程序
java -jar jar包名字
④:检查防火墙,确保8080端口对外开放,访问SpringBoot项目
使用防火墙部分命令
⑤:改为后台运行SpringBoot程序,并将日志输出到日志文件(linux关闭还能运行)
&>:日志文件名字(当前目录创建)
&:表示程序在后台执行
eg:nohup java -jar jar包名字 &> 日志文件名字 &
目前程序运行的问题:
a.线上程序不会采用控制台霸屏的形式运行程序,而是将程序在后台运行
b.线上程序不会将日志输出到控制台,而是输出到日志文件,方便运维查阅信息
⑥:停止SpringBoot程序
查询进程
ps -ef | grep java
删除
kill -9 对应的进程号
6.2通过She脚本自动部署项目
①:在Linux中安装Git
yum list git 列出git安装包
yum install git 在线安装git
②:使用Git克隆代码
cd /usr/local
git clone https://gitee.com/chuanzhiBoke/hellowortd.git
③:将资料中提供的maven安装包上传到Linux,在Linux中安装maven
tar -zxvf apache-maven-3.5.4-bin.tar.gz -C /usr/local/
---------------------------------------------------------------
vim /etc/profile 修改配置文件加入以下内容
export MAVEN_HOME=/usr/local/apache-maven-3.5.4
export PATH=$JAVA_HOME/bin:$MAVEN_HOME/bin:$PATH---------------------------------------------------------------
source /etc/profile
mvn -version
---------------------------------------------------------------
修改配置文件
vim /usr/local/apache-maven-3.5.4/conf/settings.xml
如下:
<localRepository>/usr/local/repo</localRepository>
④:将资料中提供的Shel脚本文件复制到Linux
#!/bin/sh
echo =================================
echo 自动化部署脚本启动
echo =================================
echo 停止原来运行中的工程
APP_NAME=helloworld
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/helloworld
echo 开始从Git仓库拉取最新代码
git pull
echo 代码拉取完成
echo 开始打包
output=`mvn clean package -Dmaven.test.skip=true`
cd target
echo 启动项目
nohup java -jar helloworld-1.0-SNAPSHOT.jar &> helloworld.log &
echo 项目启动完成
⑤为用户授权
⑦:设置静态ip
修改文件
vim /etc/sysconfig/network-scripts/ifcfg-ens33
⑧重启网络服务
systemctl restart network
注意:重启完网络服务后ip地址已经发生了改变,此时Finalshell已经连接不上Linux系统
需要创建一个新连接才能连接到Linux。