此文档 : 使用操作路径 /usr/local/src 用于安装 发布
1.入门命令
常见命令
**目录:**
ip查询 : ipconfig /ip addr
查看当前目录 : pwd
ls 查询此目录下内容
ls -l 详细格式,文件权限,时间
ls *.txt 查看所有的txt类型文档
Tab键 自动补齐(要有唯一性)
**cd命令**
cd / 返回根目录
cd ~ 用户主目录
cd . 当前目录
cd ..返回到上一级目录
cd /usr/ 进入到usr目录
cd – 返回上一个目录
cd 直接回家
****目录操作****
mkdir 创建目录
mkdir s 创建s目录
mkdir -p a/b 创建多级文件夹
mkdir -m 777 c 创建一个权限为 777 的c 目录
**删除目录**
rmdir 目录
** vi/vim文件创建 、编辑**
命令行:Esc切换到命令行模式。
编辑模式:
按i,在光标前开始编辑
按a,在光标后开始编辑
按o,在当前行的下一行开始编辑
按u, 撤销之前的操作
底行模式:按 shift+:冒号。
:q! 不保存退出
:wq 保存退出
:/world 从当前光标处,向上查找world关键字
:?world 从当前光标处,向后查找world关键字
**删除文件**
rm 删除文件
rm n.txt 提示y删除n放弃
rm –f n.txt 不提示
rm –rf dirname 不提示递归删除目录下所以内容
rm –rf * 删除所有文件
rm –rf /* 删除所有子目录所有和文件
**文件的转移 /复制**
cp 复制文件
cp nginx.conf n.txt
cp -R tomcat1 tomcat2 复制整个目录
mv 修改文件名 移动文件
mv n.txt m.txt 修改文件名称
**浏览文件 // 查看运行的日志**
cat /... 输出文件所有的内容
cat -n /... 输出文件所有内容,显示行号
more 输出文档所有的内容,分页输出,空格浏览下一屏,q退出
less 用法和more相同,只是通过PgUp、PgOn键来控制
tail 用于显示文件后几号,使用频繁
tail -10 nginx.conf 查看nginx.conf的最后10行
tail –f nginx.conf 动态查看日志,方便查看日志新增的信息
ctrl+c 结束查看
**linux下的jar、war在不解压的情况下替换文件内容**
jar -uf xx.jar BOOT-INF/classes/application-oscar.properties
解释:
1.jar -uf :执行命令
2.后面跟jar 或者 war
3.需要在更换的文件(会将此路径下的信息在文件中替换)
**tar打包命令**
-c 创建一个新的tar文件
-v 显示运行过程的信息
-f 指定文件名
-z 调用gzip压缩命令进行压缩
-t 查看压缩文件的内容
-x 解开tar文件
常用:
tar –cvf n.tar ./* 压缩当前目录下的所有文件和目录,文件名为n.tar
tar –xvf n.tar 解压压缩包中的文件到当前目录(如果长时间未解压成功 Ctrl+C推出)
tar –cvzf m.tar.gz ./* 压缩文件
tar -zxvf m.tar.gz 解压m.tar文件到当前目录
rar a m.rar v.txt 压缩rar文件
unrar e m.rar 解压rar压缩包
unzip ***.zip 解压zip压缩包
压缩包解压/压缩命令
rar下载官网
权限问题若是很迷茫的话 可以在桌面终端执行 :su -
**grep命令**
grep root /etc/passwd 在文件中查找关键字root
grep root /etc/passwd –-color 高亮显示
grep root /etc/passwd –A5 –B5 高亮显示,A后5行,B前5行
grep -n root /etc/passwd 查找并显示行数
grep -v root /etc/passwd 取反,查出不含root的数据
2. 网卡
1.在本机上查询IP地址 是否可以查到 (无 ,则要重新安装)
2.命令 ipconfig
3.查看远程连接状态 ping + 对方ip
问题:
当IP未获取到时 ,需要进行重启网卡或者重启电脑、
**网卡命令: 获取IP**
1.停止命令: systemctl stop NetworkManager
2.重启命令: service network restart
3.IP的更改
IP确保在同一字段中 ,若不是则要重新修改IP地址
方法: 固定路径 : etc/sysconfig/network-scripts
命令 :cd /etc/sysconfig/network-scripts
选中 第一个 : ifcfg-ens33
修改操作 : vim
命令 : vim ifcfg-ens33
信息说明 : 查看倒数4行 。
倒数1,2,3 基本和网关有联系 ,不需要动 ,若没有则可以同理 配置
.2 是留出连接的端口。
倒数第四行 :修改IP就可以了
**修改完成 重启网卡**
命令1:systemctl stop NetworkManager
命令2: service network restart
或者重启
4. JDK安装
(linux 系统中的压缩包后缀为 .tar )
安装目录 :/usr/local/src
安装时可以通过 ls 命令查看文件
命令 : cd //usr/local/src
将jdk文件 加入此目录中
进行 解压 命令: tar -xvf jdk—8u51-linux-x64.tar.gz
改名: 方便使用
命令 : mv 源文件 改文件
配置环境变量文件:
命令 : vim /etc/profile
配置内容:
unset i
unset -f pathmunge
#设定jdk环境
export JAVA_HOME=/usr/local/src/jdk1.8
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib
**重启环境变量**
source /etc/profile
**校验**
java -version
若配置不完整后面的发布会受到影响将无法运行!
5 Mariadb安装
安装时 ,需要简单看一下网络是否连接 ping + 浏览器
安装命令 : yum install mariadb-server
或者 找到 下载文件
安装命令 :wget 网址
安装完成: 点击 y 即可
**执行 命令
1.驱动数据库 : systemctl start mariadb
2.重启数据库: systemctl restart mariadb
3.停止数据库: systemctl stop mariadb
**初始化:**
命令: mysql_secure_installation
设置用户 、密码 。
若遇到选择 点击 y 即可
**修改mysql权限**
1.进入 MySQL 库 命令 :mysql - u 密码 -p 密码
2.show databases;
3,use mysql;
4.show tables;
//查询权限数据库权限
//host :允许那些IP地址访问数据库权限
//user : 用户名
5.select host ,user from user where user='root';
//修改允许远程连接 % 代表统配
6.update user set host='%' where host ="localhost";
//校验
7.select host,user from user where user ='root';
//刷新数据库权限
8. flush privileges;
9. 退出 ctrl+C / exit
有关 mariadb 问题:
当项目无法发布查看数据库是否可以进入 ,
若错误 ,可能或是没有启动数据库。
启动命令 : systemctl start marisdb
校验防火墙 :firewall-cmd --state
6 防火墙的查看 (*)
客户端 —host —防火墙—反向代理—服务器----mysql和 图片路径
允许哪些端口可以穿过防火墙
1.打开编辑 vim /etc/sysconfig/iptables
2.添加端口号 -A INPUT -m state --state NEW -m tcp -p tcp --dport 端口号 -j ACCEPT
3.重启防火墙
若没有编辑端口文件可以使用命令添加
依次执行即可
1.添加防火墙策略,放行指定端口:sudo firewall-cmd --zone=public --add-port=端口号/tcp --permanent
2.重新加载FirewallD:sudo firewall-cmd --reload
3.查看public区域的所有配置:sudo firewall-cmd --zone=public --list-all
4.查看已开放端口:firewall-cmd --list-port
原因 :若不开通这只可以使用地址进行访问 ,不能实现虚拟路径访问。
**首先:将防火墙进行关闭**
命令:
1.永久关闭防火墙配置
systemctl disable firlewalld.service
2.永久开启防火墙配置
systemctl enable firewalld.service
3.重启
firewall-cmd --reload
3.对现有的进行操作
[root@localhost jdk1.8]# systemctl stop firewalld.service
[root@localhost jdk1.8]# systemctl start firewalld.service
**防火墙校验**
[root@localhost jdk1.8]# firewall-cmd --state
**防火墙状态查询**
firewall-cmd --zone=public --add-port=3306/tcp --permanent
7. nginx(反向代理)安装 修改文件
*使用反向代理:保护服务端,提供虚拟的访问路径 ,并且可以多台服务器访问一个虚拟地址,完成多台发布的效果。 *
**(修改一次重启一次) **
官网下载地址
寻找下载: nginx.org 反向代官网 赋值Linux版本地址
**命令操作:**
1.下载:wget nginx.tar网址
2.ls 查看下载 (可以多次使用)
3.解压 : tar -xvf nginx1.19.1.tar.gz
4.可以将压缩包 进行转意到其他目录
命令: mv nginx-1.19.1 soft/
5.将解压的文件 可以换一个简单的文件名
命令: mv nginx1.19 nginx
6.查看源文件路径 (不负责执行)
命令: pwd
7.进入 nginx 生成 可执行文件
命令: ./configure
8.编译
命令: make
9.安装nginx
命令:make install
10.获取nginx执行工作路径
命令:whereis nginx
11.进入启动目录:
命令 : 1.pwd 查看当前路径 /user/local/nginx
2.cd sbin/ 进入启动目录
3. ./nginx 启动代理
4. ./nginx -s reload 重启代理
5. ./nginx -s stop 关闭代理
若有错误将无法进行虚拟访问
配置 nginx .conf
http{
#配置图片服务器
server{
#端口号默认
listen 80;
#图片虚拟访问名称
server_name imager.jt.com;
#转目录
location / {
#图片存放路径
root/usr/local/src/images;
}
}
#配置tomcat集群 虚拟访问路径
server {
listen 80;
server_name manager.jt.com;
location / {
#虚拟代理访问路径
proxy_pass http://jtLinux;
}
}
#配置负责均衡
upstream jtLinux {
server 192.168.126.129:8080;
#还可以
server localhist:8081;
}
}
8 配置集群redis
windows下载
linux下载
redis: 是一个开源的,内存中的数据存储系统,可以用作数据库,缓存,中间件, 支持多哦中类型数据结构 :*String字符串,散列hashes,列表list ,集合sets,有序集合sorted sets.
作用:用于缓存,大意就是当缓存中有的在缓存取,若第一次没有则取数据库取并将数据存入到redis缓存中。
tomcat: 150-220/秒
nginx: 3-5万/秒
redis: 写 8.6万/秒 读 11.2万/秒 ~ 平均10万次/秒
使用集群redis需要在代码pom.xml文件中加入jar包,
一个redis.conf只可以启动一台,多台需要配置多台redis.conf
jar包:
<!--spring整合redis -->
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-redis</artifactId>
</dependency>
下载:**redis-5.0.4.tar.gz** 此格式
1.解压 : tar -xvf tar包
2,进入此文件,进行编译操作 : make
3. 安装 : make install
修改 :****redis.conf**** 文件
1.修改IP绑定
2.取消保护模式
3.开启后台启动
4. 保存 : esc + :wq 保存
5. :q! 不保存
程序的控制操作
redis 启动操作 : 默认端口:6379
进入此文件 找到redis.cof 父级文件
启动命令: redis-server redis.conf
进入此操作 : redis-cli p 端口
校验是否启动 : ps -ef | grep redis
关闭命令:方式1 :校验完成 ,杀死进程 :kill -9 进程
方式2 : redis-cli -p 端口 shutdown
若配置多态redis需要修改里面的配置文件及主从的配置
修改所用到的命令 :
:%/7000/7007/g :将7000的数字全部换成7007
:info replication :可以查看是否为主机还是从机
:slaveof 主机的IP 主机的端口 : 将此机变为xx的主机
9.war发布(3种方式) 日志
1.普通(前台:当服务器关闭则无法访问) :java -jar n.jar/n.war -server.port=9071 //可以指定端口
2.后台:(当服务器退出也会访问 ,也可以加入log, 可以多台发布) :
单台: nohup java -jar n.war -> n.log &
多台: nohup java -jar n.war -> n.log & nohup java -jar m.war -> m.log & ...
3. 使用shll脚本.sh (外挂)将 1或2 写入到 shll脚本中 (注意路径)
方法 :
命令 :vim start.sh 创建脚本文件
编辑内容 :
#!/bin/sh
再加入1或2
4.运行:sh start.sh
**校验 进程:**
命令 : jps
杀死进程:
kill -9 进程号 强制杀死
kill -15 进程号 友好杀死
**日志**
命令1: cat 日志文件信息
命令2: tail -10 n.log 最后10行为后面日志
命令3:tail -f n.log 动态日志打印
zookepeer注册中心集群 配置
单台
1.下载之前查看jdk是否配置完成 : 原因注册中心依赖jdk
2.下载命令 : wget 下载地址
3.解压 : tar -vxf apache-zookeeper-3.6.1.tar.gz
4.进入 添加 data log
5. 查询 data log 路径
[root@localhost data]# pwd
/usr/local/src/zookeeper/data
[root@localhost log]# pwd
/usr/local/src/zookeeper/log
6.进入conf 复制zoo_sample.cfg
命令:cp zoo_sample.cfg zoo.conf
7.打开 zoo.cfg 修改路径
命令: vim zoo.cfg
8.进入bin 启动操作 找到启动文件
9.启动命令 :./zkServer.sh start 或者 sh zkServer.sh start
校验命令: ./zkServer.sh status 或者 。。。同上
关闭命令:./zkServer.sh stop 或者 。。。同上
集群
1.创建集群文件
2. 在zkcluster创建多台
3.在每个文件中各自添加 data log 快捷命令
4.在每data文件中 添加vim myid 依次填写为1,2,3
5.校验数字 cat myid
6.进入conf 复制 zoo.cfg (3份)
7.进入修改路径及端口信息
启动命令 :./zkServer.sh start zoo1.cfg
查询状态:./zkServer.sh status zoo1.cfg
关闭命令:./zkServer.sh stop zoo1.cfg
10注意问题
**网卡: 无 IP**
**网卡命令: 获取IP**
1.停止命令: systemctl stop NetworkManager
2.重启命令: service network restart
**反向代理nginx**
启动问题:当不可以启动查看80端口是否占用。
若想启动需要杀死 80端口 命令: kill -9 进程号。
只可以启动一次 ,若多次启动则将运行可能就会发生。
方案:
1.(windows)查看电脑里面的任务管理器关闭多余进程 ,最好全部关闭进行一次重启。
2.(Linux) 重启命令
找到此文件目录:/usr/local/nginx/sbin
执行重启命令: ./nginx -s -reload
**错误:403**
检查 本机里面的host文件 格式 ,IP等是否正确 ,
发生修改重启一下nginx :
命令:./nginx -s -reload
正确格式:
**502错误:**
1.检查反向代理nginx
2,检查host 文件 ,重启代理
3,校验防火墙 是否关闭
4.检查IP 是否正常连接