Skip to content

常用 ​

防呆 ​

运行 docsify 本地服务

cd docs

docsify serve

git add . #当前目录下所有文件添加暂存区

git commit -m "提交信息" # 提交暂存区到本地库

git push #推送远程库

1.npm查看配置信息 ​

bash
npm config list

2. npm设置镜像地址(taobao) ​

bash
npm config set registry https://registry.npm.taobao.org

3. npm其他命令 ​

bash
#更新(更新到最新版本)
npm update 包名
#全局更新
npm update -g 包名
#卸载包
npm uninstall 包名
#全局卸载
npm uninstall -g 包名

4. Windows查看端口占用 ​

bash
netstat -ano 查询所有
 TCP    [::]:8081              [::]:0                 LISTENING       7508
  TCP    [::]:8082              [::]:0                 LISTENING       11648
  
netstat -aon|findstr "8080" 查询指定端口
  TCP    0.0.0.0:8080           0.0.0.0:0              LISTENING       10396
  TCP    10.1.212.171:52427     157.148.42.147:8080    ESTABLISHED     6964
  TCP    10.1.212.171:55341     60.29.240.116:8080     ESTABLISHED     12120
  TCP    10.1.212.171:55369     157.148.54.16:8080     ESTABLISHED     132
  TCP    10.1.212.171:55399     220.194.118.203:8080   ESTABLISHED     132

5. Windows杀死进程 ​

bash
taskkill /F /PID 7501(进程id)

6. SpringBoot项目部署 ​

官方推荐使用jar包部署,也就是使用springboot内置的tomcat运行,只需要服务器有对应版本jdk即可。

  1. 将项目打成jar包
  2. 将jar包发送到服务器上的任意目录 方便找
  3. 添加安全组 开放项目使用的端口 我这用的是8080
  4. 服务器运行

linux通常运行方式是:

java -jar demo.jar

这种方式特点是ssh窗口关闭时,程序中止运行.或者是运行时没法切出去执行其他任务,有没有办法让Jar在后台运行

解决方式

​ 方式一

//nohup 意思是不挂断运行命令,当账户退出或终端关闭时,程序仍然运行

//当用 nohup 命令执行作业时,缺省情况下该作业的所有输出被重定向到nohup.out的文件中

//除非另外指定了输出文件。

nohup java -jar test.jar &

​ 方式二

//这种方法会把日志文件输入到你指定的文件中,没有则会自动创建

nohup java -jar test.jar >temp.txt &

nohup java -jar test.jar >log.txt 2>&1 &

​ 其他相关命令:

// 列出所有后台执行的作业,并且每个作业前面都有个编号。

jobs

// 如果想将某个作业调回前台控制,只需要 fg + 编号即可。()

fg + 编号

5. 关闭服务

重新部署,通过以下命令来找到该进程端口号

netstat -lnp|grep 8090   #8090为你那jar包运行的端口

也可通过以下命令来找到该进程端口号

lsof -i:端口号

找到端口号后通过以下命令结束进程

kill -9 9932        #杀掉编号为9932的进程(请根据实际情况输入)

7. ubuntu防火墙和端口相关操作 ​

  1. 关闭防火墙
bash
sudo ufw disable
  1. 开启防火墙
bash
sudo ufw enable
  1. 开放或关闭指定端口
bash
sudo ufw allow 3690 允许外部访问3690端口(svn)

sudo ufw allow from 192.168.1.111 允许此IP访问所有的本机端口

sudo ufw allow proto tcp from 192.168.0.0/24 to any port 22  允许指定的IP段访问特定端口

比如删除svn端口就是 sudo ufw delete allow 3690
  1. 查看防火墙状态
bash
ufw enable/disable:打开/关闭ufw

ufw status:查看已经定义的ufw规则

ufw default allow/deny:外来访问默认允许/拒绝

8 ubuntu安装docker ​

bash
# ubuntu 安装 docker ✔
	#确定内核版本大于3 
	uname -r 
	# 更新 apt-get
	sudo apt-get update 
	# 证书
	sudo apt-get install \
		apt-transport-https \
		ca-certificates \
		curl \
		gnupg \
		lsb-release
	# 修改成国内软件源 ,添加软件源的 GPG 密钥
		# 官方源
		# $ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
		curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
	# 添加docker软件源
	echo \
  "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://mirrors.aliyun.com/docker-ce/linux/ubuntu \
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null		
    #更新 apt 软件包缓存
	sudo apt-get update
	# 安装 docker-ce
	sudo apt-get install docker-ce docker-ce-cli containerd.io
	# 启动docker
	sudo systemctl enable docker
	sudo systemctl start docker
	# 建立docker组 不然其他用户不能访问docker
	sudo groupadd docker
	# 将用户加入docker组
	sudo usermod -aG docker 用户名
	# 测试安装是否成功
	sudo docker run --rm hello-world
docker运行runtime镜像 ✔
	docker load -i 镜像名.tar

9.centos安装jdk ​

bash
不用openjdk 
	使用这个镜像站 https://repo.huaweicloud.com/java/jdk/8u201-b09/
centos使用wget下载
	wget https://repo.huaweicloud.com/java/jdk/8u201-b09/jdk-8u201-linux-x64.tar.gz
将jar包放到指定目录
	使用tar解压
		tar -zxvf jdk-8u201-linux-x64.tar.gz
	配置环境变量
		全局变量
			vim /etc/profile
		使用shift + G 让光标跳到最后 加入以下 记得修改JAVA_HOME(jdk的解压路径)
			#java enviroment
			export JAVA_HOME=/app/jdk1.8.0_201
			export CLASSPATH=.:${JAVA_HOME}/jre/lib/rt.jar:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar
			export PATH=$PATH:${JAVA_HOME}/bin
	使配置文件生效
		source /etc/profile

