添加文档

This commit is contained in:
zpc 2024-05-31 17:55:08 +08:00
commit f66d72565e
15 changed files with 685 additions and 0 deletions

25
.net/.net 8.md Normal file
View File

@ -0,0 +1,25 @@
# [Ubuntu 22.04安装.net 8](https://learn.microsoft.com/zh-cn/dotnet/core/install/linux-ubuntu-2204)
```sh
# 更新包
sudo apt-get update
# 安装.net 8
sudo apt-get install -y dotnet-sdk-8.0
```
# 运行
```sh
#恢复依赖
dotnet restore
#编译项目
dotnet build
# 查看版本列表
dotnet --list-sdks
# 发布项目
dotnet publish -c Release
```

46
.net/grpc.md Normal file
View File

@ -0,0 +1,46 @@
# gRPC服务
## 在已有.net code 中添加gRPC服务器
### 1.按照包
```C#
dotnet add package Grpc
dotnet add package Grpc.Tools
dotnet add package Grpc.AspNetCore
```
RegionStatisticsClientServer
### 2.添加 .proto 文件
helloworld.proto
```C#
syntax = "proto3";
package HelloWorld;
service Greeter {
rpc SayHello (HelloRequest) returns (HelloReply) {}
}
message HelloRequest {
string name = 1;
}
message HelloReply {
string message = 1;
}
```
### 3.配置 csproj 文件
```C#
<ItemGroup>
<Protobuf Include="Protos\helloworld.proto" GrpcServices="Server" />
</ItemGroup>
```
### 4.生成代码
###
```C#
```

102
Git/git.md Normal file
View File

@ -0,0 +1,102 @@
# git
# 常用命令
```sh
# 拉取代码
git clone [url]
# git clone git@192.168.1.33:mogu_server/sunnysports.git
# 更新代码
git pull
# 添加到暂存区
git add .
# 提交代码
git commit -m "提交内容"
# 推送代码
git push
# 切换分支
git checkout <分支名称>
git checkout dev-sunny
#查看提交历史记录
git log
#比较当前文件与暂存区或HEAD的差异
git diff
#将当前工作区的修改保存起来,以便稍后恢复。
git stash
#恢复之前保存的修改并删除对应的stash。
git stash pop
#安装子模块
git submodule init
git submodule update
```
# 创建ssh证书
## 1.启动Git Bash
## 2.生成新的SSH密钥
```sh
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
ssh-keygen -t rsa -b 4096 -C "zpc@pc"
```
## 3.设置SSH代理 在某些系统上你可能需要在每次启动计算机时添加SSH密钥到SSH代理。可以使用以下命令
``` sh
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_rsa
```
## 5.复制公钥:使用以下命令将公钥复制到剪贴板:
```sh
cat ~/.ssh/id_rsa.pub | clip
```
## 6.验证
```sh
ssh -T git@192.168.1.33
ssh -T git@github.com
```
ssh-copy-id -i ~/.ssh/id_rsa ubuntu@1.117.87.77
# Ubuntu 添加git
``` sh
sudo apt update
sudo apt install git
git --version
```
## 圣剑
cat ~/.ssh/id_rsa.pub
eval "$(ssh-agent -s)" ssh-add ~/.ssh/id_rsa
ssh -T git@192.168.1.33
ssh-keygen -t rsa -b 4096 -C "zpc1131"
ssh-keygen -t rsa -b 4096 -C "zpc1131@gmail.com"
ssh -T git@github.com
### 拉取
``` sh
git clone git@192.168.1.33:mogu_server/sunnysports.git
```
ssh-copy-id -i D:/ssh/229.pub root@192.168.1.229
eval "$(ssh-agent -s)" ssh-add D:/ssh/229
eval "$(ssh-agent -s)" ssh-add ~/.ssh/229
ssh root@192.168.1.229 -i ~/.ssh/229_rsa
```sh
ssh-keygen -t rsa -b 4096 -C "zhangzhe@wsl"
/home/z/.ssh/229_rsa
eval "$(ssh-agent -s)" ssh-add /home/z/.ssh/229_rsa
ssh-copy-id -i /home/z/.ssh/229_rsa.pub root@192.168.1.229
```

View File

