Linux超详细的了解

文章目录

前言

一、我们为什么要学习Linux?

二、学完之后能干什么?

Linux的简介

  • Linux是一套免费使用和自由传播的操作系统

不同应用领域的主流操作系统

  • 桌面操作系统
  • 服务器操作系统
  • 移动设备操作系统
  • 嵌入式操作系统

Linux系统历史

Linux系统各版本

Linux的安装

安装方式介绍

安装Linux

  • 安装方式---安装VMWare

​ 网盘链接:https://pan.baidu.com/s/1FTTbDikTPY471qyrnVRJjg?pwd=1231 提取码:1231

从网盘下载后,自己自行去安装,点击打开后,不断点击下一步即可。

  • 安装CentOS镜像

    CentOS镜像的下载自行去官网下载安装即可(建议下载CentOS7版本)。

网卡设置

即开启虚拟机后,依次输入以上命令:


然后保存退出,重新启动虚拟机即可。

输入命令"ip addr"即可查看到该虚拟机的ip地址。

安装SSH连接工具

finalshell软件下载网盘链接:链接:https://pan.baidu.com/s/1yPlehBAxJnXWaB9t05jlWw

提取码:qwfk

下载安装完finalshell后,接下来就是连接虚拟机了。

finalShell连接虚拟机

finalShell连接虚拟机的前提条件是你的虚拟机处于开启状态。

​ 首先点击运行finalShell,然后进行以下操作:

Linux和Windows目录结构对比

Linux目录介绍

Linux常用命令

Linux命令初体验

  • 常用命令:
java 复制代码
ls //查看当前目录下的内容
pwd //查看当前所在的目录
cd [目录名] //切换目录
touch [文件名] //如果文件不存在,则新建文件
mkdir [目录名] //创建目录
rmdir [目录名] //删除目录
rm [目录名] //删除指定文件
echo '内容' >> [目录名] //把"内容"追加到目录下
source [目录名] //刷新目录

文件目录命令

ls命令

cd命令

cat命令

more命令

tail命令

mkdir命令

rmdir命令

rm命令

拷贝移动命令

cp命令

mv命令

打包压缩命令

tar命令

文本编辑命令

查找命令

find命令

grep命令

软件安装

软件安装方式

下面所涉及的软件安装的软件可自行去官网进行下载,也可通过网盘获取。

网盘地址:链接:https://pan.baidu.com/s/1S2hwxffZ0ihBLpkgXtfSew 提取码:m0o6

安装jdk

  • 安装jdk,使用二进制发布包安装
  • 解压安装包
java 复制代码
tar -zxvf jdk-8u171-linux-x64.tar.gz -C /usr/local
  • 修改配置
java 复制代码
JAVA_HOME=/usr/local/jdk1.8.0_171
PATH=$JAVA_HOME/bin:$PATH
  • 重新加载profile文件
java 复制代码
source /etc/profile

安装Tomcat

(1)操作步骤:

  • 解压安装包
java 复制代码
tar -zxvf apache-tomcat-7.0.57.tar.gz -C /usr/local
  • 启动服务
java 复制代码
sh startup.sh 或 ./startup.sh

(2)验证Tomcat启动是否成功

  • 在浏览器验证是否可以启动tomcat

这是由于防火墙处于开启状态,把该网站拦截了,只需要关闭防火墙即可。

  • 再次在浏览器验证

(3)停止Tomcat服务的方式

安装MySQL

  • 解压包
java 复制代码
mkdir /usr/local/mysql
 tar -zxvf mysql-5.7.25-1.el7.x86_64.rpm-bundle.tar.gz -C /usr/local/mysql
  • 安装顺序命令
java 复制代码
 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 

安装lrzsz

  • lrzsz:用于文件上传和下载的工具
  • 通过以下命令弹出上传窗口
java 复制代码
[root@localhost ~]# rz

项目部署

手工部署项目

①在IDEA中新建一个项目,并进行打包(jar包)

②将打包好的项目的jar包上传到Linux服务器

​ ③启动SpringBoot程序


④检查防火墙,确保8080端口对外开放,在浏览器访问SpringBoot项目

​ 注意:没有开放端口的话,需要先进行端口对外开放。

开放指定端口的命令依次为:

java 复制代码
systemctl start firewalld //开启防火墙
 //开放指定的端口  如开放8080端口:firewall-cmd --zone=public  --add-port=8080/tcp --permanent 
firewall-cmd --zone=public  --add-port=端口号/通讯协议 --permanent 
firewall-cmd --reload //重新启动防火墙 

在浏览器上访问SpringBoot项目

⑤改进

通过Shell脚本自动部署项目

  • 操作步骤:

    ①在Linux中安装Git

    java 复制代码
    yum list Git
    yum install git

②使用Git克隆代码

③:上传maven安装包,并在Linux中安装maven

  • 在内容中添加:
java 复制代码
export MAVEN_HOME=/usr/local/apache-maven-3.5.4
export PATH=$JAVA_HOME/bin:$MAVEN_HOME/bin:$PATH

修改settings.xml配置文件内容

java 复制代码
<localRepository>/usr/local/repo</localRepository>

④把Shell脚本文件复制到Linux

bootStart.sh文件:

java 复制代码
#!/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 项目启动完成
    

注意:复制后,在bootStart.sh中需要G注意三处地方

注意:一定要修改正确,否则在执行shell脚本文件时,在日志中报错:"Error: Unable to access jarfile helloworld-0.0.1-SNAPSHOT.jar"

⑤为用户授权


⑥执行shell脚本文件

java 复制代码
./bootStart.sh

⑦设置静态ip

⑧重启网络服务

相关推荐
LinuxST6 分钟前
27、基于Firefly-rk3399中断休眠唤醒实验(按键中断)
linux·开发语言·stm32·嵌入式硬件
呼啦啦呼啦啦啦啦啦啦10 分钟前
在win10环境部署opengauss数据库(包含各种可能遇到的问题解决)
数据库
跳动的梦想家h12 分钟前
黑马点评 秒杀下单出现的问题:服务器异常---java.lang.NullPointerException: null(已解决)
java·开发语言·redis
苹果醋315 分钟前
前端面试之九阴真经
java·运维·spring boot·mysql·nginx
m0_7482302131 分钟前
mysql约束和高级sql
数据库·sql·mysql
Diamond技术流32 分钟前
从0开始学习Linux——环境变量详解
linux·服务器·学习·centos·软件安装·环境变量
疯狂吧小飞牛34 分钟前
openssl创建自签名证书
linux·服务器·ssl
刘艳兵的学习博客38 分钟前
刘艳兵-DBA046-ASSM表空间的全表扫描范围由哪些因素综合确定?
数据库·sql·oracle·刘艳兵
哎呦没38 分钟前
Spring Boot OA:企业办公自动化的高效路径
java·spring boot·后端
真心喜欢你吖38 分钟前
Spring Boot与MyBatis-Plus的高效集成
java·spring boot·后端·spring·mybatis