Linux学习【教程+实操】【超基础】

链接:资料提取码:6klp

今日内容

  • Linux简介
  • Linux安装
    • 网卡设置
    • 安装SSH连接工具
    • Linux和Windows目录结构对比
  • Linux常用命令
    • Linux命令初体验
    • 文件目录操作命令
    • 拷贝移动命令
    • 打包压缩命令
    • 文本编辑命令
    • 查找命令
  • Linux软件安装
    • 软件安装方式
    • 安装jdk(采用二进制发布包安装)
    • 安装Tomcat
    • 安装MySQL
    • 安装lrzsz(文件下载和上传的工具)
  • 项目部署
    • 手工部署项目
    • 通过Shell脚本自动部署项目(需要Git基础)

Linux简介

1. 不同应用领域的主流操作系统
	* 桌面操作系统
		* Window(用户数量最多)、Mac OS(操作体验好,办公人士首选)、Linux(用户数量少)
	* 服务器操作系统
		* UNIX(安全、稳定、付费)
		* Linux(安全、稳定、免费、占有率高)
		* Window Server(付费、占有率低)
	* 移动设备操作系统
		* Android(基于Linux、开源、主要用于智能手机、平板电脑和智能电视)
		* iOS(苹果公司开发、不开源、用于苹果公司的产品,例如:iPhone、iPad)
	* 嵌入式操作系统
		* Linux(机顶盒、路由器、交换机)
2. Linux发展历史
	* 时间:1991年
	* 地点:芬兰赫尔辛基大学
	* 人物:Linus Torvalds(21岁)
	* 语言:C语言、汇编语言
	* logo:企鹅
	* 特点:免费、开源、多用户、多任务
3. Linux系统版本
	* Linux系统分为内核版和发行版
	* 内核版
		* 由Linus Torvalds及其团队开发、维护
		* 免费、开源
		* 负责控制硬件
	* 发行版
		* 基于Linux内核版进行拓展
		* 由各个Linux厂商开发、维护
		* 有收费版本和免费版本
		
	* Linux系统发行版:
		* Ubuntu:以桌面应用为主
		* RedHat:应用最广泛、收费
		* CentOS:RedHat的社区版、免费
		* openSUSE:对个人完成免费、图形界面华丽
		* Fedora:功能完备、快速更新、免费 
		* 红旗Linux:北京中科红旗软件技术有限公司开发

————————————————————————————————————————

Linux安装

Linux学习【教程+实操】【超基础】_第1张图片

采用虚拟机安装
Linux学习【教程+实操】【超基础】_第2张图片
(笔者安装VMware时:vmware安装问题:Microsoft Runtime DLL安装程序未能完成安装【已解决】:卸载干净重新装: 可以通过这个文章看看自己有没有卸载干净)
Linux学习【教程+实操】【超基础】_第3张图片
打开VMware,点击 创建新的虚拟机
Linux学习【教程+实操】【超基础】_第4张图片
下一步
Linux学习【教程+实操】【超基础】_第5张图片
下一步
Linux学习【教程+实操】【超基础】_第6张图片
下一步
Linux学习【教程+实操】【超基础】_第7张图片
下一步
Linux学习【教程+实操】【超基础】_第8张图片
下一步
Linux学习【教程+实操】【超基础】_第9张图片
下一步
Linux学习【教程+实操】【超基础】_第10张图片
Linux学习【教程+实操】【超基础】_第11张图片
Linux学习【教程+实操】【超基础】_第12张图片
这里使用我们下载好的镜像
Linux学习【教程+实操】【超基础】_第13张图片
Linux学习【教程+实操】【超基础】_第14张图片
下一步
Linux学习【教程+实操】【超基础】_第15张图片
下一步
Linux学习【教程+实操】【超基础】_第16张图片
下一步
开机后 鼠标点击黑色屏幕 然后鼠标消失
(鼠标出现是ctrl+alt)如下面出现弹框 可以x
然后键盘上下键控制
Linux学习【教程+实操】【超基础】_第17张图片
下一步
Linux学习【教程+实操】【超基础】_第18张图片
等 然后下一步
Linux学习【教程+实操】【超基础】_第19张图片
等 然后下一步 点击开始安装
Linux学习【教程+实操】【超基础】_第20张图片
等 然后下一步 设置root密码
Linux学习【教程+实操】【超基础】_第21张图片
Linux学习【教程+实操】【超基础】_第22张图片
Linux学习【教程+实操】【超基础】_第23张图片





