复习

  1. localStorage / sessionStorage
  2. vuex
    1. state 数据
    2. action 操作
    3. views 视图
  3. linux概念 服务器操作系统
    1. linux+gnu软件+…=发行版

2021年6月29日 Linux - 图1
https://upload.wikimedia.org/wikipedia/commons/1/1b/Linux_Distribution_Timeline.svg

b. 安装 vmware / centos

安装xshell

xshell ssh客户端工具

centos 查看ip: ip addr
image.png

image.png
image.png

linux的常用目录

命令实例 作用 重要性
~ 表示用户的home目录,root=/root 其他用户=/home/用户名
/ 表示根目录,是绝对路径
./ 表示当前目录,是相对路径
../ 表示上一级目录,是相对路径
/root root用户的主目录
/home/username 存放普通用户的个人配置文件
/bin 包含基本命令,如ls ,cp, mkdir等这个目录中的文件都是可执行的
/boot LinuxI系统的内核及其引导系统程序所需要的文件
/dev 设备文件存储目录,应用程序通过对这些文件的读写和控制就可以访问实际的设备
/etc 系统配置文件的所在地,一些服务器的配置文件也在这里,如账户的账号及密码等配置文件 极高
/sbin 放可执行文件,大多是涉及系统管理的命令,是超级用户root的可执行命令存放地。普通用户没有权限执行这个目录下的命令
/lib 存放系统动态链接共享库
/opt opt是可选的意思,有些软件包会被安装在这里,用户自己编译的软件包也可以安装在这个目录
/mnt 可临时将别的外部设备挂接在此目录下
/proc 存在系统内存中的信息
/usr 是系统存放程序的目录,比如命令、帮助文件等,它包含很多的文件和目录,Linux发行版提供的软件包大多数被安装在这里
/tmp 存放临时文件的目录
/var 存放软件产生的数据,比如日志

pwd=/
ls ./bin ls bin 相对路径 ls /bin 绝对路径

ls 列出当前目录下的内容
cd change directory 切换目录
pwd 查看当前用户

命令的使用

结构: 命令名 [选项] 参数

  • 选项:功能开关和设置 以 - 或者 -- 开头
  • 参数: 命令操作对象

ls /bin 用ls命令操作 /bin目录

帮助系统

  • 命令后加 -h 或者 --help
  • man manul手册 man ls 查看手册, q退出 j向下 k向上滚动

多使用 tab

查看目录 ls

参数:
-l 显示详细信息
-a 显示所有文件,包括隐藏文件
-i 显示inode
-t:依时间排序,而不是用档名。
-r :将排序结果反向输出,例如:原本档名由小到大,反向则为由大到小

切换目录

  • 特殊目录 ~ home / 根 .. 上一级 - 上一次

文件文件夹的管理

  • 创建
    • 文件创建:
      • touch 文件名
      • echo 内容 > a.txt
      • vi 文件名
    • 文件夹创建
      • mkdir 创建文件夹 -p 创建上级目录 mkdir -p controller/form common service/impl mapper entity
  • 查看
    • 查看文件:
      • cat 文件名
      • less ( jkggGq 退出 /关键字 搜索 -> n 下一处关键字 N 上一处关键字)
      • tail 文件末尾 / head 文件头部
        • -数字 查看多少行
        • -f 跟随输出
      • vi
  • 删除
    • rm
      • -f 强制删除
      • rm -rf controller/ 强制删除文件夹
  • 文件文件夹修改:重命名
    • mv mapper/ dao/
  • 移动
    • mv 原始文件或者文件夹 目标文件夹或者目标文件
      • mv a.txt /tmp/ mv /tmp/a.txt .
      • mv a.txt /tmp/b.txt 移动同时换名字
      • 直接移动文件夹
  • 复制

    • cp 原始文件或者文件夹 目标文件夹或者目标文件
    • 文件夹拷贝,需要加 -r 选项
    • cp -r dao /tmp/mapper cp /tmp/b.txt ./a.txt

      文本编辑 VI编辑器

      有模式
  • 命令模式: 退出,保存,拷贝等操作

  • 编辑模式: 编辑文本
  • 可视化模式: 可视化的选择和操作

编辑模式— esc ->命令模式
命令模式—— i —> 编辑模式

进入与退出:

  • vi 文件名 进入编辑
  • 不做修改 :q
  • 修改后
    • 放弃修改退出 :q!
    • 保存退出 :wq :x

导航:
k
h l
j
gg 到头
G 到位
/ 从上向下搜索 —> n 下一处 N 上一处
? 从下往上搜索 —> n 下一处 N 上一处

编辑(命令模式下):

  • 删除 d{object}
    • dd 删除一行
    • dw 删除一个单词 d3w
    • d$ 删除到行尾
    • d0 删除到行头
    • x 一个字符
  • 插入
    • i 光标前插入
    • a 光标后插入
    • A 行尾插入
    • o 下一行插入
    • O 上一行插入
    • s 删除当前字符并插入
    • r 修改当前单字符,但是不进入编辑模式
    • c{object} cc删除一行并进去编辑模式 cw删除一个单词并进入编辑模式 c$删到行尾并进入编辑模式
  • 复制 y{object}
    • yy 复制一行 y3y 复制3行
    • yw 复制一个单词 y3w 复制3个单词
    • y$ 复制到行尾
    • y0 复制到行头
  • 撤销 u
  • 重做 ctrl+r
  • 粘贴 p

tips:
:set nu 展示行号

