• 二、Linux文件系统和文本编辑器


    1、用户和用户组管理

    1.1 用户管理常用命令

    • Linux用户分类

      用户的角色是通过UID来识别,用户的UID全局唯一。

      • root用户(超级用户)

        系统唯一,是真实的。该用户可以登录系统,可以操作系统任何文件和命令,拥有最高权限。

      • 虚拟用户

        被称为伪用户或假用户,与真实用户区分开来。这类用户不具有登录系统的能力,却是系统运行不可缺少的用户,如bin、daemon、adm等。

        虚拟用户是系统自身拥有的。

      • 普通真实用户

        该类用户能登录系统,但权限受到限制,由系统管理员自行添加。

    • 用户账号添加命令——useradd或adduser

      • 语法

        useradd [option] [username]
        
        • option

          选项 意义
          -g 用于添加用户账号时指定该用户的私有组。如不指定-g参数,useradd命令将自动建立与用户账号同名的组作为该账号的私有组。
          -G 用于添加附属组
          -D 用于显示或设置useradd命令所使用的默认值
          -d 指定用户主目录,如果此目录不存在,则同时使用-m选项来创建主目录
          -m 使用者目录若不存在,则自动建立
          -u UID 指定用户的用户号,如果同时有-o选线,则可以重复使用其他用户的标识号。
          注意,ID值不能为负值,预设为最小不得小于99而逐次增加。
          0~99传统上保留给系统账号使用。
      • 作用

        • 在/etc/passwd文件中添加一行记录
        • 在/home目录下创建新用户的主目录,并将/etc/skel目录中的文件复制到该目录中
      • 说明

        • 新建的用户暂时无法登录,需要为该用户设置口令后才能登录
        • 用户的UID和GID是useradd自动选取的,即将/etc/passwd文件中的UID加1,将/etc/group文件中的GID加1
        • 使用useradd或adduser命令增加新用户时,系统将为用户创建一个与用户名相同的组,称为私有组
    • 修改用户账号——usermod

      • 语法

        usermod [option] [username]
        
        • option为useradd命令选项

          选项 意义
          -d [directory] 修改用户登入时的目录
          -e [days] 修改账号的有效期限,days表示天数
          -g [group] 修改用户所属的群组
          -l [login_name] 变更用户登录时的名称为login_name
          -p [password] 修改用户密码
          -s [shell] 指定用户登录的shell,如果不设置,则选用系统预设的shell
        • username是需要修改的用户名

      • 作用

        usermod命令可用来修改用户账号的各种属性,包括用户主目录、私有组、登录shell等内容。

      • 说明

        • 使用usermod命令修改用户密码,其显示在文件/etc/shadow中的密码是明密码,应该用passwd命令修改密码
        • usermod不允许改变已登录用户的用户账号名称,当用户修改UID时,也必须确认这个用户没有在电脑上执行任何程序
    • 删除用户账号命令——userdel

      • 语法

        userdel [option] [username]
        
      • 说明

        • option只有一个可选项-r
        • 如果在userdel后加上-r选项,则在删除用户的同时也一并删除存储在/home目录下的该用户目录和文件
    • 用户口令管理命令——passwd

      • 语法

        passwd [option] [username]
        
        • [username]为用户名

        • [option]为passwd命令选项

          选项 意义
          -l 锁定用户口令,即禁止使用该用户账号
          -u 口令解锁
          -d 关闭使用者的密码确认功能,使用者在登陆时可以不用输入密码,只有具备root用户的使用者才能使用
          -f 强迫用户下次登录时修改密码
          -l [login_name] 变更用户登录时的名称为login_name
          -s 显示指定使用者的密码认证种类,同样只有具备root权限的用户才可使用
      • 说明

        • 凡是在文件/etc/shadow的用户名含“!!”时,该用户账号不可使用,而为加密信息时是可以使用的

    1.2 用户组管理常用命令

    • 定义

      用户组是具有相同特征的用户的集合体,用户和用户组的关系是多对多的,一个用户可以属于多个用户组,一个用户组可以包含多个用户。

    • 用户组添加命令——groupadd

      • 作用

        groupadd可指定用户组名称来建立新的用户组

      • 语法

        groupadd [option] [groupname]
        
        • option为命令选项

          选项 意义
          -g GID 除非使用-o参数,否则GID值必须是唯一且数值不可为负,预设值以/etc/login.defs为准
          -o GID 运行GID不唯一
          -r 加入组GID号,且其GID号低于499系统账号
          -f 新增一个已经存在的用户组账号,系统会出现错误信息,然后结束
        • groupname是将要创建的用户组名

      • 说明

        • 在调用groupadd命令时不设置GID号,新组的组标识GID是在当前最大组标识的基础上加1
    • 用户组修改命令——groupmod

      • 作用

        groupmod可指定用户组名称来修改新的用户组号或用户组名称

      • 语法

        groupmod [option] [groupname]
        
        • option为命令选项

          选项 意义
          -g GID 用户指定新的GID
          -o GID 重复使用GID
          -n 为群组改名
        • groupname为用户组名

    • 用户组删除命令——groupdel

      • 作用

        groupdel可指定用户组名称来删除已有的用户组

      • 语法

        groupdel [groupname]
        
      • 说明

        • 删除组时,如果该用户组中包含某些用户,则必须先删除这些用户,然后才能删除该用户组

    2、文件和目录操作

    • 文件

      • 定义

        文件是Linux用来存储信息的基本结构,它是存储在某种介质(如磁盘、光盘和磁带等)上的一组信息的集合

    • 说明

      • Linux文件均为无结构的字符流形式
      • 文件名是文件的标识,它由字母、数字、下划线和圆点组成的字符串构成
      • Linux要求文件名的长度限制在255个字符以内
      • 为了便于识别和管理,用户可以把扩展名作为文件名的一部分,文件名与扩展名之间用圆点分开,扩展名对于文件分类有用
    • 目录

      Linux系统以文件目录(树形结构)的方式来组织和管理系统中的所有文件。

      整个文件系统有一个“根”(root),然后在根上分“杈“(directory),任何一个分杈上都可以再分杈,杈上也可以长出”叶子“(file)。

    • 路径

      路径是指从树形目录中的某个目录层次到某个文件的一条道路。

      • 路径的主要构成是目录名称,中间用"/"符号分开。
      • 路径分为相对路径和绝对路径。
    • 文件操作常用命令

      • 文件清单命令:ls
      • 文件复制命令:cp
      • 文件移动命令:mv
      • 文件删除命令:rm
    • 目录操作常用命令

      • 创建目录命令:mkdir
      • 删除目录命令:rmdir
        • rmdir仅仅能删除父目录中只包含空子目录的情况,如果目录中存在文件,无法删除该目录
      • 目录切换命令:cd

    3 文件和目录权限管理

    • 说明

      • 文件或目录的访问权限分为只读、只写和可执行三种
      • 有三种不同类型的用户可对文件或目录进行访问:文件所有者、同组用户、其他用户
      • 每一个文件或目录的访问权限都有三组,每组用三位表示
        • 文件属主的读、写和执行权限
        • 与属主同组的用户的读、写和执行权限
        • 系统中其他用户的读、写和执行权限
        • 权限字段r代表只读,w代表写,x代表可执行
    • 更改文件(目录)权限命令——chmod

      • 作用

        chmod命令用于更改文件或目录的访问权限。

      • 语法(两种用法)

        • 一种是包含字母和操作符表达式的文字设定法
        • 一种是包含数字的数字设定法
        chmod [userType] [signal] [type] [filename]
        
        用户类型[userType] 数学符号(signal) 文件类型(type)
        u 表示用户(user),即文件或目录的所有者 + 添加某个权限 r 可读
        g 表示同组(group),即与文件属主同组的用户 - 取消某个全新啊 w 可写
        o 表示其他(others)用户 = 赋予给定权限并取消其他所有权限 x 可执行
        a 表示所有(all)用户,它是系统默认值

        • 数字表示属性的含义

          0表示没有权限,1表示可执行权限,2表示可写权限,4表示可读权限

    • 更改文件(目录)属主命令——chown

      • 作用

        chown命令可以改变文件或目录的属主

      • 语法

        chown [option] [owner] [filename]
        
        • option为chown命令选项

        • owner为改变后的用户属主

        • filename为需要改变属主的文件或目录

      • 说明

        • 当用户要改变一个文件的属主时,所使用的用户除了是root用户外,还可以是目标属主的成员
    • 特殊权限命令——SUID和SGID

      有时需要没有被授权的用户完成某项任务

      • SUID

        • 作用

          当一个设置了SUID位的可执行文件被执行时,该文件以所有者的身份运行

        • 说明

          无论谁来执行这个文件,它都拥有文件所有者的特权,可以任意使用该文件拥有者能使用的全部系统资源;

          如果所有者是root,那么执行人就有超级用户的特权了

        • 设置和除去SUID

          chmod u+s [filename]  #设置[filename]的SUID位
          chmod u-x [filename]  #去除[filename]的SUID位
          
      • SGID

        • 作用

          当一个设置了SGID位的可执行文件被执行时,该文件将具有所属组的特权,任意存取整个组所能使用的系统资源

        • 说明

          若一个目录设置了SGID,则所有被复制到这个目录下的文件,其所属的组都会被重设为和这个目录一样,除非在复制文件时加上-p选项,才能保留原来所属的群组设置

        • 设置和除去SGID

          chmod g+s [filename] #设置[filename]的SGID位
          chmod g-s [filename] #去除[filename]的SGID位
          
      • 说明

        SUID和SGID占据了ls -l清单中x位相同的空间;

        如果开始设置了可执行权限x位,则其相应的位置用小写的s表示;

        如果没有设置可执行权限x位,则其相应位置表示为大写的S。

    • 查找文件命令——find

      • 作用

        find命令能帮助用户在使用、管理Linux的日常事务时方便地查找出用户所需要的文件

      • 语法

        find [路径] [选项] [操作]
        
        • 路径

          路径是find命令所查找的目录路径

        • 选项

          选项用于指定查找条件

          选项 意义
          name 根据文件名查找文件
          perm 根据文件权限查找文件
          prune 使用这一选项可以使find命令不在当前指定的目录中查找,如果同时使用-depth选项,那么-prune将被find命令忽略
          user 根据文件属主查找文件
          group 根据文件所属的用户组查找文件
          mtime -n +n 根据文件的更改时间查找文件,-n表示文件更改时间距今在n天之内,+n表示文件更改时间距今在n天前
          nogroup 查找无有效所属组的文件,即该文件所属的组在/etc/groups中不存在
          nouser 查找无有效属主的文件,即该文件的属主在/etc/passwd中不存在
          -newer file1 ! file2 查找更改时间比文件file1新但比文件file2旧的文件
          type 查找某一类型的文件,type后跟的子选项及其意义如下:
          b:块设备文件
          d:目录
          c:字符设备文件
          p:管道文件
          l:符号链接文件
          f:普通文件
          size n:[c] 查找文件长度为n块的文件,带有c时表示文件长度以字节计
          depth 在查找文件时,首先查找当前目录中的文件,然后在其子目录中查找
        • 操作

          操作用于指定结果的输出方式

          操作名称 意义
          print 将匹配的文件输出到标准输出
          exec 对匹配的文件执行该参数所给出的shell命令。相应命令的形式为'command' { } ;
          注意,{ }和;之间的空格
          ok 和-exec的作用相同,只不过以一种更安全的模式来执行该参数所给出的shell命令,在执行每一个命令之前,都会给出提示,让用户来确定是否执行
        • 示例

          # 查找当前目录下文件名以t开头,且文件属主具有读、写、执行权限的文件
          find . -name 't*' -perm 744 -print
          
          # 查找更改时间据今90天内的文件
          find . -mtime -90 -print
          
          # 其他
          find -/etc -type f -name "rc*" -exec ls -l {} ;
          
  • 相关阅读:
    17.1.2.1 Advantages and Disadvantages of Statement-Based and Row-Based Replication
    17.1.2 Replication Formats
    Setting the Master Configuration on the Slave
    17.1.1.9 Introducing Additional Slaves to an Existing Replication Environment
    17.1.1.8 Setting Up Replication with Existing Data
    17.1.1.7 Setting Up Replication with New Master and Slaves
    17.1.1.6 Creating a Data Snapshot Using Raw Data Files
    列出display的值,并说明它们的作用
    CSS设置DIV居中
    CSS选择符有哪些?哪些属性可以继承?优先级算法如何计算?
  • 原文地址:https://www.cnblogs.com/nuochengze/p/14417812.html
Copyright © 2020-2023  润新知