下一步
Linux学习【教程+实操】【超基础】_第24张图片
Linux学习【教程+实操】【超基础】_第25张图片
完成界面
Linux学习【教程+实操】【超基础】_第26张图片

网卡设置

Linux学习【教程+实操】【超基础】_第27张图片
Linux学习【教程+实操】【超基础】_第28张图片
输入完回车
Linux学习【教程+实操】【超基础】_第29张图片
i进行插入 修改如下图 再按ESC 再输入*:wq*
Linux学习【教程+实操】【超基础】_第30张图片
重启
Linux学习【教程+实操】【超基础】_第31张图片
ip地址出现
Linux学习【教程+实操】【超基础】_第32张图片

安装SSH连接工具

Linux学习【教程+实操】【超基础】_第33张图片
Linux学习【教程+实操】【超基础】_第34张图片
Linux学习【教程+实操】【超基础】_第35张图片
Linux学习【教程+实操】【超基础】_第36张图片
Linux学习【教程+实操】【超基础】_第37张图片
再点击 最下面的 确定

下图 双击一下 Centos7就好了
Linux学习【教程+实操】【超基础】_第38张图片
(连接超时【已解决】:
原因:网络连接中无VMnet1和VMnet8,设备管理器中两者出现黄色感叹号
解决:卸载VMware干净之后 用CCleaner工具清理 重装VMware
可以通过这个文章看看自己有没有卸载干净
CCleaner工具下载)

连接成功

Linux和Windows目录结构对比

Linux学习【教程+实操】【超基础】_第39张图片
————————————————————————————————————————

Linux常用命令

Linux命令初体验

Linux学习【教程+实操】【超基础】_第40张图片
Linux学习【教程+实操】【超基础】_第41张图片
Linux学习【教程+实操】【超基础】_第42张图片

Linux学习【教程+实操】【超基础】_第43张图片
Linux学习【教程+实操】【超基础】_第44张图片
Linux学习【教程+实操】【超基础】_第45张图片

文件目录操作命令

Linux学习【教程+实操】【超基础】_第46张图片

Linux学习【教程+实操】【超基础】_第47张图片
Linux学习【教程+实操】【超基础】_第48张图片
Linux学习【教程+实操】【超基础】_第49张图片
因为现在登录的用户是root用户,root用户的home目录就是/root
Linux学习【教程+实操】【超基础】_第50张图片
Linux学习【教程+实操】【超基础】_第51张图片
Linux学习【教程+实操】【超基础】_第52张图片
Linux学习【教程+实操】【超基础】_第53张图片
Linux学习【教程+实操】【超基础】_第54张图片
自行 尝试 more /etc/profile

Linux学习【教程+实操】【超基础】_第55张图片
测试 tail -f my.log
Linux学习【教程+实操】【超基础】_第56张图片
被霸屏了,直接在在这里插入图片描述
鼠标右键直接 复制标签
在这里插入图片描述

Ctrl+C 结束
Linux学习【教程+实操】【超基础】_第57张图片
Linux学习【教程+实操】【超基础】_第58张图片
Linux学习【教程+实操】【超基础】_第59张图片
Linux学习【教程+实操】【超基础】_第60张图片
Linux学习【教程+实操】【超基础】_第61张图片
Linux学习【教程+实操】【超基础】_第62张图片
Linux学习【教程+实操】【超基础】_第63张图片
Linux学习【教程+实操】【超基础】_第64张图片
再输入以便上面创建的代码之后
Linux学习【教程+实操】【超基础】_第65张图片
Linux学习【教程+实操】【超基础】_第66张图片

拷贝移动命令

Linux学习【教程+实操】【超基础】_第67张图片
Linux学习【教程+实操】【超基础】_第68张图片
Linux学习【教程+实操】【超基础】_第69张图片
Linux学习【教程+实操】【超基础】_第70张图片
Linux学习【教程+实操】【超基础】_第71张图片
Linux学习【教程+实操】【超基础】_第72张图片
Linux学习【教程+实操】【超基础】_第73张图片
Linux学习【教程+实操】【超基础】_第74张图片
Linux学习【教程+实操】【超基础】_第75张图片
Linux学习【教程+实操】【超基础】_第76张图片
Linux学习【教程+实操】【超基础】_第77张图片
Linux学习【教程+实操】【超基础】_第78张图片
Linux学习【教程+实操】【超基础】_第79张图片
Linux学习【教程+实操】【超基础】_第80张图片
Linux学习【教程+实操】【超基础】_第81张图片