@ -0,0 +1,9 @@
EXEC sp_configure 'show advanced options', 1;
RECONFIGURE;
EXEC sp_configure 'max server memory (MB)';
EXEC sp_configure 'min server memory (MB)';
EXEC sp_configure 'max server memory (MB)', 10240; -- 10GB in MB
EXEC sp_configure 'min server memory (MB)', 4096; -- 4GB in MB
RECONFIGURE;

57
linux/Gitea.md Normal file
View File

@ -0,0 +1,57 @@
# Gitea
搭建私有Git服务器
##
```sh
sudo apt update
sudo apt install git wget -y
# 创建git用户
sudo adduser --system --shell /bin/bash --gecos 'Git Version Control' --group --disabled-password --home /home/git git
# 下载代码
wget -O /tmp/gitea https://dl.gitea.io/gitea/1.16.7/gitea-1.16.7-linux-amd64
wget -O /tmp/gitea https://dl.gitea.com/gitea/1.22.0/gitea-1.22.0-linux-amd64
# 将下载的文件移动到合适的位置并赋予执行权限
sudo mv /tmp/gitea /usr/local/bin/gitea
sudo chmod +x /usr/local/bin/gitea
# 创建所需的目录:
sudo mkdir -p /var/lib/gitea/{custom,data,log}
sudo chown -R git:git /var/lib/gitea/
sudo chmod -R 750 /var/lib/gitea/
sudo mkdir /etc/gitea
sudo chown root:git /etc/gitea
sudo chmod 770 /etc/gitea
# 创建服务文件:
sudo nano /etc/systemd/system/gitea.service
# 添加内容
[Unit]
Description=Gitea
After=syslog.target
After=network.target
[Service]
RestartSec=2s
Type=simple
User=git
Group=git
WorkingDirectory=/var/lib/gitea/
ExecStart=/usr/local/bin/gitea web --config /etc/gitea/app.ini
Restart=always
Environment=USER=git HOME=/home/git GITEA_WORK_DIR=/var/lib/gitea/
[Install]
WantedBy=multi-user.target
#重新加载systemd并启动Gitea
sudo systemctl daemon-reload
sudo systemctl enable gitea
sudo systemctl start gitea
sudo systemctl status gitea
# 可选,放开防火墙
sudo ufw allow 3000/tcp
sudo ufw reload
```
## 配置项
1. 数据库文件路径:/var/lib/gitea/data/gitea.db
2. 仓库根目录:/var/lib/gitea/data/gitea-repositories
3. LFS根目录/var/lib/gitea/data/lfs
4. 日志路径:/var/lib/gitea/log
5. 管理员账号huanmeng 9-9jYRqeywr!SA3 huanmeng@admin.com

View File

@ -0,0 +1,75 @@
# <div style="text-align:center">mysql 安装记录</div>
## 操作环境 Ubuntu 22.04.2 LTS
### 使用 apt 方式安装
```sh
#更新系统的软件包列表
sudo apt update
#查看可用的mysql版本
apt list -a mysql-server
#安装MySQL服务器
sudo apt install mysql-server
#安装特定版本,将 <version> 替换为你想要安装的具体版本号
sudo apt-get install mysql-server=<version>
sudo apt-get install mysql-server=5.7.35-1ubuntu18.04
#锁定版本(可选)
sudo apt-mark hold mysql-server
#安装完成后可以运行以下命令来启动MySQL服务
sudo service mysql start
#停止 MySQL 服务
sudo service mysql stop
#检查MySQL服务状态
sudo service mysql status
#(可选) 为了增加MySQL的安全性你可以运行MySQL安全性脚本
sudo mysql_secure_installation
#使用 apt-get 删除 MySQL 软件包
sudo apt-get purge mysql-server mysql-client mysql-common mysql-server-core-* mysql-client-core-*
#删除 MySQL 数据目录
sudo rm -rf /etc/mysql /var/lib/mysql
```
### MySQL 的二进制发行版,手动安装
## 常用语句
```sh
#登录
mysql -u 用户名 -p
#刷新权限
FLUSH PRIVILEGES;
#退出mysql
exit;
```
### 常见问题
#### 安装完成后登录不上去
第一次登录时没有密码,造成无法登录这是由于 MYSQL 数据库一开始生成了一个随机密码
解决方案:
方案 1.使用命令查看随机密码,利用该文件中的 user 和 password 登录
```sh
sudo cat /etc/mysql/debian.cnf
#mysql -u debian-sys-maint -p
#mQxsCvggohEqn2rN
```
方案 2.修改密码,修改的密码可能要和 mysql 的规则一直
```sh
GRANT ALL PRIVILEGES ON *.* TO root@localhost IDENTIFIED BY "密码";
```

