From 9ad5565cdce021fc01517185d113b5dabfa08900 Mon Sep 17 00:00:00 2001 From: unknown <2949055373@qq.com> Date: Sun, 26 May 2024 22:54:24 +0800 Subject: [PATCH] =?UTF-8?q?=E7=AC=94=E8=AE=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../20240516-pm2.md" | 44 ++++++ ...70\347\224\250\345\221\275\344\273\244.md" | 59 ++++++++ ...272\346\234\254\350\256\276\347\275\256md" | 139 ++++++++++++++++++ ...72\346\234\254\345\221\275\344\273\244.md" | 85 +++++++++++ 4 files changed, 327 insertions(+) create mode 100644 "\345\274\240\346\263\275\345\220\214/20240516-pm2.md" create mode 100644 "\345\274\240\346\263\275\345\220\214/20240520-Linux\345\270\270\347\224\250\345\221\275\344\273\244.md" create mode 100644 "\345\274\240\346\263\275\345\220\214/20240522-\350\231\232\346\213\237\346\234\272\345\237\272\346\234\254\350\256\276\347\275\256md" create mode 100644 "\345\274\240\346\263\275\345\220\214/20240523-\345\237\272\346\234\254\345\221\275\344\273\244.md" diff --git "a/\345\274\240\346\263\275\345\220\214/20240516-pm2.md" "b/\345\274\240\346\263\275\345\220\214/20240516-pm2.md" new file mode 100644 index 0000000..65bad66 --- /dev/null +++ "b/\345\274\240\346\263\275\345\220\214/20240516-pm2.md" @@ -0,0 +1,44 @@ +pm2 是一个流行的 Node.js 进程管理器,它允许用户在后台运行 Node.js 应用程序,并提供了以下主要功能: + +进程管理:pm2 可以管理和监控多个 Node.js 进程,包括启动、重启、停止、重启失败的服务等。 +高可用:pm2 支持集群模式,可以自动重启失败的服务,保证应用的高可用性。 +日志管理:pm2 自带日志管理功能,可以实时查看和管理应用的输出日志,方便调试和监控。 +自动重启:当 Node.js 应用程序因错误崩溃时,pm2 可以自动重启,根据配置设置重启策略。 +进程生命周期钩子:pm2 支持自定义钩子,允许在应用程序启动、停止、重启等关键阶段执行额外操作。 +命令行工具:pm2 提供了简洁的命令行界面,使得管理和操作 Node.js 应用变得简单。 + + +1.启动应用程序: +pm2 start app.js +启动一个 Node.js 应用程序。 + +2.停止应用程序: +pm2 stop +停止指定名称或 ID 的应用程序。 + +3.重启应用程序: +pm2 restart +重启指定名称或 ID 的应用程序。 + +4.查看所有应用程序: +pm2 list +显示所有正在运行的应用程序列表。 + +5.查看应用程序日志: +pm2 logs +查看指定应用程序的日志输出。 + +6.监控资源使用情况: +pm2 monit +监控所有应用程序的 CPU 和内存使用情况。 + +7.查看应用程序状态: +pm2 show +显示指定应用程序的详细信息,包括状态、日志路径等。 + +8.删除应用程序: +pm2 delete +停止并删除指定名称或 ID 的应用程序。 + +9.保存当前应用程序列表: +pm2 save diff --git "a/\345\274\240\346\263\275\345\220\214/20240520-Linux\345\270\270\347\224\250\345\221\275\344\273\244.md" "b/\345\274\240\346\263\275\345\220\214/20240520-Linux\345\270\270\347\224\250\345\221\275\344\273\244.md" new file mode 100644 index 0000000..68f01c2 --- /dev/null +++ "b/\345\274\240\346\263\275\345\220\214/20240520-Linux\345\270\270\347\224\250\345\221\275\344\273\244.md" @@ -0,0 +1,59 @@ + +常见的执行Linux命令的格式: 命令名(command) 选项(options) 参数(arguments) +命令名:表达的是想要做的事情,例如创建用户、查看文件、重启系统等操作。 +选项:用于对命令进行调整 +参数:一般指要处理的文件、目录、用户等资源名称。 + +Linux命令参数的长格式与短格式 +长格式:man --help +短格式:man -h + +### 目录命令 + + +/ 是指根目录:就是所有目录最顶层的目录 + +./ 表示当前目录: +./ 一般需要和其他文件夹或者文件结合使用,指代当前目录下的东西 +cd ./文件夹 切换到当前目录的某个文件夹 +.. 表示上级目录: +cd .. 切换到上级目录 +cd ../文件夹 切换到上级目录中的某个文件夹 + + +### 常用命令 + + +cat(concatenate):它的主要作用是用于查看和连接文件。 +语法:cat [选项] [文件] +ls(list directory contents):用于显示指定工作目录下之内容(列出目前工作目录所含的文件及子目录) +语法:ls [-alrtAFR] [name...] +ls / (以下是/根目录所有目录) +bin dev lib media net root srv upload www +boot etc lib64 misc opt sbin sys usr +home lost+found mnt proc selinux tmp var +ls /bin 则显示bin目录下所有文件目录 + +mv(move file):用来为文件或目录改名、或将文件或目录移入其它位置。 +语法:mv [options] source(源文件或目录) dest(目标文件或目录) + + +### 按键和它的作用 + + + 按键 作用 +空格键 向下翻一页 +PaGe down 向下翻一页 +PaGe up 向上翻一页 +home 直接前往首页 +end 直接前往尾页 + / 从上至下搜索某个关键词 + ? 从下至上搜索某个关键词 + n 定位到下一个搜索到的关键词 + N 定位到上一个搜索到的关键词 + q 退出帮助文档 + +双击Tab键能够实现对命令、参数戒文件的内容补全; +Ctrl+C用于终止当前迚程的运行; +Ctrl+D表示键盘输入结束; +Ctrl+l会清空当前终端中已有的内容(相当亍清屏操作) diff --git "a/\345\274\240\346\263\275\345\220\214/20240522-\350\231\232\346\213\237\346\234\272\345\237\272\346\234\254\350\256\276\347\275\256md" "b/\345\274\240\346\263\275\345\220\214/20240522-\350\231\232\346\213\237\346\234\272\345\237\272\346\234\254\350\256\276\347\275\256md" new file mode 100644 index 0000000..bab18e5 --- /dev/null +++ "b/\345\274\240\346\263\275\345\220\214/20240522-\350\231\232\346\213\237\346\234\272\345\237\272\346\234\254\350\256\276\347\275\256md" @@ -0,0 +1,139 @@ +刚安装完Deiban系统: +1. 更新系统软件源:apt update +2. 更新系统:apt upgrade -y +3. 安装vim:apt install vim -y +4. 编辑网卡配置,设置静态IP: + +```bash +vim /etc/network/interfaces + +# 按如下设置 +# The primary network interface +allow-hotplug ens192 +iface ens192 inet static +address 172.16.90.13 +netmask 255.255.255.0 +gateway 172.16.90.1 +``` + +5. 修改SSHD配置,允许root用户远程登录 + +```bash +vim /etc/ssh/sshd_config + +# 取消如下代码的注释,并且将其值设置为yes,以允许root用户的远程登录 +PermitRootLogin yes + +``` + + +```bash + +- 检查 SSH 服务的状态: + +systemctl status sshd + +- 如果服务未运行,你可以使用以下命令启动它: + +sudo systemctl start sshd + +- 重启ssh 服务 + +sudo systemctl restart ssh + +``` + +6. 配置环境变量,简单化ls的用法 + + +/etc/profile.d/ls.sh + +```bash + export LS_OPTIONS='--color=auto' + alias ls='ls $LS_OPTIONS' + alias ll='ls $LS_OPTIONS -l' + alias l='ls $LS_OPTIONS -lA' + +``` +```bash + +执行以下命令可以使脚本生效: + +source /etc/profile.d/ls.sh + + +``` +7. 配置环境变量,设置当前系统字符集,以接受中文 + +/etc/profile.d/lang.sh +```bash +export LC_ALL=C.utf8 + +``` + + +```bash +重新加载 SSH 服务器的配置文件,可以使用以下命令: + +service sshd reload +``` + + +```bash + +安装sudo + +apt-get install sudo + + +安装完成后,你可以通过以下命令来将你的用户添加到 sudo 用户组,从而获得 sudo 权限: +adduser yourusername sudo +``` + + + + + + + + + + + +在 Vim 编辑器中,以下是一些常见的按键操作: + +插入文本: + +进入插入模式:按下 i 键 +在当前光标之后插入:按下 a 键 +在行尾插入新行:按下 o 键 +保存和退出: + +保存并退出:按下 :wq 并回车 +不保存并退出:按下 :q! 并回车 +保存但不退出:按下 :w 并回车 +移动光标: + +向上移动一行:按下 k 键 +向下移动一行:按下 j 键 +向左移动一个字符:按下 h 键 +向右移动一个字符:按下 l 键 +移动到行首:按下 0 键 +移动到行尾:按下 $ 键 +删除文本: + +删除光标所在字符:按下 x 键 +删除当前行:按下 dd +剪切当前行:按下 dd(相当于删除并复制到剪贴板) +复制和粘贴: + +复制当前行:按下 yy +粘贴:按下 p +撤销和重做: + +撤销:按下 u +重做:按下 Ctrl + r + + + + diff --git "a/\345\274\240\346\263\275\345\220\214/20240523-\345\237\272\346\234\254\345\221\275\344\273\244.md" "b/\345\274\240\346\263\275\345\220\214/20240523-\345\237\272\346\234\254\345\221\275\344\273\244.md" new file mode 100644 index 0000000..da4debc --- /dev/null +++ "b/\345\274\240\346\263\275\345\220\214/20240523-\345\237\272\346\234\254\345\221\275\344\273\244.md" @@ -0,0 +1,85 @@ +### 想要设一个针对所有用户都生效的环境变量,请问应该放在哪个目录中? + +可以放在 /etc/profile 或 /etc/environment 文件中。这些文件会在每次用户登录时读取,并对所有用户生效。 + + +### 想要设一个针对当前root用户生效的环境变量,请问可以放在哪个文件中? + +可以放在 /root/.bashrc 或 /root/.bash_profile 文件中。这些文件仅对root用户生效。 + +### ls命令的作用是什么?常用的一些选项,及其意义具体是什么,常用用法又有哪些? + +ls 命令用于列出目录内容。常用选项及其意义: +-l:长格式列出文件和目录,包括权限、所有者、大小和修改时间。 +-a:显示所有文件,包括隐藏文件(以.开头的文件)。 +-h:以人类可读的格式显示文件大小(例如KB、MB)。 +-R:递归地列出所有子目录的内容。 +常用用法示例:ls -alh 列出所有文件的详细信息并以人类可读的格式显示。 + +### 切换当前工作目录的命令是什么? + +cd(Change Directory),例如 cd /home/user 切换到 /home/user 目录。 + +### 如何查看当前工作目录? + +使用 pwd 命令(Print Working Directory) + +### 如何创建一个文件,如何批量创建100个文件? + +创建一个文件:touch filename +批量创建100个文件:touch file{1..100} + +### 用户信息在哪个文件? + +用户信息存储在 /etc/passwd 文件中。该文件包含用户账号信息,如用户名、UID、GID、home目录和shell等。 + +### 如何删除一个文件夹?如果这个文件夹为空,又如何删除? + +删除一个文件夹:rm -r dirname +如果文件夹为空,可以使用 rmdir dirname 命令。 + +### 如何创建一个文件夹?如何一口气创建嵌套的文件夹比如/root/lucy/cofee/sugar? + +创建一个文件夹:mkdir dirname +创建嵌套文件夹:mkdir -p /root/lucy/cofee/sugar + +### 查看文件内容,有几种常见的命令?它们有什么区别? + +cat:显示文件内容,适合查看小文件。 +more:分页显示文件内容,按空格键翻页,适合查看大文件。 +less:分页显示文件内容,支持向前向后翻页,适合查看大文件。 +head:显示文件的开头部分,默认前10行。 +tail:显示文件的末尾部分,默认后10行。 + +### 如何复制一个文件?如何移动一个文件?请举例说明。 + +复制文件:cp sourcefile destfile +移动文件:mv sourcefile destfile +示例: +复制文件:cp /etc/passwd /tmp/passwd_backup +移动文件:mv /tmp/passwd_backup /home/user/passwd_backup + +### 如何切换用户并且不输入命令?使用超级管理员执行某个命令怎么做? + +切换用户:su - username +使用超级管理员执行命令:sudo command + +### 如何测试本机网络可以上网? + +使用 ping 命令:ping www.google.com +使用 curl 或 wget 命令:curl www.google.com + +### 常有几种模式,这些模式分别可以做些什么?模式之间切换又分别如何切换? + +用户模式和内核模式: +用户模式:运行用户程序,不能直接访问硬件或内核代码。 +内核模式:运行内核代码,可以访问硬件。 +切换: +用户程序调用系统调用(如 fork)时,从用户模式切换到内核模式。 +系统调用完成后,切换回用户模式。 + +### 如何设置本机网络的地址信息? + +使用 ifconfig 命令(旧版Linux):ifconfig eth0 192.168.1.100 netmask 255.255.255.0 +使用 ip 命令(现代Linux):ip addr add 192.168.1.100/24 dev eth0 +编辑网络配置文件(如 /etc/network/interfaces 或 /etc/sysconfig/network-scripts/ifcfg-eth0),然后重新启动网络服务。 \ No newline at end of file -- Gitee