打包压缩命令

Linux学习【教程+实操】【超基础】_第82张图片

  • cvf 打包
  • xvf 解包
  • zcvf 打压缩包
  • zxvf 解压缩包

把test文件打包
Linux学习【教程+实操】【超基础】_第83张图片
把test文件打包并压缩
Linux学习【教程+实操】【超基础】_第84张图片
对已有的包文件进行解压处理
Linux学习【教程+实操】【超基础】_第85张图片
Linux学习【教程+实操】【超基础】_第86张图片
Linux学习【教程+实操】【超基础】_第87张图片
Linux学习【教程+实操】【超基础】_第88张图片
Linux学习【教程+实操】【超基础】_第89张图片
Linux学习【教程+实操】【超基础】_第90张图片

文本编辑命令

Linux学习【教程+实操】【超基础】_第91张图片
Linux学习【教程+实操】【超基础】_第92张图片
中间有两个需要按y的地方

Linux学习【教程+实操】【超基础】_第93张图片
Linux学习【教程+实操】【超基础】_第94张图片
Linux学习【教程+实操】【超基础】_第95张图片
Linux学习【教程+实操】【超基础】_第96张图片
一些准备工作
Linux学习【教程+实操】【超基础】_第97张图片
Linux学习【教程+实操】【超基础】_第98张图片
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
直接敲vim HelloWorld.java

i 进行插入 输入如下
Linux学习【教程+实操】【超基础】_第99张图片
先进入命令模式:按 ESC键
再 按 :wq
退出之后 输入vim HelloWorld.java 回车
Linux学习【教程+实操】【超基础】_第100张图片
输入*/name*
Linux学习【教程+实操】【超基础】_第101张图片
标上行号
Linux学习【教程+实操】【超基础】_第102张图片
再输入 :q! 退出

查找命令

Linux学习【教程+实操】【超基础】_第103张图片
一些准备工作
Linux学习【教程+实操】【超基础】_第104张图片
在这里插入图片描述
验证
Linux学习【教程+实操】【超基础】_第105张图片
Linux学习【教程+实操】【超基础】_第106张图片
没有输入就是没有找到
在这里插入图片描述
Linux学习【教程+实操】【超基础】_第107张图片
一些准备工作
Linux学习【教程+实操】【超基础】_第108张图片
重新编辑该文件
i 输入如下内容 然后按ESC 再输入*:wq* 退出
Linux学习【教程+实操】【超基础】_第109张图片
Linux学习【教程+实操】【超基础】_第110张图片

————————————————————————————————————————

Linux软件安装

软件安装方式

在这里插入图片描述

安装jdk(采用二进制发布包安装)

Linux学习【教程+实操】【超基础】_第111张图片
步骤分解:

在这里插入图片描述
验证
Linux学习【教程+实操】【超基础】_第112张图片
在这里插入图片描述
回车后 按Shift+G快速回到文件末尾 后
Linux学习【教程+实操】【超基础】_第113张图片
Linux学习【教程+实操】【超基础】_第114张图片
安装完成!

安装Tomcat

Linux学习【教程+实操】【超基础】_第115张图片
步骤分解:1. 上传Tomcat压缩包

在这里插入图片描述
验证
在这里插入图片描述

在这里插入图片描述
Linux学习【教程+实操】【超基础】_第116张图片
进入logs目录下
Linux学习【教程+实操】【超基础】_第117张图片
在这里插入图片描述
按空格 翻到最后 没有报错

输入:ps -ef | grep tomcat
在这里插入图片描述
此时在Window网页输入:ip:8080
Linux学习【教程+实操】【超基础】_第118张图片
原因跟防火墙相关
Linux学习【教程+实操】【超基础】_第119张图片

