admin管理员组

文章数量:1651822

第一章:来到linux

  1. 开源软件与linux

    1. gnu/linux的历史:自由软件之父,理查德-斯托曼。1984年提出来开源软件。1991年linus创造了一个和windows,mac一样厉害的系统linux内核。伟大无需多言,这也是我愿意记录这些看上去毫无相关的故事的原因。
  2. linux哪些事

    1. 发行版
      1. rhel(红帽子企业,提供企业级linux要钱)
      2. centos(社区的,免费的商业软件,当然伟大无需多言)
      3. ubuntu(乌班图,桌面应用为主,就是有界面)
      4. debian(蝶变,又是一群伟大的人在更新)
    2. 能力
      1. rhce:红帽子认证工程师(rhcsa初级-rhce中级-rhca高级红帽认证架构师)
  3. centos7服务器部署

    1. 搜索centos=>下载centos7=》下载安装vm=》安装centos7
    2. 打开csdn,搜索安装centos7,看博客,good。
    3. 服务器分类
      1. 塔式服务器(就像是台式机主机箱子),机架式服务器,层叠式服务器
    4. 设置ens33网卡自启动=》关机按钮-扳手按钮-》左侧找到网络-》开启有线-》再点击旁边的齿轮-》勾选自启动复选框。
    5. 连接外部软件finalshell(安装时最好用管理员方式)
      1. 新建ssh连接
      2. 进行连接(点击确定)
      3. 进行连接(双击保持过的连接)
    6. 快照
      1. 具体可以在csdn上看,,建议关机快照
  4. 通配符在linux命令行的表示

    1. 星号*:匹配零个或多个字符。
    2. 问号?:匹配任何单个字符。
    3. 方括号:匹配括号内的任何单一字符。
    4. 脱字符^或者感叹号!:当用在方括号表达式中,匹配不在方括号中的任何单一字符。
    5. 花括号:匹配花括号内的字符串模式。{file1,file2,file3}逗号隔开
    6. 反斜杠\:转义字符,用来取消特殊字符的特殊意义。