View File

@ -0,0 +1,28 @@
# <div style="text-align:center">SQL Server安装记录</div>
## 操作环境 Ubuntu 22.04.2 LTS
## [安装帮助文档](https://learn.microsoft.com/zh-cn/sql/linux/quickstart-install-connect-ubuntu?view=sql-server-linux-ver15&preserve-view=true&tabs=ubuntu2004#install)
### 安装方法
1.导入公共存储库 GPG 密钥
```sh
curl https://packages.microsoft.com/keys/microsoft.asc | sudo tee /etc/apt/trusted.gpg.d/microsoft.asc
```
2.注册 SQL Server Ubuntu 存储库:
```sh
sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/20.04/mssql-server-2019.list)"
```
3.运行以下命令以安装 SQL Server
```sh
sudo apt-get update
sudo apt-get install -y mssql-server
```
4.启动配置
```sh
sudo /opt/mssql/bin/mssql-conf setup
```
4.停止sqlserver
```sh
sudo systemctl stop mssql-server
```

41
linux/Shadowsocks.md Normal file
View File

@ -0,0 +1,41 @@
# 机场 Shadowsocks
可以通过v2rayN进行代理连接实现翻墙
## Shadowsocks 安装
```sh
sudo apt update
# 安装包
sudo apt install shadowsocks-libev -y
# 配置 Shadowsocks创建并编辑 Shadowsocks 的配置文件。这个文件通常位于 /etc/shadowsocks-libev/config.json。
sudo nano /etc/shadowsocks-libev/config.json
# 配置项
{
"server":["::1", "127.0.0.1"],
"mode":"tcp_and_udp",
"server_port":8388,
"local_port":1080,
"password":"07RT9gL2zLZ2",
"timeout":86400,
"method":"chacha20-ietf-poly1305"
}
# 启动和设置开机自启
sudo systemctl start shadowsocks-libev
sudo systemctl enable shadowsocks-libev
# 配置防火墙
sudo ufw allow 8388/tcp
sudo ufw allow 8388/udp
sudo ufw reload
# 检测服务状态
sudo systemctl status shadowsocks-libev
```
### 配置项解释
"server": ["::1", "127.0.0.1"]:定义服务器地址。::1 是 IPv6 的本地回环地址127.0.0.1 是 IPv4 的本地回环地址。这意味着当前配置只会监听本地回环接口。
"mode": "tcp_and_udp":定义 Shadowsocks 工作模式,这里配置为同时支持 TCP 和 UDP 协议。
"server_port": 8388定义服务器监听的端口这里设置为 8388。
"local_port": 1080定义本地代理的端口这里设置为 1080。
"password": "07RT9gL2zLZ2":定义连接到代理服务器时需要使用的密码。
"timeout": 86400定义连接超时时间单位为秒这里设置为 86400 秒(即 24 小时)。
"method": "chacha20-ietf-poly1305":定义加密方法,这里使用 chacha20-ietf-poly1305这是一种安全性较高的加密算法。

10
linux/ffmpeg.md Normal file
View File

@ -0,0 +1,10 @@
## 推取视频
```sh
nohup ffmpeg -re -stream_loop -1 -i /disk/ai_sports/data/sunny_sports/6MM20240327161002.mp4 -c copy -f rtsp rtsp://127.0.0.1:8554/stream_sunny_6MM20240327161002 >/dev/null 2>&1 &
```
rtsp://192.168.1.229:8554/stream_sunny_6MM20240327161002
rtsp://192.168.1.229:8554/stream_sunny_8MM20240327160349

View File

