diff --git "a/\344\275\234\344\270\232/20240607_SSL\350\257\201\344\271\246\347\232\204\350\216\267\345\217\226\345\222\214\351\203\250\347\275\262.md" "b/\344\275\234\344\270\232/20240607_SSL\350\257\201\344\271\246\347\232\204\350\216\267\345\217\226\345\222\214\351\203\250\347\275\262.md" new file mode 100644 index 0000000000000000000000000000000000000000..909f295cf6d7c35c50e9c457227f426ddfec2669 --- /dev/null +++ "b/\344\275\234\344\270\232/20240607_SSL\350\257\201\344\271\246\347\232\204\350\216\267\345\217\226\345\222\214\351\203\250\347\275\262.md" @@ -0,0 +1,43 @@ +#### SSL证书的获取和部署 + +1. 免费ssl证书的获取: SSL证书–免费证书–立即购买 创建证书 + + - 申请证书 证书申请表单填写 解析域名 下载证书包(两个文件) 根据服务器类型,选择对应的SSL证书下载即可 + +2. ssl证书的部署: + + ``` + /etc/nginx/conf.d ##路径下创建文件夹 + ``` + +3. 把本地下载好的证书包,上传到/etc/nginx/cert里,找到装载配置信息的文件夹,并编辑它 + +``` +server { + listen 80; + server_name suye.love,www.suye.love; + return 301 https://suye.love$request_uri; +} +server{ + listen 443 ssl; + server_name suye.love,www.suye.love; + ssl_certificate /etc/nginx/conf.d/cert/www.suye.love.pem; + ssl_certificate_key /etc/nginx/conf.d/cert/www.suye.love.key; + location / { + root /var/www/suye.love; + index index.html; + } +} +``` + +- /检查 + +``` +nginx -t +``` + +- 用于重置加载配置,不重启nginx下 + +``` +nginx -s reload +``` \ No newline at end of file diff --git "a/\344\275\234\344\270\232/20240611_\345\256\211\350\243\205\345\256\214Debian\347\263\273\347\273\237\344\270\203\346\255\245\351\252\244.md" "b/\344\275\234\344\270\232/20240611_\345\256\211\350\243\205\345\256\214Debian\347\263\273\347\273\237\344\270\203\346\255\245\351\252\244.md" new file mode 100644 index 0000000000000000000000000000000000000000..1124f9017748bf0542b36f565e8fc2ed0b588ca8 --- /dev/null +++ "b/\344\275\234\344\270\232/20240611_\345\256\211\350\243\205\345\256\214Debian\347\263\273\347\273\237\344\270\203\346\255\245\351\252\244.md" @@ -0,0 +1,228 @@ +#### 安装完Debian系统七步骤 + +1. 设置国内软件源镜像 + + ``` + /etc/apt/sources.list + ## 记得备份 + ``` + +2. 更新软件包列表 + + ``` + apt update + ``` + +3. 更新系统 + + ``` + apt upgrade -y + ``` + +4. 安装vim + + ``` + apt install vim -y + ## locate find + ``` + +5. 编辑网卡配置,设置静态IP + + ``` + vim /etc/network/interfaces + + ## 进入后编辑,把原先的dhcp换成静态的static + allow-hotplug ens192 + iface ens192 inet static + address 172.16.90.71 + netmask 255.255.255.0 + gateway 172.16.90.1 + + ##重新启动网络服务 + sudo systemctl restart networking + ``` + +6. 修改SSHD配置,允许root用户远程登录 + + ``` + vim /etc/ssh/sshd_config + + + PermitRootLogin yes ##将这行注释取消并且no改为yes + ``` + +7. 配置环境变量,简单化ls的用法 + + ``` + ##切换 + cd /etc/profile.d/ + + ##新建ls.sh文件 + touch ls.sh + + #进入ls.sh编辑 + export LS_OPTIONS='--color=auto' + alias ls='ls $LS_OPTIONS' + alias ll='ls $LS_OPTIONS -l' + alias l='ls $LS_OPTIONS -lA' + ``` + +8. 配置环境变量,设置当前系统字符集,以接受中文 + + ``` + ##切换 + cd /etc/profile.d/ + + ##新建lang.sh文件 + touch lang.sh + + #进入lang.sh编辑 + source /etc/profile.d/lang.sh + echo $LC_ALL + ``` + +##### 常用命令 + +- time + + ``` + real:总的时间(墙上时钟时间)。 + user:用户态 CPU 时间。 + sys:内核态 CPU 时间。 + ``` + +- date + + ``` + %Y:四位数的年份。 + %m:两位数的月份。 + %d:两位数的日期。 + + date "+%Y-%m-%d %H:%M:%S" + ## 年月日 时间 + ``` + +- timedatectl + + - 查看和设置系统时间和日期,时区和 NTP(网络时间协议)设置 + + ``` + NTP:网络时间协议,用于同步时间。 + RTC:实时时钟。 + ``` + +- reboot + + - 重新启动系统 + +- poweroff + + - 关闭系统电源 + +- wget + + - 从网络上下载文件 + + ``` + URL:统一资源定位符。 + HTTP/HTTPS:超文本传输协议。 + + wget https://example.com/file.txt ##网址 + ``` + +- curl + + - 从网络上获取或发送数据 + + ``` + URL:统一资源定位符。 + GET/POST:HTTP 请求方法。 + ``` + +- ps + + - 查看当前运行的进程 + + ``` + PID:进程标识符。 + TTY:终端类型。 + ``` + +- kill + + - 向进程发送信号(通常用于终止进程) + + ``` + SIGTERM:请求中止进程。 + SIGKILL:强制终止进程。 + ``` + +- ip + + - 显示和操作网络接口和路由 + + ``` + address:IP 地址。 + route:路由信息。 + ``` + +- ss + + - 显示套接字统计信息。**旧版是netstat** + + ``` + TCP:传输控制协议。 + UDP:用户数据报协议。 + ``` + +- uname + + - 显示系统信息 + + ``` + kernel:操作系统内核。 + OS:操作系统。 + ``` + +- uptime + + - 显示系统运行时间和负载 + + ``` + load average:系统平均负载 + ``` + +- .who + + - 显示当前登录用户信息 + + ``` + login:用户登录信息。 + TTY:终端类型。 + ``` + +- last + + - 显示系统上最近的登录信息 + + ``` + wtmp:记录登录和注销事件的文件。 + ``` + +- ping + + - 测试网络连通性 + + ``` + ICMP:互联网控制消息协议。 + echo request:回显请求。 + ``` + +- traceroute + + - 显示到达网络主机的路径 + + ``` + hop:从一个网络节点到另一个的跳转。 + TTL:生存时间。 + ``` \ No newline at end of file diff --git "a/\344\275\234\344\270\232/20240612_\351\207\215\345\256\232\345\220\221\347\255\211.md" "b/\344\275\234\344\270\232/20240612_\351\207\215\345\256\232\345\220\221\347\255\211.md" new file mode 100644 index 0000000000000000000000000000000000000000..6077c6dbeb1475fdddcdb7e1c529332e6bb5ca6e --- /dev/null +++ "b/\344\275\234\344\270\232/20240612_\351\207\215\345\256\232\345\220\221\347\255\211.md" @@ -0,0 +1,89 @@ +##### 重定向 + +- 特殊定向符: + + 1. **>** 输出覆盖定向 + + 2. **>>** 输出追加定向 + + - `0`:标准输入: 键盘输入 + + - `1`:标准输出: 直接显示在屏幕 **不包含错误信息 ** + + ``` + 1>1.txt 或者 >1.txt ##将正确信息覆盖保存到1.txt + 1>>1.txt 或者 >>1.txt ##将正确信息追加保存到1.txt + ``` + + - `2`:标准错误: 只包含错误信息 + + ``` + 2>1.txt ##错误信息覆盖保存到1.txt + 2>>1.txt ##错误信息追加保存到1.txt + ``` + + 3. **&** 同时定向标准输出和错误输出 + + ``` + (555 || echo 78965) >1.txt 2>1.txt + (555 || echo 78965) &>1.txt + (555 || echo 78965) >1.txt 2>&1 + + ##输出正确的信息覆盖到1.txt,错误信息覆盖到1.txt + ##追加&>>同上 + ``` + + 4. **|** 管道 + + - 左边输出的作为右边的输入 + + ``` + cd 0528/ |find -name "*.log" + ##切换到0528 ##并且找到关键字为.log的后缀 + ``` + + 5. **< >** 输入输出同时使用 + + ``` + sort -n < num.txt >num1.txt ## 输入整行数字的排序,并且输出到num1.txt + ``` + + 6. **/dev/null** 丢弃 + + ``` + (555 || echo 78965) >/dev/null 2>1.txt + ## 正确的信息丢弃在/dev/null + ##错误的信息覆盖保存到1.txt + ``` + +### tee + +- 选项 + + 1. **-a**:追加行写入文件而不是覆盖。 + + ``` + echo 4444 | tee -a 8.txt ##在末尾追加一条 + ``` + + 2. **-i**:忽略中断信号。 + +``` +echo 123 | tee {1..3}.txt ##相当于 echo 123 >1.txt +tee 文件.txt ##可以直接插入文本 +## 相当于 vim 文件.txt +``` + +##### 作业 + +1. << 是什么功能? + + ``` + 是个嵌入多行文本作为输入 + + cat << 自定义的结束标记 >文件.txt + ``` + +2. ()把命令包括起来,是干什么功能? + +- 括号内的命令作为一个整体被执行,可以帮助组合多个命令,让它们看起来像一个单一的命令单元。这对需要按顺序执行一系列命令且希望它们作为一个整体考虑时非常有用。 \ No newline at end of file diff --git "a/\344\275\234\344\270\232/20240619_\350\277\233\347\250\213\347\256\241\347\220\206.md" "b/\344\275\234\344\270\232/20240619_\350\277\233\347\250\213\347\256\241\347\220\206.md" new file mode 100644 index 0000000000000000000000000000000000000000..f6152cc00f9b41c278ea123362adfd7398ce5f2f --- /dev/null +++ "b/\344\275\234\344\270\232/20240619_\350\277\233\347\250\213\347\256\241\347\220\206.md" @@ -0,0 +1,61 @@ +### 进程管理 + +1. 常用命令 + + - **ps** + + - ps -a :列出所有运行中进程 + - ps -ef | grep - 关键字 + - ps -aux :查看所有进程 + + - **top** :实时监控进程 + + - **htop**:在top的原基础上升级 + + - **pstree**(以tree树结构显示进程,需安装**psmisc**) + + - pstree -au :显示所有进程并显示所属用户 + + - **htop** + + - 在htop中,F3:search 查找 F4:filter 过滤 F9:kill 杀死 + - 要安装htop + + - **kill** 终止进程(根据进程号) + + ``` + kill -9 pid(进程号) ###强制终止进程 + ``` + + - **pkill**:根据进程名杀死进程 + + ``` + pkill 进程名 + ``` + + - **pgrep** :根据名称或属性查找并显示进程信息 + + - pgrep -u 用户名 sh(进程名) + - pidof nginx 查找nginx 的进程号 + - pgrep nginx 查找nginx 的进程号 + + - **bg**:将一个暂停(stopped)的作业放到后台继续执行。 + + - 使用Ctrl+Z键暂停该进程 + + - **fg**:将后台作业调至前台并继续执行。 + +2. 服务系统 + + - systemctl + 1. 启动:systemctl start 服务名 + 2. 停止:systemctl stop 服务名 + 3. 重启:systemctl restart 服务名 + 4. 查看:systemctl status 服务名 + 5. 重新加载配置文件:systemctl reload 服务名 + - service + 1. 启动:service 服务名 start + 2. 停止:service 服务名 stop + 3. 重启:service 服务名 restart + 4. 查看:service 服务名 status + 5. 重新加载配置文件:service 服务名 reload \ No newline at end of file