暂时关闭防火墙
在这里插入图片描述
即可访问到Linux的tomcat
Linux学习【教程+实操】【超基础】_第120张图片
Linux学习【教程+实操】【超基础】_第121张图片
为了保障系统安全,一般防火墙是不建议关闭的。
所以我们采取开放指定端口的方式
输入firewall-cmd --zone=public --add-port=8080/tcp --permanent(tomcat端口)
输入firewall-cmd --zone=public --add-port=3306/tcp --permanent(mysql端口)
在这里插入图片描述
开放后需要它生效
输入firewall-cmd --reload
在这里插入图片描述
关闭开放的指定端口
输入firewall-cmd --zone=public --remove-port=8080/tcp --permanent
输入firewall-cmd --reload生效

查看开放的端口号
输入firewall-cmd --zone=public --list-ports
在这里插入图片描述
Linux学习【教程+实操】【超基础】_第122张图片
运行脚本文件关闭(正常关闭)
在这里插入图片描述
结束Tomcat进程关闭(强制关闭)
Linux学习【教程+实操】【超基础】_第123张图片

安装MySQL

Linux学习【教程+实操】【超基础】_第124张图片
我用的是CentOS7 首先查询一下是否存在mariabd
输入rpm -qa | grep mariadb
在这里插入图片描述
说明有,会与MySQL冲突
所以我们需要先卸载mariadb后,再下载MySQL
在这里插入图片描述
输入rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64
在这里插入图片描述
验证确实卸载成功了
在这里插入图片描述
Linux学习【教程+实操】【超基础】_第125张图片
采用FinalShell上传功能

Linux学习【教程+实操】【超基础】_第126张图片
Linux学习【教程+实操】【超基础】_第127张图片
一定要按照顺序来!!!
1.输入rpm -ivh mysql-community-common-5.7.25-1.el7.x86_64.rpm
在这里插入图片描述
2.输入rpm -ivh mysql-community-libs-5.7.25-1.el7.x86_64.rpm
在这里插入图片描述
3.输入rpm -ivh mysql-community-devel-5.7.25-1.el7.x86_64.rpm
在这里插入图片描述
4.输入rpm -ivh mysql-community-libs-compat-5.7.25-1.el7.x86_64.rpm
在这里插入图片描述
5.输入rpm -ivh mysql-community-client-5.7.25-1.el7.x86_64.rpm
在这里插入图片描述
6.输入yum install net-tools

7.输入rpm -ivh mysql-community-server-5.7.25-1.el7.x86_64.rpm
在这里插入图片描述
再输入yum update更新后
Linux学习【教程+实操】【超基础】_第128张图片
输入systemctl status mysqld 查看mysql服务状态
Linux学习【教程+实操】【超基础】_第129张图片

输入systemctl start mysqld 启动mysql服务

输入systemctl enable mysqld 开机启动mysql服务(无报错就说明命令成功)在这里插入图片描述

输入netstat -tunlp | grep mysql 查看mysql是否启动
在这里插入图片描述

输入ps -ef | grep mysql 查看mysql进程
在这里插入图片描述
Linux学习【教程+实操】【超基础】_第130张图片
输入cat /var/log/mysqld.log | grep password 查找文件内容中包含password的行信息
在这里插入图片描述
Linux学习【教程+实操】【超基础】_第131张图片
修改密码:
输入 mysql -uroot -p 然后需要输入临时密码 直接粘贴就行
输入set global validate_password_length=6;
输入set global validate_password_policy=LOW;
输入set password = password('123456');
Linux学习【教程+实操】【超基础】_第132张图片

开启权限:
输入grant all on *.* to 'root'@'%' identified by '123456';
输入flush privileges; 刷新权限
Linux学习【教程+实操】【超基础】_第133张图片
退出尝试新密码
Linux学习【教程+实操】【超基础】_第134张图片
Linux学习【教程+实操】【超基础】_第135张图片

Linux学习【教程+实操】【超基础】_第136张图片
从外部连接

Linux学习【教程+实操】【超基础】_第137张图片

安装lrzsz(文件下载和上传的工具)

Linux学习【教程+实操】【超基础】_第138张图片
输入yum list lrzsz 搜索lrzsz安装包
Linux学习【教程+实操】【超基础】_第139张图片

输入yum install lrzsz.x86_64 在线安装

使用lrzsz

项目部署

手工部署项目

Linux学习【教程+实操】【超基础】_第140张图片
创建一个SpringBoot项目的第一个方法
HelloController