@ -0,0 +1,92 @@
# <div style="text-align:center">liunx 使用记录</div>
## 基础命令
```sh
#关机
sudo shutdown now
#查看发行版信息
lsb_release -a
#查看内核版本
uname -a
#查看系统信息
hostnamectl
#安装ip查看工具
sudo apt-get install net-tools
#查看IP
ifconfig
#查看端口是否打开,有输出为开启,没有输出为关闭
lsof -i:3306
#开发防火墙的3306端口
sudo ufw allow 3306/tcp
# 创建文件夹disk 文件夹名称)
sudo mkdir /disk
# 获取权限
sudo chmod -R 777 *
sudo chmod 777 myfolder
# 删除文件夹
sudo rm -r /disk/sunnysports
```
### 常用命令
```sh
#文件和目录操作
ls: 列出目录内容。
cd: 切换目录。
pwd: 显示当前工作目录的路径。
cp: 复制文件或目录。
mv: 移动或重命名文件或目录。
rm: 删除文件或目录。
mkdir: 创建目录。
chmod: 修改文件或目录的权限。
chown: 修改文件或目录的所有者。
#文件查看和编辑
cat: 显示文件内容。
less: 分页查看文件内容。
head: 显示文件的开头部分。
tail: 显示文件的结尾部分。
nano 或 vim: 文本编辑器。
#系统信息和管理
uname: 显示系统信息。
df: 显示磁盘空间使用情况。
du: 显示目录空间使用情况。
top 或 htop: 显示系统资源使用情况。
ps: 显示当前运行的进程。
kill: 终止进程。
shutdown 或 reboot: 关闭或重启系统。
#用户和权限管理
whoami: 显示当前登录的用户名。
who: 显示当前登录用户的信息。
sudo: 以超级用户权限执行命令。
adduser 或 useradd: 添加新用户。
passwd: 修改用户密码。
groups: 显示用户所属的组。
visudo: 编辑 sudoers 文件,配置用户权限。
#网络相关
ping: 测试网络连接。
ifconfig: 或 ip: 显示网络接口信息。
netstat: 显示网络状态。
traceroute 或 mtr: 追踪网络路由。
wget 或 curl: 下载文件。
ssh: 远程登录。
#压缩和解压
tar: 打包和解压文件。
gzip 或 gunzip: 压缩和解压 gzip 格式的文件。
zip 或 unzip: 压缩和解压 zip 格式的文件。
```

9
linux/make.md Normal file
View File

@ -0,0 +1,9 @@
## make
```sh
sudo apt update
sudo apt install make
make --version
```

35
linux/nano.md Normal file
View File

@ -0,0 +1,35 @@
# nano文本编辑
## 安装
```sh
apt-get install -y nano
```
## 使用语法
```sh
nano <文件名或文件绝对路径>
# 使用示例
nano vvhan.com.txt
nano /root/vvhan.com.txt
```
当你打开一个不存在的文件,那么即为新建文件。打开文件后,就可以直接编辑了。
## 使用教程
```sh
Ctrl+G显示帮助文本
Ctrl+O保存当前文件
Ctrl+R读取其他文件并插入光标位置
Ctrl+Y跳至上一屏幕
Ctrl+K剪切当前一行
Ctrl+C显示光标位置
Ctrl+X退出编辑文本
Ctrl+J对其当前段落以空格为分隔符
Ctrl+W搜索文本位置
Ctrl+V跳至下一屏幕
Ctrl+U粘贴文本至光标处
Ctrl+T运行拼写检查
Ctrl+_跳转到某一行
ALT+U撤销
ALT+E重做
ALT+Y, 语法高亮
ALT+#,显示行号
```

101
linux/nginx.md Normal file
View File