压缩解压缩 tar

  • -c 创建压缩文件
  • -f 指定文件
  • -t 查看
  • -v 显示过程
  • -x 解压
  • -C 指定解压到的目录
  • -z 使用gzip格式,一般文件后缀名为.gz
  • tar -cvf 压缩文件,并且显示过程
  • tar -xvf 解压文件,并且显示过程
  • tar -tvf 查看压缩文件内容

image.png

  1. tar -C /opt/ -zxvf my.tar.gz

systemctl命令

管理服务
systemctl [选项] 命令
命令: start stop restart status reload

  1. systemctl stop firewalld
  2. systemctl status firewalld
  3. systemctl start firewalld

防火墙 firewalld

管理端口

  1. # 永久开放3306端口
  2. firewall-cmd --add-port=3306/tcp --permanent
  3. # 重新加载配置,使配置生效
  4. firewall-cmd --reload
  5. # 查看已开放的端口
  6. firewall-cmd --list-ports
  7. # 删除端口
  8. firewall-cmd --remove-port=3306/tcp
  9. # 一次开放多个端口
  10. firewall-cmd --zone=public --add-port=8080-8081/tcp

安装JDK

yellowdog updated modified 黄狗更新管理器 yum

  1. yum install -y lrzsz
  2. rz 上传文件
  3. 解压 tar -C /opt -zxvf jdk-8u261-linux-x64.tar.gz
  4. 配置环境变量 vi /etc/profile ,添加以下内容

    1. export JAVA_HOME=/opt/jdk1.8.0_261
    2. export PATH=$PATH:$JAVA_HOME/bin
  5. 立即生效 source /etc/profile

部署一个spring-boot项目

开发一个spring-boot项目,mvn clean package -Dmaven.test.skip=true
上传jar包
java -jar xxx.jar
端口是8080

  • 测试,在服务器内部能否访问到8080 端口 ,用curl (yum install - y curl) curl localhost:8080
  • 开放防火墙8080端口
  • 在外部使用 http://192.168.60.179:8080/ 访问服务器

补充说明:

启动:

nohup java -jar ./demo123-0.0.1-SNAPSHOT.jar > /var/log/demo123.log &
nohup 不挂线,支持在后台运行,远程会话断开后,不停应用
> 输出重定向
& 后台运行

  1. nohup java -jar simple-0.0.1-SNAPSHOT.jar > /var/log/simple-app.log &
  2. tail -f /var/log/simple-app.log

关闭:

ps aux | grep java

  • ps aux 展示当前运行中的进程信息
  • | 管道命令,将前面的命令的输出 作为 后面的命令的操作内容
  • grep 关键字 在文本中搜索指定的关键字

kill 进程号

安装软件的几种方式

  1. 绿色解压安装
  2. make安装 从源码开始编译安装 (安装c语言运行时库,编译工具)
  3. rpm安装 rpm是centos的安装包格式,类似于win下的exe,安装时不会自动安装依赖的软件

    1. 1.安装一个包
    2.   rpm -ivh xxx.rpm
    3.   2.升级一个包
    4.    rpm -Uvh
    5.   3.移走一个包
    6.    rpm -e
    7.   4.安装参数
    8.   --force 即使覆盖属于其它包的文件也强迫安装
    9.   --nodeps 如果该RPM包的安装依赖其它包,即使其它包没装,也强迫安装。
    10.   5.查询一个包是否被安装
    11.    rpm -q < rpm package name>
    12.   6.得到被安装的包的信息
    13.    rpm -qi < rpm package name>
    14.   7.列出该包中有哪些文件
    15.    rpm -ql < rpm package name>
    16.   8.列出服务器上的一个文件属于哪一个RPM
    17.   rpm -qf
    18.   9.可综合好几个参数一起用
    19.    rpm -qil < rpm package name>
    20.   10.列出所有被安装的rpm package
    21.    rpm -qa
    22.   11.列出一个未被安装进系统的RPM包文件中包含有哪些文件?
    23. rpm -qilp < rpm package name>
  4. yum安装 自动安装软件及其依赖,并且自动配置好软件

yum,仓库配置文件在 /etc/yum.repos.d/xxx.repo 官方仓库软件数量比较有限,版本一般比较滞后
image.png
官方的扩展仓库 epel
yum install epel-release
yum install cowsay

  1. docker安装

安装数据库mysql

mysql-server本身不在官方的yum仓库中,所以需要额外添加仓库,然后执行在线安装,根据网络速度快慢决定安装时长。

  1. yum -y install wget
  2. # 获取添加仓库的RPM包
  3. wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
  4. # 安装仓库
  5. rpm -ivh mysql-community-release-el7-5.noarch.rpm
  6. # 安装mysql的server
  7. yum install mysql-community-server
  8. # 启动
  9. systemctl start mysql
  10. # 进入mysql数据库,以下命令都在mysql控制台执行
  11. # >>>>>>>>>>>>>>>>>>>>>>>>>>>
  12. mysql -u root
  13. # 修改root密码
  14. set password for 'root'@'localhost' =password('root123');
  15. # 开启远程连接
  16. grant all privileges on *.* to root@'%'identified by 'root123';
  17. FLUSH PRIVILEGES;
  18. # <<<<<<<<<<<<<<<<<<<<<<<<<<<
  19. # 注意:打开3306端口

作业

  1. 部署一个spring-boot+mybatis-plus,带查询的一个项目部署,真实查询数据库
  2. 整理复习今天所用到的所有命令,产出md文件