10.centos离线安装jdk8 ​

  1. 下载jdk-8u391-linux-x64.tar.gz
  2. 上传到服务器并cd到文件文件夹
  3. 解压 tar -zxvf jdk-8u391-linux-x64.tar.gz
  4. 配置环境变量 vim /etc/profile
  5. 测试java -version ,出现java版本即安装成功。

11. docker中修改mysql密码 ​

  1. 进入docker中mysql ; docker exec -it 容器id或/容器名 /bin/bash
  2. 进入mysql; mysql -uroot -p 密码
  3. 使用mysql库; use mysql
  4. 查看版本,不同版本修改方式不一样; select version();
  5. 修改密码。版本5.7之前; update user set password=password(“123456”) where user=‘root’;
  6. 修改密码。版本5.7之后; update user set authentication_string=password(“123456”) where user=‘root’;
  7. 修改密码。版本8.0以上;ALTER USER ‘root’ IDENTIFIED BY ‘123456@Test’;(注意密码要有数字,大小写字母,和特殊符号,要不密码会验证不通过)
  8. 刷新权限 ; flush privileges
  9. 重启服务; docker restart mysql

12.centos8 redis离线安装部署 ​

要先安装make

make-3.82-24.el7.x86_64.rpm

  1. 下载redis安装包redis-6.2.6.tar.gz
  2. cd到对应目录文件 tar -zxvf redis-6.2.6.tar.gz 解压文件
  3. 将redis安装在/usr/local/redis
  4. 使用mv /home/redis-6.2.6 /usr/local/redis 并重命名
  5. cd /usr/local/redis 目录下
  6. 执行make命令编译安装redis
  7. 再执行make install 安装

为了方便管理,切换至redis根目录,创建bin和etc文件,将redis.conf文件移动到/usr/local/redis/etc/目录,将

  • mkreleasehdr.sh
  • redis-benchmark
  • redis-check-aof
  • edis-check-rdb
  • redis-cli redis-server 文件移动到/usr/local/redis/bin/目录。
bash
cd /usr/local/redis
mkdir etc
mkdir bin
mv redis.conf /usr/local/redis/etc/
cd src/
mv mkreleasehdr.sh redis-benchmark redis-check-aof redis-check-rdb redis-cli redis-server /usr/local/redis/bin/

启动redis

bash
cd /usr/local/redis/bin
redis-server

设置后台启动

bash
vim /usr/local/redis/etc/redis.conf

# 将daemonize属性改为yes

# 重新启动redis

重启redis

bash
使用命令,找到已启动的redis服务,使用kill命令杀掉redis服务进程。再执行
ps -ef|grep redis

使用命令,启动redis服务。
./bin/redis-server /usr/local/redis/etc/redis.conf

13 nvm常用命令 ​

shell
//1.版本管理
nvm on //开启node.js版本管理
nvm off //关闭node.js版本管理

//2.常用命令
nvm list available //显示所有可以下载的版本
nvm install node版本号 //安装对应版本的node
nvm list //查看已安装的node版本列表
nvm use node 版本号 //切换到对应版本的node.js
nvm uninstall node //卸载对应版本的node

//3.按钮查案
nvm --help //显示命令行帮助信息

14. centos服务器创建新用户并赋予root权限,关闭root远程登录 ​

1.创建用户,设置密码

adduser sxq
passwd sxq # 触发交互,输入密码

2.授予root权限

修改sudoers,为创建的用户赋予root权限,这样只用新用户就能完成所有服务器操作了。

sudoers文件在/etc目录下。

首先修改该文件的权限为允许修改

shell
chmod 777 /etc/sudoers

打开该文件

输入i进入编辑模式

shell
vim /etc/sudoers
或
vi /etc/sudoers

在root ALL=(ALL) ALL这句话后面换行,新增一行

shell
sxq ALL=(ALL) ALL #和root一样的权限

敲esc进入命令模式,输入 :wq,保存退出。

保存完后修改回文件原来的权限

shell
chmod 444 /etc/sudoers

3.禁止root登陆,给root用户的权限给禁用掉,黑客就没法通过root破解登陆操作服务器,至少用户名变了,给黑客增加难度。

编辑sshd_config文件

shell
vim /etc/ssh/sshd_config

找到PermitRootLogin yes ,把yes改成no。

shell
PermitRootLogin no

保存退出。

4.重启sshd,使sshd修改生效

shell
systemctl restart sshd.service

minio ​

/usr/local/minio/minio server --console-address :9001 /usr/local/minio/data

my.cnf ​

./mysqld --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data/ --initialize --lower-case-table-names=1

[client]
port=3306 #服务器的通信端口

socket=/tmp/mysql.sock #sock文件这个会自动创建,不用大家手动创建,但是需要指定目录

#这里可以在/tmp/目录下再创建一个mysql文件夹将sock文件保存在里面,那这部分可以改成

#socket=/tmp/mysql/mysql.sock

[mysqld]

port=3306

user=mysql 

socket=/tmp/mysql.sock 

basedir=/usr/local/mysql 

datadir=/usr/local/mysql/data

centos防火墙相关操作 ​

开放80端口:

firewall-cmd --zone=public --add-port=80/tcp --permanent

查询端口号80 是否开启:

firewall-cmd --query-port=8099/tcp

重启防火墙:

firewall-cmd --reload

用 Markdown 记录,用时间沉淀