diff --git "a/\345\274\240\345\251\267/2024.05.16Debian\347\232\204\345\256\211\350\243\205\344\270\216\344\275\277\347\224\250.md" "b/\345\274\240\345\251\267/2024.05.16Debian\347\232\204\345\256\211\350\243\205\344\270\216\344\275\277\347\224\250.md" new file mode 100644 index 0000000000000000000000000000000000000000..5d60139155dd8aee2d4c77a7ad5b7cebf656b988 --- /dev/null +++ "b/\345\274\240\345\251\267/2024.05.16Debian\347\232\204\345\256\211\350\243\205\344\270\216\344\275\277\347\224\250.md" @@ -0,0 +1,72 @@ +### 刚安装完Debian系统配置 + +#### 主机名 login:root password:密码 进入主机 + +#### 更新系统软件源:apt update + + +#### 更新系统:apt upgrade -y + + +## 安装vim编辑器:apt install vim -y + + +编辑网卡配置,设置静态IP地址 + +```nginx +vim /etc/network/interfaces + 修改如下: + #The primary network interface + allow-hotplug ens192 + iface ens192 inet static + address 192.168.174.131 //设置IP地址 + netmask 255.255.255.0 //子网掩码 + gateway 192.168.174.1 //网关 + esc键,wq 保存退出 +``` + +修改SSHD配置文件 + +```nginx +vim /etc/ssh/sshd_config + 取消下面代码注释,修改为如下: + PermitRootLogin yes #允许超级管理员登入 + esc键,wq 保存退出 +reboot now #重启 +``` + +环境变量:简单化ls的用法 + +```nginx +ls -al #查看所有文件 +cp .bashrc /etc/profile.d/ls.sh #将.bashrc移动到/etc/profile.d/并克隆为ls.sh +vim /etc/profile.d/ls.sh + 修改如下: + export LS_OPTIONS="--color=auto" + alias ls='ls $LS_OPTIONS' + alias ls='ls $LS_OPTIONS -l' + alias ls='ls $LS_OPTIONS -lA' +``` + +环境变量:设置字符集,以接收中文 + +```nginx +vim /etc/profile.d/lang.sh + 修改如下: + export LS_ALL=C.utf8 +``` + + + ++ 安装node的两种方式 + + 使用nvm管理器来管理node的版本 + + 直接从官网下载安装包来安装 + + apt install nodejs -y ++ 安装node.js包管理器 + + apt install npm -y + ++ 安装pm2 + + npm install pm2 -g + + + diff --git "a/\345\274\240\345\251\267/2024.05.22Linux\346\246\202\350\277\260.md" "b/\345\274\240\345\251\267/2024.05.22Linux\346\246\202\350\277\260.md" new file mode 100644 index 0000000000000000000000000000000000000000..30983ca37b6656de2e35e2570f953a25290cb2c2 --- /dev/null +++ "b/\345\274\240\345\251\267/2024.05.22Linux\346\246\202\350\277\260.md" @@ -0,0 +1,5 @@ +# linux概述 +1. Linux,一般指GNU/Linux(单独的Linux内核并不可直接使用,一般搭配GNU套件,故得此称呼),是一种免费使用和自由传播的类UNIX操作系统,其内核由林纳斯·本纳第克特·托瓦兹(Linus Benedict Torvalds)于1991年10月5日首次发布,它主要受到Minix和Unix思想的启发,是一个基于POSIX的多用户、多任务、支持多线程和多CPU的操作系统。它支持32位和64位硬件,能运行主要的Unix工具软件、应用程序和网络协议。 +2. Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。Linux有上百种不同的发行版,如基于社区开发的debian、archlinux,和基于商业开发的Red Hat Enterprise Linux、SUSE、Oracle Linux等。 +3. 2022年11月20日,Linux 提交了最后一批 drm-intel-next 功能补丁,Linux 6.2将迎来对英特尔锐炫独显的正式支持。 [14] +2024年5月,Linux 6.9 内核的首个正式版发布,6.10 版本合并窗口开启。 \ No newline at end of file diff --git "a/\345\274\240\345\251\267/2024.05.23Linux\345\270\270\347\224\250\347\233\256\345\275\225.md" "b/\345\274\240\345\251\267/2024.05.23Linux\345\270\270\347\224\250\347\233\256\345\275\225.md" new file mode 100644 index 0000000000000000000000000000000000000000..ef62ac48b4795e55d7b6ba02f5fde5b03cb6c7fc --- /dev/null +++ "b/\345\274\240\345\251\267/2024.05.23Linux\345\270\270\347\224\250\347\233\256\345\275\225.md" @@ -0,0 +1,78 @@ +# Linux常用目录 +/bin: +bin 是 Binaries (二进制文件) 的缩写, 这个目录存放着最经常使用的命令。 + +/boot: +这里存放的是启动 Linux 时使用的一些核心文件,包括一些连接文件以及镜像文件。 + +/dev : +dev 是 Device(设备) 的缩写, 该目录下存放的是 Linux 的外部设备,在 Linux 中访问设备的方式和访问文件的方式是相同的。 + +/etc: +etc 是 Etcetera(等等) 的缩写,这个目录用来存放所有的系统管理所需要的配置文件和子目录。 + +/home: +用户的主目录,在 Linux 中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的,如上图中的 alice、bob 和 eve。 + +/lib: +lib 是 Library(库) 的缩写这个目录里存放着系统最基本的动态连接共享库,其作用类似于 Windows 里的 DLL 文件。几乎所有的应用程序都需要用到这些共享库。 + +/lost+found: +这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。 + +/media: +linux 系统会自动识别一些设备,例如U盘、光驱等等,当识别后,Linux 会把识别的设备挂载到这个目录下。 + +/mnt: +系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在 /mnt/ 上,然后进入该目录就可以查看光驱里的内容了。 + +/opt: +opt 是 optional(可选) 的缩写,这是给主机额外安装软件所摆放的目录。比如你安装一个ORACLE数据库则就可以放到这个目录下。默认是空的。 + +/proc: +proc 是 Processes(进程) 的缩写,/proc 是一种伪文件系统(也即虚拟文件系统),存储的是当前内核运行状态的一系列特殊文件,这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。 +这个目录的内容不在硬盘上而是在内存里,我们也可以直接修改里面的某些文件,比如可以通过下面的命令来屏蔽主机的ping命令,使别人无法ping你的机器: + +echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all +/root: +该目录为系统管理员,也称作超级权限者的用户主目录。 + +/sbin: +s 就是 Super User 的意思,是 Superuser Binaries (超级用户的二进制文件) 的缩写,这里存放的是系统管理员使用的系统管理程序。 + +/selinux: + 这个目录是 Redhat/CentOS 所特有的目录,Selinux 是一个安全机制,类似于 windows 的防火墙,但是这套机制比较复杂,这个目录就是存放selinux相关的文件的。 + +/srv: + 该目录存放一些服务启动之后需要提取的数据。 + +/sys: + +这是 Linux2.6 内核的一个很大的变化。该目录下安装了 2.6 内核中新出现的一个文件系统 sysfs 。 + +sysfs 文件系统集成了下面3种文件系统的信息:针对进程信息的 proc 文件系统、针对设备的 devfs 文件系统以及针对伪终端的 devpts 文件系统。 + +该文件系统是内核设备树的一个直观反映。 + +当一个内核对象被创建的时候,对应的文件和目录也在内核对象子系统中被创建。 + +/tmp: +tmp 是 temporary(临时) 的缩写这个目录是用来存放一些临时文件的。 + +/usr: + usr 是 unix shared resources(共享资源) 的缩写,这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于 windows 下的 program files 目录。 + +/usr/bin: +系统用户使用的应用程序。 + +/usr/sbin: +超级用户使用的比较高级的管理程序和系统守护程序。 + +/usr/src: +内核源代码默认的放置目录。 + +/var: +var 是 variable(变量) 的缩写,这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。 + +/run: +是一个临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件应该被删掉或清除。如果你的系统上有 /var/run 目录,应该让它指向 run。 \ No newline at end of file diff --git "a/\345\274\240\345\251\267/2024.05.24Linux\345\270\270\347\224\250\345\221\275\344\273\244.md" "b/\345\274\240\345\251\267/2024.05.24Linux\345\270\270\347\224\250\345\221\275\344\273\244.md" new file mode 100644 index 0000000000000000000000000000000000000000..d3d628802b0850dfeee21c40203e38ef7c96718d --- /dev/null +++ "b/\345\274\240\345\251\267/2024.05.24Linux\345\270\270\347\224\250\345\221\275\344\273\244.md" @@ -0,0 +1,35 @@ +# Linux常用命令 +## 文件和目录 +1. cd /home 进入 '/ home' 目录' +2. cd .. 返回上一级目录 +3. cd ../.. 返回上两级目录 +4. cd 进入个人的主目录 +5. cd ~user1 进入个人的主目录 +6. cd - 返回上次所在的目录 +7. pwd 显示工作路径 +8. ls 查看目录中的文件 +9. ls -F 查看目录中的文件 +10. ls -l 显示文件和目录的详细资料 +11. ls -a 显示隐藏文件 +12. ls *[0-9]* 显示包含数字的文件名和目录名 +13. tree 显示文件和目录由根目录开始的树形结构(1) +14. lstree 显示文件和目录由根目录开始的树形结构(2) +15. mkdir dir1 创建一个叫做 'dir1' 的目录' +16. mkdir dir1 dir2 同时创建两个目录 +17. mkdir -p /tmp/dir1/dir2 创建一个目录树 +18. rm -f file1 删除一个叫做 'file1' 的文件' +19. rmdir dir1 删除一个叫做 'dir1' 的目录' +20. rm -rf dir1 删除一个叫做 'dir1' 的目录并同时删除其内容 +21. rm -rf dir1 dir2 同时删除两个目录及它们的内容 +22. mv dir1 new_dir 重命名/移动 一个目录 +23. cp file1 file2 复制一个文件 +24. cp dir/* . 复制一个目录下的所有文件到当前工作目录 +25. cp -a /tmp/dir1 . 复制一个目录到当前工作目录 +26. cp -a dir1 dir2 复制一个目录 +27. ln -s file1 lnk1 创建一个指向文件或目录的软链接 +28. ln file1 lnk1 创建一个指向文件或目录的物理链接 +29. touch -t 0712250000 file1 修改一个文件或目录的时间戳 - (YYMMDDhhmm) +30. file file1 outputs the mime type of the file as text +31. iconv -l 列出已知的编码 + +find . -maxdepth 1 -name *.jpg -print -exec convert "{}" -resize 80x60 "thumbs/{}" \; batch resize files in the current directory and send them to a thumbnails directory (requires convert from \ No newline at end of file diff --git "a/\345\274\240\345\251\267/2024.05.27Linux\345\270\270\347\224\250\347\233\256\345\275\2252.md" "b/\345\274\240\345\251\267/2024.05.27Linux\345\270\270\347\224\250\347\233\256\345\275\2252.md" new file mode 100644 index 0000000000000000000000000000000000000000..ea2b41f97aa220473136e5bd2af27a77dfff8903 --- /dev/null +++ "b/\345\274\240\345\251\267/2024.05.27Linux\345\270\270\347\224\250\347\233\256\345\275\2252.md" @@ -0,0 +1,32 @@ +# Linux常用命令2 +## Linux 常用命令集合 + +### 系统信息 +1. arch 显示机器的处理器架构(1) +2. uname -m 显示机器的处理器架构(2) +3. uname -r 显示正在使用的内核版本 +4. dmidecode -q 显示硬件系统部件 - (SMBIOS / DMI) +5. hdparm -i /dev/hda 罗列一个磁盘的架构特性 +6. hdparm -tT /dev/sda 在磁盘上执行测试性读取操作 +7. cat /proc/cpuinfo 显示CPU info的信息 +8. cat /proc/interrupts 显示中断 +9. cat /proc/meminfo 校验内存使用 +10. cat /proc/swaps 显示哪些swap被使用 +11. cat /proc/version 显示内核的版本 +12. cat /proc/net/dev 显示网络适配器及统计 +13. cat /proc/mounts 显示已加载的文件系统 +14. lspci -tv 罗列 PCI 设备 +15. lsusb -tv 显示 USB 设备 +16. date 显示系统日期 +17. cal 2007 显示2007年的日历表 +18. date 041217002007.00 设置日期和时间 - 月日时分年.秒 +19. clock -w 将时间修改保存到 BIOS +### 关机 (系统的关机、重启以及登出 ) +1. shutdown -h now 关闭系统(1) +2. init 0 关闭系统(2) +3. telinit 0 关闭系统(3) +4. shutdown -h hours:minutes & 按预定时间关闭系统 +5. shutdown -c 取消按预定时间关闭系统 +6. shutdown -r now 重启(1) +7. reboot 重启(2) +8. logout 注销 \ No newline at end of file diff --git "a/\345\274\240\345\251\267/2024.05.29vim.md" "b/\345\274\240\345\251\267/2024.05.29vim.md" new file mode 100644 index 0000000000000000000000000000000000000000..ad75d699375231529de9e6c50741d642832a1222 --- /dev/null +++ "b/\345\274\240\345\251\267/2024.05.29vim.md" @@ -0,0 +1,9 @@ +# vim +1. Vim 是从 vi 发展出来的一个文本编辑器 +2. vi/vim 共分为三种模式,命令模式(Command Mode)、编辑模式(Insert Mode)和命令行模式(Command-Line Mode) +3. 文件进入到命令,编辑模式 +```js +touch tt.txt //创建文件 +vi tt.txt //进入命令模式 +i/a //进入编辑模式 +``` diff --git "a/\345\274\240\345\251\267/2024.05.29vim\346\246\202\350\277\260.md" "b/\345\274\240\345\251\267/2024.05.29vim\346\246\202\350\277\260.md" new file mode 100644 index 0000000000000000000000000000000000000000..0616c3d32c9c0606aad994ae29e45907a0c8020c --- /dev/null +++ "b/\345\274\240\345\251\267/2024.05.29vim\346\246\202\350\277\260.md" @@ -0,0 +1,7 @@ +# vim概述 +什么是 vim? +Vim 是从 vi 发展出来的一个文本编辑器。代码补全、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。 + +简单的来说, vi 是老式的字处理器,不过功能已经很齐全了,但是还是有可以进步的地方。 vim 则可以说是程序开发者的一项很好用的工具。 + +连 vim 的官方网站 (https://www.vim.org/) 自己也说 vim 是一个程序开发工具而不是文字处理软件。 \ No newline at end of file diff --git "a/\345\274\240\345\251\267/2024.05.30vim\347\274\226\350\276\221\346\250\241\345\274\217.md" "b/\345\274\240\345\251\267/2024.05.30vim\347\274\226\350\276\221\346\250\241\345\274\217.md" new file mode 100644 index 0000000000000000000000000000000000000000..0947031d893baa2803e210973a589f55da2f0c4e --- /dev/null +++ "b/\345\274\240\345\251\267/2024.05.30vim\347\274\226\350\276\221\346\250\241\345\274\217.md" @@ -0,0 +1,38 @@ +# vim编辑模式 +1. 输入i,o,a,等进入编辑模式 +2. :wq 保存离开 +3. 操作 +```js + 字符按键以及Shift组合,输入字符 + + ENTER,回车键,换行 + + BACK SPACE,退格键,删除光标前一个字符 + + DEL,删除键,删除光标后一个字符 + + 方向键,在文本中移动光标 + + HOME/END,移动光标到行首/行尾 + + Page Up/Page Down,上/下翻页 + + Insert,切换光标为输入/替换模式,光标将变成竖线/下划线 + + ESC,退出输入模式,切换到命令模式 +``` +# vim底线命令模式 +1. +在命令模式下按下 :(英文冒号)就进入了底线命令模式 +2. 命令 +```js +:w:保存文件。 + +:q:退出 Vim 编辑器。 + +:wq:保存文件并退出 Vim 编辑器。 + +:q!:强制退出Vim编辑器,不保存修改 +``` + + diff --git "a/\345\274\240\345\251\267/2024.06.03\347\224\250\346\210\267\347\256\241\347\220\206.md" "b/\345\274\240\345\251\267/2024.06.03\347\224\250\346\210\267\347\256\241\347\220\206.md" new file mode 100644 index 0000000000000000000000000000000000000000..073df39772774bfd67e9bfa8a5d2e5e697011a36 --- /dev/null +++ "b/\345\274\240\345\251\267/2024.06.03\347\224\250\346\210\267\347\256\241\347\220\206.md" @@ -0,0 +1,21 @@ +# 用户管理 +## 用户组的创建 + sudo(普通用户加,root用户不用) groupadd groupname + + ## 用户组的删除 + sudo(普通用户加,root用户不用) groupdel groupname + + sudo passd root:给root用户设置密码 + su root:进入root用户 + + ## 创建新用户 + 1.系统创建:adduser + ```js +sudo adduser username + ``` + 2.用户创建: useradd + ```js + useradd[option] username + +useradd -d(指定新用户所在的主目录) -m -g(新用户所在用户组) -G 新用户 + ``` diff --git "a/\345\274\240\345\251\267/2024.06.05\346\235\203\351\231\220\347\256\241\347\220\206.md" "b/\345\274\240\345\251\267/2024.06.05\346\235\203\351\231\220\347\256\241\347\220\206.md" new file mode 100644 index 0000000000000000000000000000000000000000..fc2be1f7fcc647e860ab920b27181fda5671c07b --- /dev/null +++ "b/\345\274\240\345\251\267/2024.06.05\346\235\203\351\231\220\347\256\241\347\220\206.md" @@ -0,0 +1,29 @@ +# 权限管理 +## 用户 +1.超级用户提示符"#" +2.普通用户提示符"$" +#### su与su-的区别 +1.su只切换了root的身份但是Shell环境任然是root身份的Shell,su-把Shell和用户环境一起切换为普通用户。 + +## 文件的权限 +一:文件访问者的分类 +1. 文件和文件目录的所有者:u--User +2. 文件和文件目录的所有者所在的组的用户:g--Group +3. 其他用户:Others + + + +1.文件类型 +
. 普通文件 +
d 目录文件 +
p 管理文件 +
l 链接文件 +
b 块设备文件 +
c 字符设备文件 +
s 套接字文件 + +
2.文件权限 +
-r 读权限 +
w 写权限 +
x 可执行文件 +
- 无权限 diff --git "a/\345\274\240\345\251\267/2024.06.06\346\200\235\347\273\264\345\257\274\345\233\276.md" "b/\345\274\240\345\251\267/2024.06.06\346\200\235\347\273\264\345\257\274\345\233\276.md" new file mode 100644 index 0000000000000000000000000000000000000000..e606b4494e529fcbe435b07320c6beb19efd7693 --- /dev/null +++ "b/\345\274\240\345\251\267/2024.06.06\346\200\235\347\273\264\345\257\274\345\233\276.md" @@ -0,0 +1,65 @@ +@startmindmap +*[#d598a3] Linux + *[#eb9dab] 用户管理 + *[#f1b3be] 用户账户管理 + *[#ffced9] 创建账户:useradd usernamme / adduser username + *[#ffced9] 删除账户:userdel username + *[#f1b3be] 用户组管理 + *[#ffced9] 创建用户组:groupadd groupname + *[#ffced9] 删除用户组:groupdel groupname + *[#ffced9] 添加用户到用户组:usermod -a -G groupname username + *[#f1b3be] 密码管理 + *[#ffced9] 设置密码: passwd + *[#f1b3be] sudo权限管理 + *[#ffced9] 添加用户到sudo组 + * usermod -aG sudo xxx + * 修改/etc/sudoers 文件 + *[#f1b3be] 登录权限管理 + *[#ffced9] 登录许可 /etc/security/access.conf + *[#ffced9] 登录限制 /etc/security/limits.conf + *[#f1b3be] 用户环境管理 + *[#ffced9] 用户配置文件: .bashrc + *[#ffced9] 用户环境变量: PATH, HOME家目录 + *[#eb9dab] 权限管理 + *[#f1b3be] 文件类型 + *[#ffced9] - 普通文件 + *[#ffced9] d 目录 + *[#ffced9] l 链接文件 + *[#ffced9] b c s p 等其它文件 + *[#f1b3be] 基本权限 + *[#ffced9] r 读 + *[#ffced9] w 写 + *[#ffced9] x 执行 + *[#f1b3be] 权限表示45 + *[#ffced9] 字符表示 + *[#ffced9] 数字表示 + * 4 代表 r + * 2 代表 w + * 1 代表 x + *[#f1b3be] 权限修改 + *[#ffced9] chmod 修改权限 + *[#ffced9] chown 修改拥有者 + *[#ffced9] chgrp 修改所属组 + *[#f1b3be] 权限的继承 + *[#ffced9] 目录权限其下文件和目录的影响 + *[#ffced9] umask + *[#f1b3be] 特殊权限 + *[#ffced9] SUID + *[#ffced9] SGID + *[#ffced9] SBIT + *[#f1b3be] 隐藏权限 + *[#ffced9] i + * 应用在文件上,无法对文件进行任何修改 + * 应用在目录上,无法对创建任何内容,但可对文件进行修改 + *[#ffced9] a + * 除了可追加内容外,无法进行其它修改 + *[#ffced9] 隐藏权限的操作 + * 修改隐藏权限 chattr + * chattr +i XXX + * chattr -i XXX + * 查看隐藏权限 lsattr + +@endmindmap + + + diff --git "a/\345\274\240\345\251\267/2024.06.07\346\235\203\351\231\220\347\256\241\347\220\206.md" "b/\345\274\240\345\251\267/2024.06.07\346\235\203\351\231\220\347\256\241\347\220\206.md" new file mode 100644 index 0000000000000000000000000000000000000000..853652179d639d60e5e49a8f8b668f3a9b199dbb --- /dev/null +++ "b/\345\274\240\345\251\267/2024.06.07\346\235\203\351\231\220\347\256\241\347\220\206.md" @@ -0,0 +1,50 @@ +# 权限管理 +##### r=4,w=2,x=1 +##### 若要 rwx 属性则 4+2+1=7; +##### 若要 rw- 属性则 4+2=6; +##### 若要 r-x 属性则 4+1=5 +
+ +##### u user 文件所有者 +##### g group 文件所有者所在组 +##### o others 所有其他用户 +##### a all 所有用户, 相当于 ugo +
+ +##### + 为指定的用户类型增加权限 +##### - 去除指定用户类型的权限 +##### = 设置指定用户权限的设置,即将用户类型的所有权限重新设置 +
+ +## 权限修改 +1. chmod 修改权限 +```js +chmod a+r 文件名/目录名 //将文件或目录设为所有人皆可读取 +chmod ugo+r 文件名/目录名 //将文件或目录设为所有人皆可读取 + +chmod ug+w,o-w file1.txt file2.txt //将文件 file1.txt 与 file2.txt 设为该文件拥有者,与其所属同一个群体者可写入,但其他以外的人则不可写入 + +ls 文件名或目录 //查看权限 +``` +2.chown 修改文件拥有者 +```js +chown tt:ttt zt.txt //将zt.txt拥有者设置为tt,群体使用者ttt +chown root zt.txt //将zt.txt拥有者改为root +chown -R runoob:runoobgroup * //将当前前目录下的所有文件与子目录的拥有者皆设为 runoob,群体的使用者 runoobgroup + +``` + +3. chgrp 修改文件所属用户组 + + +## 隐藏权限 +### 查看文件的影藏权限类型:lsattr +```js +chattr +i //添加隐藏权限 +chattr -i //减去文件的隐藏权限,然后即可使用rm删除 +``` + +## 权限的继承 +#### umask +umask表示需要从默认权限中去掉哪些权限来成为最终默认权限 + diff --git "a/\345\274\240\345\251\267/2024.06.12\344\273\273\345\212\241\345\221\250\346\234\237.md" "b/\345\274\240\345\251\267/2024.06.12\344\273\273\345\212\241\345\221\250\346\234\237.md" new file mode 100644 index 0000000000000000000000000000000000000000..84414f3a334688a1beed90c2a00b670b25fac371 --- /dev/null +++ "b/\345\274\240\345\251\267/2024.06.12\344\273\273\345\212\241\345\221\250\346\234\237.md" @@ -0,0 +1,22 @@ +# 任务周期 +#### crond命令每分钟会定期检查是否有要执行的工作,如果有要执行的工作便会自动执行该工作。 +#### 任务计划有两种 +1.在未来某个 时间点执行一次某任务,用at +2.周期性地执行某任务,cron +#### +```js +crontab -l //查看当前用户地crontab文件 + +crontab -e //编辑当前用户地crontab文件 + +crontab -r //删除当前用户的crontab + +``` + +## 格式 +```js + +f1 f2 f3 f4 f5 program +分钟(0-59) 小时(0-23) 一个月中的第几天 月份(1-12) 星期中星期几(0-7) + +``` \ No newline at end of file diff --git "a/\345\274\240\345\251\267/2024.06.13\347\216\257\345\242\203\345\217\230\351\207\217.md" "b/\345\274\240\345\251\267/2024.06.13\347\216\257\345\242\203\345\217\230\351\207\217.md" new file mode 100644 index 0000000000000000000000000000000000000000..57edc4762191b0cef91bd27e30e3bd3b38a01f1a --- /dev/null +++ "b/\345\274\240\345\251\267/2024.06.13\347\216\257\345\242\203\345\217\230\351\207\217.md" @@ -0,0 +1,24 @@ +# 环境变量 +### 概念 +在操作系统中用来指定操作系统运行环境的一些参数 +### 分类 +1.永久的:在环境变量脚本文件中配置,用户每次登陆会自动执行 +2.临时的:用户利用export命令,在当前终端下生成环境变量,关闭shell终端失效 +3.公共的:系统环境变量,对所有用户都生效 +4.用户私有的:用户环境变量,用户私有,自定义 +### 常用环境变量 +1. PATH:决定了系统在哪些目录中查找可执行文件 +2. HOME:指定当前用户的主目录路径 +3. USER:当前用户的用户名 +4. SHELL:指定当前用户默认的shell +5. LANG:指定系统默认语言 +6. LD_LIBRARY_PATH:指定系统在哪些目录中查找共享库文件 +7. TERM:指定当前终端类型 +8. PS1:定义命令行提示符的格式 +9. PS2: 定义多行命令的提示符格式 +### 查看环境变量 +```js +printenv / env //查看当前用户的环境变量 + +echo $PATH / echo $HOME /echo $USER +``` \ No newline at end of file diff --git "a/\345\274\240\345\251\267/2024.06.14\350\277\233\347\250\213\347\256\241\347\220\206.md" "b/\345\274\240\345\251\267/2024.06.14\350\277\233\347\250\213\347\256\241\347\220\206.md" new file mode 100644 index 0000000000000000000000000000000000000000..25f3977c462fc1f2da7fdf613e5852ef4f8f351c --- /dev/null +++ "b/\345\274\240\345\251\267/2024.06.14\350\277\233\347\250\213\347\256\241\347\220\206.md" @@ -0,0 +1,30 @@ +# 进程管理 +### 概述 +进程是计算机系统中正在运行的程序的实例,每个进程都有唯一的标识符和相关的资源。 +### 进程管理命令 +1. ps:用于列出当前正在运行的进程 +2. top:实时显示系统中的进程和系统性能信息 +3. kill:用于终止指定进程 +4. killall:终止指定名称的所有进程 +5. pgrep:根据进程名查找匹配的进程ID +6. pkill:根据进程名终止匹配的进程 +7. nice:设置晋城的优先级 +8. renice:修改正在运行进程的优先级 +9. nohup:运行进程,并使其在用户注销后继续运行 +10. bg和fg:将进程放在后台或者前台运行 + +```js +ps -aux: //显示所有用户的所有进程 +ps -ef: //以完整格式显示所有进程 +ps -e -forest: //以树形结构显示进程关系 +``` + +### 查看详细信息中进程状态相关字母含义 +```js +S:等待态 +T:停止态 +R:运行态 +Z:僵尸态 +D:不可被中断的等待态进程 +X:死亡态 +``` diff --git "a/\345\274\240\345\251\267/2024.06.19\346\234\215\345\212\241\347\256\241\347\220\206.md" "b/\345\274\240\345\251\267/2024.06.19\346\234\215\345\212\241\347\256\241\347\220\206.md" new file mode 100644 index 0000000000000000000000000000000000000000..ab393b244cf936bd94bce02fdfd890515dee0cae --- /dev/null +++ "b/\345\274\240\345\251\267/2024.06.19\346\234\215\345\212\241\347\256\241\347\220\206.md" @@ -0,0 +1,25 @@ +# 服务管理 +Linux 服务管理两种方式service和systemctl + +1.service命令 +service命令其实是去/etc/init.d目录下,去执行相关程序 + +# service命令启动redis脚本 +service redis start +# 直接启动redis脚本 +/etc/init.d/redis start +# 开机自启动 +update-rc.d redis defaults +其中脚本需要我们自己编写 + +2.systemctl命令 +systemd是Linux系统最新的初始化系统(init),作用是提高系统的启动速度,尽可能启动较少的进程,尽可能更多进程并发启动。 +systemd对应的进程管理命令是systemctl + +systemctl命令兼容了service +即systemctl也会去/etc/init.d目录下,查看,执行相关程序 + +systemctl redis start +systemctl redis stop +# 开机自启动 +systemctl enable redis \ No newline at end of file diff --git "a/\345\274\240\345\251\267/lianxi.md" "b/\345\274\240\345\251\267/lianxi.md" new file mode 100644 index 0000000000000000000000000000000000000000..21c2bffd8b71f26a43311b3a46ff5dc6d7b2e24f --- /dev/null +++ "b/\345\274\240\345\251\267/lianxi.md" @@ -0,0 +1,58 @@ +每天3:00执行一次 +0 3 * * * + +每周六2:00执行 +0 2 * * 6 + +每周六1:05执行 +5 1 * * 6 + +每周六1:25执行 +25 1 * * 6 + ` b ` +每天8:40执行 +40 8 * * * + +每天3:50执行 +50 3 * * * + +每周一到周五的3:40执行 +40 3 * * 1-5 + +每周一到周五的3:41开始,每10分钟执行一次 +41,51 3-23 * * 1-5 +1,11,21,31 4-23 * * 1-5 + +每天的10:31开始,每2小时执行一次 +31 10/2 * * * + +每周一到周三的9:30执行一次 +30 9 * * 1-3 + +每周一到周五的8:00,每周一到周五的9:00执行一次 +0 8,9 * * 1-5 +每天的23:45分执行一次 +45 23 * * * + +每周三的23:45分执行一次 +45 23 * * 3 + +每周一到周五的9:25到11:35、13:00到15:00之间,每隔10分钟执行一次 + 25-35/10 9-11 * * 1-5 + */10 13-15 * * 1-5 + +每周一到周五的8:30、8:50、9:30、10:00、10:30、11:00、11:30、13:30、14:00、14:30、5:00分别执行一次 +0 10,11,14,5 * * 1-5 +30 8,9,10,11,13,14 * * 1-5 +50 8 * * 1-5 + +每天16:00、10:00执行一次 +0 16,10 * * * + +每天8:10、16:00、21:00分别执行一次 +0 16,21 * * * +10 8 * * * + +每天7:47、8:00分别执行一次 +47 7 * * * +0 8 * * * \ No newline at end of file