From 0498dc3939528bb835229bf0cb640d94163aa66b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AA=9B=E5=AA=9B?= Date: Wed, 12 Jun 2024 08:02:13 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E7=AC=94=E8=AE=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../20240607-ssl\350\257\201\344\271\246.md" | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 "\351\231\210\346\264\201\346\242\205/20240607-ssl\350\257\201\344\271\246.md" diff --git "a/\351\231\210\346\264\201\346\242\205/20240607-ssl\350\257\201\344\271\246.md" "b/\351\231\210\346\264\201\346\242\205/20240607-ssl\350\257\201\344\271\246.md" new file mode 100644 index 0000000..e4ff681 --- /dev/null +++ "b/\351\231\210\346\264\201\346\242\205/20240607-ssl\350\257\201\344\271\246.md" @@ -0,0 +1,24 @@ +```bash + + +sudo cp example.crt /etc/ssl/certs/ +sudo cp example.key /etc/ssl/private/ +``` + +编辑Nginx的配置文件,通常位于`/etc/nginx/sites-available/default`或特定站点的配置文件: + +server { listen 443 ssl; + + server_name example.com; + + + + ssl_certificate /etc/ssl/certs/your_cert.crt; + + ssl_certificate_key /etc/ssl/private/your_key.key; + + # 如果有中间证书 + + ssl_trusted_certificate /etc/ssl/certs/intermediate.crt; + +​ # 其他SSL相关配置... } \ No newline at end of file -- Gitee From c429720b8ba77c60db3de9a6e3ce062b37e18e9b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AA=9B=E5=AA=9B?= Date: Wed, 12 Jun 2024 11:14:19 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E7=AC=94=E8=AE=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...00\344\272\233\345\221\275\344\273\244.md" | 300 ++++++++++++++++++ 1 file changed, 300 insertions(+) create mode 100644 "\351\231\210\346\264\201\346\242\205/20240612-Debian\347\263\273\347\273\237\347\232\204\344\270\200\344\272\233\345\221\275\344\273\244.md" diff --git "a/\351\231\210\346\264\201\346\242\205/20240612-Debian\347\263\273\347\273\237\347\232\204\344\270\200\344\272\233\345\221\275\344\273\244.md" "b/\351\231\210\346\264\201\346\242\205/20240612-Debian\347\263\273\347\273\237\347\232\204\344\270\200\344\272\233\345\221\275\344\273\244.md" new file mode 100644 index 0000000..48cf09b --- /dev/null +++ "b/\351\231\210\346\264\201\346\242\205/20240612-Debian\347\263\273\347\273\237\347\232\204\344\270\200\344\272\233\345\221\275\344\273\244.md" @@ -0,0 +1,300 @@ +## Debian系统的一些命令 + +1. 设置国内软件源镜像 /etc/apt/sources.list +2. 更新软件包列表:apt update +3. 更新系统:apt upgrade -y +4. 安装vim: + 1. apt install vim -y + 2. locate 从数据库中找, find实时从系统中找 + +5. 编辑网卡配置,设置静态IP: +6. 只在虚拟机上操作,不要在云服务器操作 + +```bash +vim /etc/network/interfaces + +# 按如下设置 +# The primary network interface +allow-hotplug ens192 +iface ens192 inet dhcp + +#重新启动网络服务 +sudo systemctl restart networking +``` + +5. 修改SSHD配置,允许root用户远程登录 + + ```bash + vim /etc/ssh/sshd_config + + # 取消如下代码的注释,并且将其值设置为yes,以允许root用户的远程登录 + 22 + PermitRootLogin yes + ``` + +6. 配置环境变量,简单化ls的用法 + +```bash + export LS_OPTIONS='--color=auto' + alias ls='ls $LS_OPTIONS' + alias ll='ls $LS_OPTIONS -l' + alias l='ls $LS_OPTIONS -lA' +``` + + + +7. timedatectl + +使用场景**:查看和设置系统时间和日期,时区和 NTP(网络时间协议)设置。 + +**核心术语**: + +- **NTP**:网络时间协议,用于同步时间。 +- **RTC**:实时时钟。 + +```bash +timedatectl status +``` + + + +8. reboot + +**使用场景**:重新启动系统。 + +**核心术语**: + +- **systemd**:系统和服务管理器。 + +```bash +sudo reboot +``` + + + +9. poweroff + + 使用场景:关闭系统电源。 + + **核心术语**: + + - **halt**:停止系统所有的 CPU 功能。 + +```bash +sudo poweroff +``` + + + +10. wget + +**使用场景**:从网络上下载文件。 + +**核心术语**: + +- **URL**:统一资源定位符。 +- **HTTP/HTTPS**:超文本传输协议 + +```bash +wget https://example.com/file.txt +``` + + + +11. curl + +**使用场景**:从网络上获取或发送数据。 + +**核心术语**: + +- **URL**:统一资源定位符。 +- **GET/POST**:HTTP 请求方法。 + +```bash +curl -O https://example.com/file.txt +``` + + + +12. ps + +**使用场景**:查看当前运行的进程。 + +**核心术语**: + +- **PID**:进程标识符。 +- **TTY**:终端类型 + +```bash +ps aux # 显示所有用户的所有进程 一般会结合。grep,awk等过滤数据 +``` + + + +13. kill + +**使用场景**:向进程发送信号(通常用于终止进程)。 + +**核心术语**: + +- **SIGTERM**:请求中止进程。 +- **SIGKILL**:强制终止进程。 + +```bash +kill 1234 # kill 进程号,用pidof 进程名。来查看具体的进程的进程号 +``` + + + +14. killall + +**使用场景**:向指定名称的所有进程发送信号。 + +`先安装psmisc` + +1. 安装psmisc 后,就会有pstree和killall + +**核心术语**: + +- **signal**:信号,通知进程执行某种操作。 + +```bash +killall baidu +``` + + + +15. ip + +**使用场景**:显示和操作网络接口和路由。 + +**核心术语**: + +- **address**:IP 地址。 +- **route**:路由信息。 + +```bash +ip a +ip r +``` + + + +16. ss + +**使用场景**:显示套接字统计信息。旧版是netstat + +**核心术语**: + +- **TCP**:传输控制协议。 +- **UDP**:用户数据报协议。 + +```bash +ss -tuln # 可以查看哪些端口开放着 +``` + + + +17. uname + +使用场景:显示系统信息 + +核心术语: + +- kernel:操作系统内核 +- OS:操作系统 + +```bash +uname -a +``` + + + +18. uptime + +**使用场景**:显示系统运行时间和负载。 + +**核心术语**: + +- **load average**:系统平均负载。 + + + +19. who + +使用场景:显示当前登录用户信息 + +核心术语: + +- login:用户登录信息 +- TTY:终端类型 + + + +20. last + +**使用场景**:显示系统上最近的登录信息。 + +**核心术语**: + +- **wtmp**:记录登录和注销事件的文件。 + + + +21. ping + +**使用场景**:测试网络连通性。 + +- **ICMP**:互联网控制消息协议。 +- **echo request**:回显请求。 + + + +22. traceroute + +**使用场景**:显示到达网络主机的路径。 + +**核心术语**: + +- **hop**:从一个网络节点到另一个的跳转。 +- **TTL**:生存时间。 + +````bash +traceroute crush7.fun +```` + + + +23. history + +**使用场景**:显示命令历史记录。 + +**核心术语**: + +- **bash history**:记录用户输入的命令历史。 + + + +24. `free` 和 `df -h` 是两个用于查看系统资源利用情况的常用命令 + +- 1. **`free`**:该命令用于显示系统内存的使用情况,包括物理内存和交换空间(swap)。执行 `free` 命令时,会显示系统的内存信息,包括总内存、已使用内存、空闲内存以及缓冲区和缓存等情况。 + 2. **`df -h`**:该命令用于显示文件系统的磁盘空间利用情况。执行 `df -h` 命令时,会显示系统中每个挂载的文件系统的磁盘使用情况,包括总容量、已使用空间、剩余空间以及挂载点等信息。 + + + +25. du + +```bash +du -h # 查看当前目录的磁盘的使用情况 + +du -h /目录名 # 查看特定目录的磁盘使用情况 + +du -sh /path/to/file_or_directory # 显示文件或目录的总磁盘使用量 + +du -ah /path/to/directory # 显示目录中每个文件的磁盘使用量 + +du -h | sort -h # 按照磁盘使用量排序显示目录 + +du -h --max-depth=1 /path/to/directory # 限制显示的深度 +``` + -- Gitee From a38be4f23e15dd80ae542cb957d81e4b096d39cb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AA=9B=E5=AA=9B?= Date: Thu, 13 Jun 2024 17:14:09 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E7=AC=94=E8=AE=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...3-\351\207\215\345\256\232\345\220\221.md" | 102 ++++++++++++++++++ 1 file changed, 102 insertions(+) create mode 100644 "\351\231\210\346\264\201\346\242\205/20240613-\351\207\215\345\256\232\345\220\221.md" diff --git "a/\351\231\210\346\264\201\346\242\205/20240613-\351\207\215\345\256\232\345\220\221.md" "b/\351\231\210\346\264\201\346\242\205/20240613-\351\207\215\345\256\232\345\220\221.md" new file mode 100644 index 0000000..3f702f7 --- /dev/null +++ "b/\351\231\210\346\264\201\346\242\205/20240613-\351\207\215\345\256\232\345\220\221.md" @@ -0,0 +1,102 @@ +## 重定向和管道 + +在 Unix 和 Linux 系统中,文件描述符用于表示打开的文件或者输入/输出流。常用的文件描述符包括: + +- `0`:标准输入(stdin): 键盘输入 +- `1`:标准输出(stdout): 直接显示在屏幕,不包含错误信息 +- `2`:标准错误(stderr): 只包含错误信息 + +使用形式: + +- 定向符前直接用数字,如 1> 1.txt 、 2> 2.txt +- 定向符后紧跟定向符并加&号如 >&1 + + + +### 重定向 + +重定向允许将命令的输入或输出重定向到文件或其他命令。常用的重定向符号包括 `>`、`>>`、`<`、`2>` &>等。 + +#### 输出重定向 + +1. **标准输出覆盖重定向 `>`** + + 将命令的标准输出重定向到一个文件,如果文件已经存在,则覆盖它。 + + ```bash + ls > filelist.txt + ``` + + 这个命令将 `ls` 命令的输出保存到 `filelist.txt` 文件中,如果文件已存在,则会被覆盖。 + +2. **追加输出重定向 `>>`** + +将命令的标准输出追加到一个文件的末尾,如果文件不存在,则创建它。 + +```bash +echo "Hello, World!" >> greetings.txt +``` + +这个命令会将 "Hello, World!" 追加到 `greetings.txt` 文件中。 + +3. 注意: + + 1. 标准输出不含错误信息 + + + +### 输入重定向 + +1. 输入重定向 + +​ 将文件的内容作为命令的输入。 + +```bash +sort < unsorted_list.txt + +# 原文件 +apple +orange +banana + +# 这个命令将 `unsorted_list.txt` 文件的内容作为 `sort` 命令的输入进行排序。 +``` + + + +### 错误重定向 + +1. **错误输出重定向 `2>`** + + 将命令的错误输出重定向到一个文件。 + + ```bash + reboot 2> error_log.txt + ``` + + 这个命令会将 `ls` 命令的错误信息保存到 `error_log.txt` 文件中。 + +2. **错误输出追加重定向 `2>>`** + +将命令的错误输出追加到一个文件。 + +```bash +ls non_existent_file 2>> error_log.txt +``` + +这个命令会将 `ls` 命令的错误信息追加到 `error_log.txt` 文件中。 + +3. **同时重定向标准输出和标准错误输出** + +使用 `&>` 符号将标准输出和错误输出同时重定向到同一个文件。 + +```bash +command &> output_and_error_log.txt # 正确和错误原版混搭,原封不动 +command > 1.txt 2>&1 # 正确和错误原版混搭,原封不动 + +command > 1.txt 2>> 1.txt # 先正确后错误 +command 2> 1.txt >> 1.txt # 先错误后正确 + +``` + +这个命令会将 `command` 的标准输出和错误输出都保存到 `output_and_error_log.txt` 文件中。 \ No newline at end of file -- Gitee