@ -0,0 +1,101 @@
# Nginx
## 常用命令
```sh
# 启动 Nginx 服务
sudo systemctl start nginx
# 关闭
sudo systemctl stop nginx
# 重启
sudo systemctl restart nginx
# 重新加载 Nginx 以应用更改
sudo systemctl reload nginx
# 默认目录
cd /var/www/
# 配置文件
cd /etc/nginx/
/etc/nginx/nginx.conf
#测试 Nginx 配置是否正确
sudo nginx -t
```
## 在 Ubuntu 22.04 上安装和配置 Nginx
### 安装
```sh
#首先,确保您的软件包索引是最新的:
sudo apt update
#步骤 2安装 Nginx
sudo apt install nginx
#步骤 3启动 Nginx 服务
sudo systemctl start nginx
#步骤 4使 Nginx 服务开机自启
sudo systemctl enable nginx
#步骤 5检查 Nginx 状态
sudo systemctl status nginx
#步骤 6配置防火墙
sudo ufw allow 'Nginx Full'
```
### 配置ssh
常见的存放路径是 /etc/nginx/ssl/
```sh
sudo mkdir -p /etc/nginx/ssl
sudo cp /path/to/your/example.com.crt /etc/nginx/ssl/
sudo cp /path/to/your/example.com.key /etc/nginx/ssl/
```
```sh
server {
listen 443 ssl;
server_name api.zpc-xy.com;
ssl_certificate /etc/nginx/ssl/api.zpc-xy.com_nginx/api.zpc-xy.com_bundle.crt;
ssl_certificate_key ssl/api.zpc-xy.com_nginx/api.zpc-xy.com.key;
# ssl_protocols TLSv1.2 TLSv1.3; # 仅使用 TLS 1.2 和 1.3
# ssl_ciphers HIGH:!aNULL:!MD5; # 配置强密码套件
# location / {
# proxy_pass http://localhost:3000; # 例如如果你有一个后端应用运行在端口3000
# proxy_set_header Host $host;
# proxy_set_header X-Real-IP $remote_addr;
# proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
# proxy_set_header X-Forwarded-Proto $scheme;
# }
}
```
### 配置文件
```bash
# 基础配置
server {
listen 80;
server_name example.com www.example.com;
root /var/www/example.com/html;
index index.html index.htm index.nginx-debian.html;
location / {
try_files $uri $uri/ =404;
}
}
server {
# 添加虚拟目录映射
location /output/ {
# alias /disk/ai_sports/DataGateway/output/;
# 或者使用 root 指令(视具体情况而定)
root /disk/ai_sports/DataGateway/output/;
# 可选配置:根据需要添加其他指令,如访问控制、缓存策略等
autoindex on; # 如果希望列出目录内容
# expires 30d; # 设置静态资源缓存过期时间
# try_files $uri $uri/ =404; # 用于处理目录索引和文件不存在的情况
}
}
```

53
linux/ssh.md Normal file
View File

@ -0,0 +1,53 @@
# windwos ssh 创建
```sh
ssh-keygen -t rsa -b 4096 -C "zhangzhe@pc"
# 输入路径 /c/Users/admin/.ssh/229_rsa
# 创建的路径不能有公共的读写权限
eval "$(ssh-agent -s)" ssh-add ~/.ssh/229_rsa
ssh-copy-id -i ~/.ssh/229_rsa.pub root@192.168.1.229
# 远程的时候可以添加密钥文件地址cd
ssh root@192.168.1.229 -i ~/.ssh/229_rsa
```
# linux ssh 创建
```sh
ssh-keygen -t rsa -b 4096 -C "zhangzhe@wsl"
# /home/z/.ssh/229_rsa
eval "$(ssh-agent -s)" ssh-add /home/z/.ssh/229_rsa
ssh-copy-id -i /home/z/.ssh/229_rsa.pub root@192.168.1.229
# 远程的时候可以添加密钥文件地址
ssh root@192.168.1.229 -i ~/.ssh/229_rsa
ssh root@192.168.1.229 -i ~/.ssh/229_rsa "cd /disk/work/sj_git/sunnysports/;make build-data"
```
ssh-copy-id -i /root/.ssh/id_rsa.pub
# linux ssh 线上
```sh
ssh-keygen -t rsa -b 4096 -C "zhangzhe@wsl"
# /home/z/.ssh/25_rsa
eval "$(ssh-agent -s)" ssh-add /home/z/.ssh/25_rsa
ssh-copy-id -i /home/z/.ssh/25_rsa.pub root@192.144.132.25
# 远程的时候可以添加密钥文件地址
ssh root@192.144.132.25 -i ~/.ssh/25_rsa
```
```sh
ssh-keygen -t rsa -b 4096 -C "zhangzhe@pc"
# 输入路径 /c/Users/admin/.ssh/25_rsa
# 创建的路径不能有公共的读写权限
eval "$(ssh-agent -s)" ssh-add ~/.ssh/id_rsa
ssh-copy-id -i ~/.ssh/25_rsa.pub root@192.144.132.25
# 远程的时候可以添加密钥文件地址
ssh root@192.144.132.25 -i ~/.ssh/25_rsa
```
ssh-copy-id -i ~/.ssh/id_rsa.pub ubuntu@1.117.87.77
eval "$(ssh-agent -s)" ssh-add ~/.ssh/id_rsa
1.117.87.77
dbt@com@1234
ssh ubuntu@1.117.87.77
ssh root@1.117.87.77
ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.144.132.25

2
服务器文档/api-1.md Normal file
View File

@ -0,0 +1,2 @@
1. [网络地址](https://api.zpc-xy.com/)
2. IP: 101.43.1.207