第二章:文件和用户管理

  1. 文件管理

    1. linux目录结构简洁

      1. windows:以多根方式c:\  d:\   e:\
      2. linux:以单根的方式组织文件/(根目录)
    2. linux目录结构视图

      1. 结构介绍
        1. / (根目录)
          1. 根目录是文件系统的起点。所有其他目录和文件都在这个目录下。
        2. /bin
          1. 存放系统启动和运行所需的基本命令(如 ls, cp, mv, cat)。这些命令在系统启动时必须可用,因此存放在 /bin。
        3. /boot
          1. 包含启动加载程序(如 GRUB)的文件和内核映像。这个目录用于系统引导过程。
        4. /dev
          1. 包含设备文件。这些文件代表系统中的各种硬件设备(如磁盘、终端、打印机)。例如,/dev/sda1 代表第一块硬盘的第一个分区。
        5. /etc
          1. 存放系统配置文件和全局配置脚本。此目录下的文件通常控制系统和应用程序的配置,如 /etc/fstab 和 /etc/passwd。
        6. /home
          1. 用户主目录的默认位置。每个用户在 /home 下有一个子目录,例如 /home/user1。用户的个人文件、配置和数据通常存储在这个目录下。
        7. /lib
          1. 包含系统库文件,这些文件是系统和应用程序运行时所需的共享库。通常与 /bin 和 /sbin 中的程序一起使用。
        8. /media
          1. 用于自动挂载可移动媒体(如 USB 驱动器、CD-ROM 等)。系统插入设备时,这些设备会被挂载到 /media 下的子目录中。
        9. /mnt
          1. 通常用于临时挂载文件系统。系统管理员可以在这个目录下挂载不同的文件系统进行临时访问。
        10. /opt
          1. 用于安装附加应用程序包。这个目录常用于存放第三方软件包和应用程序。
        11. /proc
          1. 虚拟文件系统,提供系统内核和进程信息。/proc 下的文件和目录不实际存在于硬盘上,而是由内核动态生成的。
        12. /root
          1. 系统管理员(root 用户)的主目录。这个目录与普通用户的主目录(/home/username)不同,通常只有 root 用户可以访问。
        13. /sbin
          1. 存放系统管理命令和工具(如 fsck, ifconfig, reboot)。这些命令通常需要系统管理员权限才能运行。
        14. /srv
          1. 包含由系统提供的服务的数据。这个目录用于存放网站、FTP 服务器等服务的数据。
        15. /tmp
          1. 用于存放临时文件。系统和应用程序在运行时可能需要创建临时文件,这些文件通常会在系统重启时删除。
        16. /usr
          1. 包含用户程序和数据。这个目录通常包含系统中安装的大多数应用程序和库文件。例如,/usr/bin 包含大多数用户命令,/usr/lib 包含库文件。
        17. /var
          1. 包含变化的文件,如日志文件、邮件、缓存和其他经常变化的数据。常见目录有 /var/log(日志文件)、/var/mail(邮件)等。
        18. /run
          1. 运行文件,运行后就没有了。
    3. linux文件和目录管理规范

      1. 文件类型
        1. -:普通文件
        2. d:目录
        3. l:符号链接
        4. 其他类型(例如,c 代表字符设备-》打印机-终端-tty等,b 代表块设备)
        5. s:套接字文件
        6. p:管道文件
      2. 命令的规范与格式
        1. linux的所有的命令都可以看成
          1. 命令     【选项】 【待操作对象】
          2. 比如:ls -l  /home表示显示home目录的文件。
      3. 文件管理的命令
        1. 改变目录
          1. 命令:cd 【目录】
            1. 解释:切换到对应目录
            2. 选项:
              1. ..:切换到上一级
              2. /:切换到下一级
        2. 创建文件
          1. 命令:touch 【选项】文件名
            1. 解释:创建新文件或者更新已有文件时间戳
            2. 选项:
              1. -c: 不创建新文件,只更新文件的时间戳。
              2. -a:只更改访问时间
              3. -m:只更改修改时间
              4. -t:使用指定的时间(格式为 [[CC]YY]MMDDhhmm[.ss])来更新文件的时间戳。
              5. -r:使用另一个文件的时间戳来更新文件时间。
                1. touch -r 引用文件 跟新文件
              6. touch 可以一次性创建多个文件
                1. touch file1.txt file2.txt file3.txt
        3. 创建目录
          1. 命令:mkdir 【选项】 目录名 
            1. 解释:创建新的目录。它可以创建单个或多个目录,还可以递归创建嵌套的目录结构。
            2. 选项:
              1. -p: 创建多级目录(即使中间目录不存在)。
              2. -v: 显示每个目录创建的详细信息。
              3. -m(mode):设置新目录的权限,类似 chmod
                1. mkdir -m 755 new_directory
        4. 删除
          1. 命令:rmdir 【选项】 目录名
            1. 解释:删除空目录。如果目录中包含任何文件或子目录,rmdir 将不会删除该目录,并且会报错。rmdir 只适用于删除已经为空的目录。
            2. 选项:
              1. -p(parents):递归删除目录及其父目录(如果它们也是空的)。这意味着,如果指定的目录删除后,父目录也变成空的,那么这些父目录也会被删除。(要写全路径
              2. --ignore-fail-on-non-empty:忽略非空目录的删除失败错误。
          2. 命令:rm 【选项】 文件/目录
            1. 解释:用于删除文件和目录。它是一个功能强大且危险的命令,因为一旦文件或目录被删除,通常无法轻易恢复,因此使用时需要特别小心。
            2. 选项:
              1. -r--recursive:递归删除目录及其内容。这个选项非常危险,删除后无法恢复。
              2. -f--force:强制删除文件或目录,忽略不存在的文件,并且不提示确认。
              3. -i:在删除每个文件或目录前提示确认。
              4. -v--verbose:显示删除过程中的详细信息。
        5. 移动与重命名
          1. 命令:mv 【选项】 文件/目录
            1. 解释:移动或重命名文件和目录。
            2. 选项:
              1. -i(interactive):在覆盖目标文件前提示确认。如果目标位置已经存在一个文件或目录,使用 -i 会提示用户是否确认覆盖。
              2. -f(force):强制移动文件或目录,不会提示确认,直接覆盖目标位置的文件或目录。
              3. -n(no-clobber):不覆盖任何已经存在的文件。这个选项和 -f 相反,它会阻止覆盖目标位置已有的文件。
              4. -v(verbose):显示详细的操作信息。每次移动或重命名文件时,都会显示相关信息。
        6. 复制
          1. 命令:cp 【选项】 源文件/目录   目标目录
            1. 解释:复制文件和目录。
            2. 选项:
              1. -r--recursive:递归复制目录及其所有内容。
              2. -f--force:强制复制文件,覆盖目标位置的文件而不提示。
              3. -i--interactive:在覆盖目标文件前提示确认。
              4. -u--update:只复制源文件比目标文件新的文件,或者目标文件不存在的文件。
              5. -v--verbose:显示详细的复制过程。
              6. -p:保留文件的属性,如修改时间、权限等。
        7. 查看文中内容
          1. 命令:cat
            1. 解释:命令用于查看、连接和显示文件的内容。它是一个非常常用的命令,适用于快速查看文件内容、将多个文件的内容合并输出到终端,或者将文件的内容重定向到另一个文件中。
            2. 选项:
              1. -n:为输出的每一行添加行号。
              2. -b:为非空行添加行号。
              3. -s:压缩空白行,多个空白行只显示一个。
              4. -E:在每行的末尾显示 $ 符号。
              5. -T:将制表符显示为 ^I
          2. 命令:head
            1. 解释:用于显示文件的开头部分,默认情况下显示前 10 行内容。它对于查看大型文件的前几行内容非常有用。
            2. 选项:
              1. -n:指定显示的行数。
              2. -c:指定显示的字节数。
              3. -q:静默模式,忽略文件名的输出,只显示内容。
              4. -v:总是显示文件名。
          3. 命令:tail
            1. 解释:用于显示文件的结尾部分,默认情况下显示最后 10 行内容。它通常用于查看文件的最新日志条目或其他文件的最后几行内容。
            2. 选项:
              1. -n:指定显示的行数。
              2. -c:指定显示的字节数。
              3. -q:静默模式,忽略文件名的输出,只显示内容。
              4. -v:总是显示文件名。
              5. -f:实时追踪文件内容的变化,通常用于监视日志文件的更新。
          4. 命令:more 【选项】 文件名字
            1. 解释:用于分页显示文件内容,特别适用于查看大文件或长内容时。它允许你逐屏查看文件内容,并提供简单的导航功能。
            2. 选项:
              1. -c:清除屏幕上的内容,并从文件的顶部开始显示。
              2. -p:使用 "p" 键来分页,"q" 键退出。
              3. -s:压缩空行,将多个连续的空行合并为一行显示。
              4. -u:不使用屏幕的光标来显示文本,适用于终端不支持光标的情况。
              5. -d:在到达文件末尾时显示 "Press space to continue, 'q' to quit" 提示,而不是默认的 "More" 提示。
            3. 操作:
              1. Space:向下翻页显示内容。
              2. Enter:向下滚动一行显示内容。
              3. b:向上翻页显示内容。
              4. /pattern:搜索 pattern(匹配模式),按 n 键跳到下一个匹配项,按 N 键跳到上一个匹配项。
              5. q:退出 more,返回到命令行提示符。
              6. f:向下翻页,与 Space 相同。
              7. d:向下滚动半页内容。
          5. 命令:grep 【选项】 '关键字' 文件
            1. 解释:用于在文件中搜索与指定模式匹配的行,并将这些行输出到终端。
            2. 选项:
              1. -i:忽略大小写。
              2. -v:反向匹配,显示不包含指定模式的行。
              3. -r-R:递归搜索目录及其子目录中的文件。(后跟目录)
              4. -l:仅列出包含指定模式的文件名。
              5. -n:显示匹配行的行号。
              6. -c:显示匹配模式的行数。
              7. -H:显示匹配行所在的文件名。
              8. -o:仅显示匹配模式的部分,而不是整行。
              9. -w:只匹配整个单词。
              10. -x:只匹配整行。
              11. --color:高亮显示匹配的模式(默认)
              12. -f:从文件中读取模式。
        8. 查看当前目录位置
          1. 命令:pwd 【选项】
            1. 解释:显示当前工作目录的绝对路径
            2. 选项:
              1. -P(physical):显示物理路径,解析所有符号链接,显示实际的目录路径。
              2. -L(logical):显示当前逻辑路径(默认行为),基于 PWD 环境变量。这是使用 cd 命令后 Shell 记录的路径。
        9. 查看当前目录内容
          1. 命令:ls 【选项】【目录】
            1. 解释:显示指定目录下的文件和目录列表
            2. 选项:
              1. -l:使用长格式显示文件信息,包括权限、所有者、组、大小和最后修改时间等。
              2. -a:显示所有文件,包括隐藏文件(以 . 开头的文件)
              3. -h:与 -l 选项结合使用,以人类可读的格式显示文件大小(如 KB、MB、GB)。
              4. -R:递归地显示目录及其子目录的内容。
              5. -t:按修改时间排序文件,最近修改的文件排在最前面。
              6. -r:反向排序显示文件列表。
              7. -S:按文件大小排序,最大的文件排在最前面。
              8. -1:每行显示一个文件名。
              9. --color:为输出的文件名添加颜色,以区分文件类型(目录、符号链接、可执行文件等)。
              10. -d:仅列出目录本身,而不是列出其内容。通常与 * 通配符结合使用。
              11. -F:在每个文件名后附加一个指示符,表示文件类型(如目录后面加 /,可执行文件后面加 *,符号链接后面加 @ 等)。
              12. --help:显示 ls 命令的帮助信息,解释所有可用选项。
        10. 修改文件内容
          1. 命令:vim或者vi 【选项】文件名
            1. 解释:vi 是 Unix 系统中最基本的文本编辑器,而 vimvi 的增强版,提供了更多的功能和更友好的用户体验。它们支持多种模式,如命令模式、插入模式、和底线命令模式,用于不同的编辑操作。
            2. 选项:
              1. -i {viminfo}:指定 viminfo 文件来保存或读取编辑记录。
                1. vim -i viminfo文件 file.txt
              2. -R:以只读模式打开文件。
              3. -r:恢复上次崩溃时保存的文件内容。
              4. -o:水平分割窗口,打开多个文件。
              5. -O:垂直分割窗口,打开多个文件。
              6. -b:以二进制模式编辑文件。
              7. -c:启动 Vim 时执行指定的命令。
              8. -u {vimrc}:指定使用的 Vim 配置文件。
              9. -N:以非兼容模式运行 Vim(关闭兼容 vi 的行为)。
              10. -x:以加密模式打开文件
              11. -p:在标签页中打开多个文件。
              12. -h:显示帮助信息,列出所有选项。
            3. 其它的
              1. ### Vim/Vi 快速入门清单

                #### 1. **启动 Vim/Vi**
                   ```bash
                   vim filename  # 打开文件
                   vi filename   # 打开文件
                   ```

                #### 2. **模式简介**
                   - **命令模式**:默认模式,执行各种命令。
                   - **插入模式**:输入文本。
                   - **可视模式**:选择文本块。

                #### 3. **基本命令**

                   - **进入插入模式**:
                     - `i`:在光标前插入。
                     - `a`:在光标后插入。
                     - `I`:在行首插入。
                     - `A`:在行尾插入。
                     - `o`:在当前行下新建一行。
                     - `O`:在当前行上新建一行。

                   - **退出插入模式**:
                     - `Esc`:回到命令模式。

                   - **保存/退出**:
                     - `:w`:保存文件。
                     - `:q`:退出 Vim。
                     - `:wq`等同于`:w`:保存并退出。
                     - `:q!`:强制退出不保存。

                   - **移动光标**:
                     - `h`:左移。
                     - `j`:下移。
                     - `k`:上移。
                     - `l`:右移。
                     - `gg`:移到文件开头。
                     - `G`:移到文件结尾。
                     - `^`:移到行首。
                     - `$`:移到行尾。

                   - **删除文本**:
                     - `x`:删除光标所在的字符。
                     - `dd`:删除整行。
                     - `dw`:删除一个单词。
                     - `d$`:删除到行尾。

                   - **复制/粘贴**:
                     - `yy`:复制整行。
                     - `y` + 移动命令(如 `y$` 复制到行尾)。
                     - `p`:在光标后粘贴。
                     - `P`:在光标前粘贴。

                   - **撤销/恢复**:
                     - `u`:撤销上一步操作。
                     - `Ctrl + r`:恢复撤销的操作。

                   - **查找/替换**:
                     - `/pattern`:向下查找 `pattern`。
                     - `?pattern`:向上查找 `pattern`。
                     - `n`:下一个匹配。
                     - `N`:上一个匹配。
                     - `:%s/old/new/g`:将文件中的所有 `old` 替换为 `new`。

                   - **文件操作**:
                     - `:e filename`:打开新文件。
                     - `:w filename`:另存为。
                     - `:tabnew filename`:在新标签页中打开文件。

                   - **窗口分割**:
                     - `:split filename`:水平分割窗口打开文件。
                     - `:vsplit filename`:垂直分割窗口打开文件。
                     - `Ctrl + w, w`:切换窗口。

                   - **可视模式**:
                     - `v`:字符可视模式。
                     - `V`:行可视模式。
                     - `Ctrl + v`:块可视模式。

                #### 4. **退出 Vim/Vi**
                   - `:q`:退出。
                   - `:q!`:强制退出(不保存)。
                   - `:wq`:保存并退出。

               vim异常关闭,产生的临时文件:swap,对错误离开文件的备份,临时存放。格式:.文件名.swap

        11. wc统计行数
          1. 输出每个指定文件的行数、单词计数和字节数
          2. wc [选项]... [文件]...
            1. [-c]  --bytes           输出字节数统计
            2. [m]  --chars           输出字符数统计
            3. [l]   --lines             输出行数统计
            4. [L]  --max-line-length  显示最长行的长度
            5. [w]  --words           显示单词计数
        12. 路径
          1. 绝对路径:从根开始,可以找到所有文件,但是当层数多的时候就太多了。
            1. 比如:/home/ly
          2. 相对路径:
            1. 当前:要么不写要么./
            2. 上一级:../
  2. 用户管理

    1. 与用户管理的相关文件

      1. /etc/passwd 存储系统中的用户账号信息,包括用户名、用户ID(UID)、组ID(GID)、用户的主目录、登录 shell 等信息。密码字段通常被设置为“x”,表示密码被加密并存储在 /etc/shadow 文件中。
         
        1. 用户名:x:uid:gid:用户描述:用户家目录:shell脚本
          1. 用户名:登录系统的名字
          2. x:密码占位符,具体内容不在这里
          3. uid:用户的身份证号
            1. 一般来说,uid:0为特权用户,1-499为系统用户,1000-无限大为普通用户。500-999通常也认为是系统用户
            2. /etc/login.defs 可修改默认uid,gid的最值
              1.         
          4. gid:用户组的身份证
          5. 用户描述:用于对用户的描述,通常偷懒就使用用户名
          6. 用户家目录:用户自己的控制空间
          7. shell:命令执行系统。
      2. /etc/shadow 存储用户的加密密码以及密码策略(如密码有效期、最后更改时间等)。只有 root 用户可以读取此文件,提供了更高的安全性。
         
        1. 用户名:加密后的密码:最后一次修改时间:最小时间(密码修改时间,到了期限才可以改):密码有效期:警告时间(提示修改密码):不活动时间(表示用户保留期限未使用账号,超过就禁用):失效时间(从账号创建开始,规定时间后销毁):保留暂时不用
      3. /etc/group 存储系统中的用户组信息,包括组名、组ID(GID)以及该组的成员。
        1. 组名:组密码占位符:组ID:组成员(新建时只有自己默认不显示)
      4. /etc/gshadow 存储组的加密密码和管理员信息,仅 root 用户可以读取此文件。
      5. /etc/skel/ 当创建新用户时,此目录中的文件会被复制到新用户的主目录中,作为默认配置文件。常见的文件包括 .bashrc.profile 等。
      6. /etc/login.defs 配置与用户账号相关的全局参数,例如密码有效期、密码长度、UID 和 GID 的最小和最大值等。
      7. /etc/default/useradd 定义使用 useradd 命令时的默认设置,例如默认 shell、默认主目录路径等。
      8. /var/spool/mail/ 存储用户的电子邮件(如果系统配置了本地邮件服务)。每个用户都有一个与其用户名对应的邮件文件。
      9. /home/

        系统中所有用户的默认主目录位置。每个用户在此目录下有一个以用户名命名的子目录,存放用户的个人文件和配置文件。

      10. 用户初始化配置文件(补充)
        1. 配置文件来源,创建新用户时,系统根据/etc/skel模版目录福泽到新建用户目录
        2. 主要的初始化配置文件(可以用于自动化一些软件的开关,磁盘的挂载等)
          1. ​​​~/.bash_profile  每次登录系统时执行,定义初始化变量值(每次开机登录执行){ 每次用户通过终端登录系统时(例如通过 SSH 或控制台登录),~/.bash_profile 会自动运行。}
          2. ~/.bashrc  每次进入新的bash环境时执行(开启新的终端)注意:影响当前~的用户
          3. /etc/bashrc  全局配置文件(开启新的终端)注意:影响全体用户
            1. ​​​​​​​
    2. 用户与组的概念

      1. 用户可分为:超级用户root(uid=0),系统用户(uid=1-499),普通用户(uid=1000-无穷大)
        1. 系统用户账户提供支持服务进程使用,这些进程通常不需要以超级用户身份运行。系统会为它们分配非特权账户,确保其文件和其他资源不受彼此以及以上系统上普通用户的影响。用户无法使用系统用户账户以交互方式登录。
        2. 超级用户账户负责管理系统,超级用户的名称为root,其账户的UID为0,超级用户具有完全的系统访问权限
        3. 普通用户对系统具有有限的访问权限
        4. 对id命令的简单用法(查看当前,检查是否存在)
      2. 组通俗理解就是一群用户的集合。组可向其中的所有用户授予文件访问权限,组内的用户享有该组的所有权限,这种通俗意义上的组称为组员用户的补充组,补充组一般允许存在多个成员。与用户一样,组也具有组名以便于识别。在内部,系统通过分配唯一标识符(组ID或GID)来区分不同的组。

  3. 用户管理的命令(如果有些命令无法使用就表示要root或同等权限)

    1. 一些不得不看的前行篇

    2. useradd:添加用户

      1. 语法:useradd 【选项】用户名
      2. 常用参数:
        1. -m: 创建用户主目录(/home/用户名),不写默认就有。
        2. -d: 指定用户主目录。
        3. -s: 指定用户的默认 Shell。
        4. -G: 将用户添加到指定的组中(多个组用逗号分隔)。
    3. usermod:修改用户属性

      1. 语法:usermod 【选项】用户名
      2. 常用参数:
        1. -aG: 将用户追加到指定的组中。
          1. usermod -aG groupname username
            1. -aappend):将用户添加到指定的附加组,而不会覆盖其原有的附加组列表。
            2. -G:指定附加组的列表,多个组名用逗号分隔。
            3. 如果不加 -a 选项,只用 usermod -G,则会替换用户当前的附加组,而不是追加。为了保留用户现有的组并添加新组,必须使用 -a 选项。
        2. -s: 修改用户的默认 Shell。
          1. usermod -s /bin/zsh username
        3. -d: 修改用户的主目录。(不会创建但是会显示,用的时候要么错误要么就建立目录)
          1. usermod -d /new/home/dir username
        4. -l 新用户名 旧名:用来将旧用户名修改为新的用户名。
    4. userdel:删除用户

      1. 语法:userdel 【选项】用户名
      2. 常用参数:
        1. -r: 删除用户的主目录及其内容。一定要用,不然不会删除目录(记得之前我们转移目录lly吗?因为没有,所以没有转移,所以下次转移要先建立)
    5. passwd:设置与删除密码(root下设置无需复杂密码)

      1. 语法:passwd 【选项】【用户名】
      2. 常用参数:
        1. -d: 删除指定用户的密码(使其不需要输入密码登录)。
          1. passwd -d username
            
          2. 这会将密码设置为空,但这并不意味着禁用该用户,除非系统被配置为强制使用密码登录。
        2. -l: 锁定用户账户。这将禁止该用户使用密码登录系统。
          1. passwd -l username

        3. -u: 解锁用户账户。解锁一个被锁定的用户账户,恢复其正常的密码登录功能。
          1. passwd -u username

        4. [--stdin]  从标准输入(比如管道)取密码,免除交互过程(只有root才能使用)

    6. id:查看与检测用户是否存在

      1. 语法:id 【用户名】
      2. 不写用户名就是当前用户
    7. who:显示当前登录用户

      1. 语法:who
      2. 显示当前系统上登录用户(终端登录和系统登录不一样,系统登录是你开机时登录的账户)
    8. w:显示系统当前登录用户及其活动信息

      1. 语法:w 【选项】【用户名】
      2. 常用参数:
        1. -h: 不显示标题行。
        2. -s: 显示简洁的输出,不包括所有列。
      3. 输出字段说明
        1. USER: 当前登录的用户名。
        2. TTY: 用户登录的终端设备(如 tty1pts/0 等)。
        3. FROM: 用户登录的源(IP 地址或主机名)。
        4. LOGIN@: 用户登录的时间。
        5. IDLE: 用户自上次活动以来的空闲时间。
        6. JCPU: 当前终端的所有进程所消耗的 CPU 时间。
        7. PCPU: 当前用户正在运行的进程所消耗的 CPU 时间。
        8. WHAT: 用户当前正在执行的命令或程序。
    9. su:用户切换

      1. 语法:su 【选项】【用户名】
      2. 常用参数:
        1. - 或 --login: 启动一个登录 shell,模拟用户登录时的环境变量。这是最常用的选项,它会读取目标用户的登录环境设置,例如 .profile.bash_profile 或 .bashrc 文件。
          1. su - 用户名
        2. -c: 执行指定的命令并退出。例如,使用 root 权限执行 ls 命令:
          1. su -c 'ls /root'
        3. -s: 使用指定的 shell。例如,使用 /bin/bash 作为 shell:
          1. su -s /bin/bash 用户名
    10. 修改主机名(注意在root或者sudo时用,切换不了重开一个终端就可以了)

      1. 临时:hostname 新主机名(不写名字就是查看当前临时主机名)
      2. hostnamectl 【选项】【名字】永久
        1. hostnamectl set-hostname 新主机名
        2. hostnamectl查看当前主机名
      3. 当然永久还可以改/etc/hostname文件但是不建议,我也没想学这个
    11. groups:显示用户所属组(先熟悉一下反正简单)

      1. 语法:groups 【用户名】
      2. 不写用户名就是当前用户
  4. 用户组管理命令(建议root)

    1. 用户组相关信息

      1. 主组也叫基本组(Primary Group):每个用户都有一个主组,当用户创建新文件时,该文件默认属于用户的主组。主组的 GID 存储在 /etc/passwd 文件中。
      2. 附加组(Supplementary Group):用户可以属于多个附加组,附加组赋予用户对其他组文件和资源的访问权限。附加组信息存储在 /etc/group 文件中。
      3. 系统组(一般是1-999):为系统服务和进程创建的组,通常不用于普通用户。
      4. 普通用户组(gid大于1000,某些大于500):为管理用户文件和权限的组。
      5. 特权组(和普通用户一样):赋予用户更高的权限,如执行系统管理任务。
      6. GID 的范围从 0 到 65535。在这个范围内,0 通常被保留给系统管理员(root

本文标签: 学完就