@RestController
@RequestMapping("/hello")
public class HelloController {

    @GetMapping("")
    public String hello(){
        System.out.println("hello world...");
        return "OK";
    }
}

application.yml

server:
  port: 8080

logging:
  level:
    com.itheima: debug

双击进行打包
Linux学习【教程+实操】【超基础】_第141张图片
打包完成
在这里插入图片描述
Linux学习【教程+实操】【超基础】_第142张图片


上传后
Linux学习【教程+实操】【超基础】_第143张图片
输入 java -jar helloworld-0.0.1-SNAPSHOT.jar 回车

Linux学习【教程+实操】【超基础】_第144张图片
另开一个窗口 查看开放的端口号
输入firewall-cmd --zone=public --list-ports
Linux学习【教程+实操】【超基础】_第145张图片

在这里插入图片描述
输出了helloworld…

关闭终端(FinalShell)则访问不到
Linux学习【教程+实操】【超基础】_第146张图片
输入nohup java -jar helloworld-0.0.1-SNAPSHOT.jar &> hello.log &
Linux学习【教程+实操】【超基础】_第147张图片
后台运行
Linux学习【教程+实操】【超基础】_第148张图片
输入more hello.log

关闭终端还是可以运行的

Linux学习【教程+实操】【超基础】_第149张图片
输入ps -ef | grep 'java -jar'
在这里插入图片描述
输入kill -9 39320
在这里插入图片描述

通过Shell脚本自动部署项目(需要Git基础)

Linux学习【教程+实操】【超基础】_第150张图片
Linux学习【教程+实操】【超基础】_第151张图片
输入yum list git 列出git安装包
输入yum install git 再按回车 在线安装git
Linux学习【教程+实操】【超基础】_第152张图片
Linux学习【教程+实操】【超基础】_第153张图片
输入git clone https://gitee.com/clarayyy/helloworld.git
Linux学习【教程+实操】【超基础】_第154张图片
Linux学习【教程+实操】【超基础】_第155张图片
Linux学习【教程+实操】【超基础】_第156张图片
输入tar -zxvf apache-maven-3.5.4-bin.tar.gz -C /usr/local

Linux学习【教程+实操】【超基础】_第157张图片
输入vim /etc/profile
i 输入

export MAVEN_HOME=/usr/local/apache-maven-3.5.4
export PATH=$JAVA_HOME/bin:$MAVEN_HOME/bin:$PATH

按ESC 再*:wq* 再回车 保存退出
Linux学习【教程+实操】【超基础】_第158张图片
输入source /etc/profile 生效
Linux学习【教程+实操】【超基础】_第159张图片
配置完成后
Linux学习【教程+实操】【超基础】_第160张图片
i
输入/usr/local/repo
注意插入位置

Linux学习【教程+实操】【超基础】_第161张图片

Linux学习【教程+实操】【超基础】_第162张图片
Linux学习【教程+实操】【超基础】_第163张图片
bootStart.sh

#!/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-0.0.1-SNAPSHOT.jar &> helloworld.log &
echo 项目启动完成

i插入 粘贴完之后 按ESC 再*:wq* 回车 保存退出

Linux学习【教程+实操】【超基础】_第164张图片
在这里插入图片描述
Linux学习【教程+实操】【超基础】_第165张图片
输入chmod 777 bootStart.sh
Linux学习【教程+实操】【超基础】_第166张图片
执行./bootStart
Linux学习【教程+实操】【超基础】_第167张图片
查日志
输入find / -name helloworld.log 输出 /usr/local/helloworld/target/helloworld.log
more /usr/local/helloworld/target/helloworld.log
在这里插入图片描述

Linux学习【教程+实操】【超基础】_第168张图片
Linux学习【教程+实操】【超基础】_第169张图片
输入vim ifcfg-ens33 进入文件修改
在这里插入图片描述
ifcfg-ens33文件需要改动的内容 (要根据虚拟网络编辑器改动)
Linux学习【教程+实操】【超基础】_第170张图片
Linux学习【教程+实操】【超基础】_第171张图片
在这里插入图片描述
Linux学习【教程+实操】【超基础】_第172张图片
Linux学习【教程+实操】【超基础】_第173张图片
连接成功即可。

你可能感兴趣的:(linux,学习,运维)