Linux用户管理及文件权限

一、Linux用户管理

       Linux系统不同用户权限不一样。

       root用户:此用户是唯一的,且拥有系统的所有权限。

       普通用户

       虚拟用户

       在Linux中,用户有自己的UID身份账号且唯一

       在Linux系统中UID为0,就是超级用户,如要设置管理员用户,可以修改UID为0,建议使用sudo

        系统用户UID为1~999,Linux安装的服务程序都会创建独有的用户,负责运行

        普通用户UID从1000开始:由管理员创建(CentOS 7),最大值1000~60000范围

        UID 用户id号;GID用户组id号;root用户、组id号都为0

   1. 常用命令解释器

        /bin/sh   默认

        /bin/bash 默认

        /sbin/nologin 虚拟用户

   2. 用户信息配置文件

       /etc/passwd :用户信息

     

  

       /etc/shadow :用户密码信息

       /etc/group :用户组信息

       /etc/gshadow:用户组密码信息

       /etc/sk

  3. 用户管理命令

     

      1)useradd命令

          此命令用于Linux中创建新的用户。账号建好之后,再使用passwd设定账号密码,而userdel删除账号 

          -c<备注>:加上备注文字。备注文字会保存在passwd的备注栏位中;
          -d<登入目录>:指定用户登入时的启始目录;
          -D:变更预设值;
          -e<有效期限>:指定帐号的有效期限;
          -f<缓冲天数>:指定在密码过期后多少天即关闭该帐号;
          -g<群组>:指定用户所属的群组;
          -G<群组>:指定用户所属的附加群组;
          -m:自动建立用户的登入目录;
          -M:不要自动建立用户的登入目录;
          -n:取消建立以用户名称为名的群组;
          -r:建立系统帐号;
          -s<shell>:指定用户登入后所使用的shell;
          -u<uid>:指定用户id。

      创建用户流程:

       a. useradd user_account

       b. 系统读取/etc/login.defs(用户定义文件),和/etc/default/useradd (用户默认配置文件)两文件中定义的规则创建新用户

       c. 向/etc/passwd 和/etc/group 文件中添加用户和用户组信息,向/etc/shadow和/etc/gshadow中添加密码信息

       d. 根据/etc/default/useradd文件中配置的信息创建用户家目录

       e. 把/etc/skel 中所有的文件复制到新用户家目录中

      

      

     创建用户有关的目录/etc/skel

        此目录存放新用户需要的基础环境变量文件,添加新用户时,这个目录下所有文件自动被复制到新家目录下,且默认是隐藏文件,以点开头的

     

    

    

    

   

    -D参数用来修改配置文件/etc/default/useradd 文件中的默认值

    useradd -D 参数选项

   

    2)usermod命令        

          此命令用于修改系统已经存在的用户信息,只能修改未使用中的用户

    3)userdel命令

          删除用户与相关文件(建议注释/etc/passwd用户信息而非直接删除用户)

         userdel (选项)(参数)

         -f:强制删除用户,即使用户当前已登录

         -r:删除用户的同时,删除与用户相关的所有文件

        

   4)groupadd命令

        此命令用于创建一个新的工作组,新工作组信息将被添加到系统文件中     

        语法
        groupadd - 建立新群组
        groupadd [ -ggid [ -o ]] [ -r ] [ -f ] group [[ ]]

        选项
           -g:指定新建工作组的id;
           -r:创建系统工作组,系统工作组的组ID小于500;
           -K:覆盖配置文件“/ect/login.defs”;
           -o:允许添加组ID号不唯一的工作组。

        

      5)groupdel命令

           删除用户组

       

      6)passwd 命令

           passwd命令修改用户密码和过期时间等,root可以修改普通用户      

           语法
           passwd(选项)(参数)
           选项
           -d:删除密码,仅有系统管理者才能使用;
           -f:强制执行;
           -k:设置只有在密码过期失效后,方能更新;
           -l:锁住密码;
           -s:列出密码的相关信息,仅有系统管理者才能使用;
           -u:解开已上锁的帐号。
           -i:密码过期多少天后禁用账户
          -x:设置x天后可以修改密码
          -n:设置n天内不得改密码
          -e:密码立即过期,强制用户修改密码
          -w:用户在密码过期前收到警告信息的天数

       

       

         批量更新密码命令

         a.查看当前机器的用户信息

             tail /etc/passwd

         b.批量改密码,ctrl + d结束输入

            chpasswd

      7)  用户查询相关命令

            id 命令

            id命令用于检查用户和组以及对应的uid,gid等信息

      8)whoami、who、w、last、lastlog

            whoami:显示可用于查看当前登录用户

             w:显示当前已登录的用户

          

            last、lastlog查看用户详细的登录信息

            last:命令显示已登录的用户列表和登录时间

            lastlog:命令显示当前机器所有用户最近的登录信息

         

         

     9)Linux用户身份切换命令

          su命令用于切换到指定用户

          root切换普通用户,无须密码

          普通用户切换其他用户,需要输出用户密码

         

        

         visudo命令

          用于编辑/etc/sudoers文件,且提供语法检测,用于配置sudo命令

         为oldboy用户配置sudo使用权

       

         sudo配置文件

      

        配置sudo目的在于即能让运维方便干活(权限不足问题),又不威胁系统安全

        sudo命令用来以其他身份来执行命令,预设的身份为root。在/etc/sudoers中设置了可执行sudo指令的用户。普通用户就不需要root密码即可使用root权限

        

        配置了/etc/sudoers文件后,可以对用户命令提权,sudo命令

        切换root执行操作,使用sudo su -,需要输入当前用户的密码

        

猜你喜欢

转载自www.cnblogs.com/jiawei2527/p/12650675.html