用户和组管理的命令

用户管理概念:

用户类别:

        管理员,普通用户,(系统用户和登录用户)

组类别:

        管理组员,普通用户组

        基本组和附加组

        私有组,公共组

数据库文件:

/etc/passwd

       login:password:uid:gid:comment:home:shell

/etc/shadow

          login:encrpted_password:

/etc/group

     group:password: user_list

密码存储格式:单向加密,并借助于salt完成

md5

sha1

sha224

sha256

sha384

sha512

用户组管理:

    安装上下文:

        进程以发起者的身份运行

   进程对文件的访问权限,取决于发起此进程的用户的权限:

系统用户:为了能够让后台进程或服务类型进程以非管理员的身份运行,通常需要为此创建多个普通用户:这类用户从不用登录系统

groupadd命令:添加组[选项]    group_name

  -g GID :指定GID:默认是上一个组的GID+1

-r:创建系统组;

groupmod命令:修改组属性

    groupmod[选项]  GROUP

    -g GID :修改GID;

     -n new_name:  修改组名:

groupdel命令:删除组

    groupdel [选项] GROUP

useradd 命令:创建用户

  useradd [选项]  登录名

          -u ,–uid  UID: 指定UID;

          -g,   –gid  GROUP:  指定基本组ID,此组得事先存在

         -G,–groups  GROUP: [,GROUP2,…[,GROUPN]]]:指明用户所属的附加组,多个组之间用逗号分隔:

          -c,–comment COMMENT:注册信息;

          -d,  –home HOME|_DIR : 以指定的路径为用户的家目录;通过复制/etc/skel此目录并重命名实现,指定的家目录路径如果事先存在,则不会为用户复制复制环境配置文件:

           -s ,  –shell, SHELL:指定用户的默认shell, 可用的所有shell列表存储在/etc/shells文件中,

    注意:创建用户的诸多默认设定配置文件为/etc/login.defs

 

     useradd  -D:  显示创建用户的默认配置;

     useradd  -D 选项:修改选项的值;

                  修改的结果保存与/etc/default/useradd 文件中:

 suermod命令:修改用户属性

     suermod [选项]  登录

      -u,–uid  UID:修改用户的ID 为此指定的新UID;

      -g,  –gid  GROUP:修改用户所属的基本组、

      -G, –groups   GROUP: [,GROUP2,…[,GROUPN]]]:修改用户所属的附加组,原来的附加值会被覆盖

      -a,  –append: 与-G一同使用,用于为用户追加新的附加组,

     -c, –comment COMMENT :修改注释信息:

     -d , –home  HOME_DIR:  修改用户的家目录;用户原有的文件不会被转移至新位置

     -m, –move-home:只能与-d 选项一同使用,用于将来的家目录欲动为新的家目录

     -l,–login NEW_LOGIN:修改用户名;

     -s, –shell  SHELL:修改用户的默认shell;

     -L, –lock:  锁定用户密码:即在用户原来的密码字符串之前添加一个”!“:

     -U,–unlock; 几所用户的密码:

userdel 命令:删除用户

      userdel[选项] 登录

      -r :删除用户是一并删除其家目录:

练习1:创建用户gentoo, UID为4001,基本组为gentoo, 附加组为distro(GID为5000)和peguin(GID为5001);

练习2:创建用户fedora,  其注释信息为”Fedora Core",默认shell为/bin/tcsh;

练习3,修改gentoo 用户的家目录为/var/tmp/gentoo: 要求其原文件扔能被用户访问:

练习4:为gentoo新增附加组 netadmin:

passwd命令:

passwd [-k] [-l] [-u [-f]] [-d] [-e]  [-n mindays] [-x maxdays]  [-w warndays] [-i inactivedays] [-s] [–stdin] [username] 

(1) passwd:修改用户自己的密码:

(2)passwd USERNAME: 修改用户指定的密码,仅root有此权限;

 

    -l, -u:  锁定和解锁用户:

   -d:  清除用户密码串,

   -e:DATE;过期期限,日期,

   -i:DAYS; 非活动期限:密码的最短期限;

   -x DAYS: 密码的最长使用期限;

   -w  DAYS:警告期限,

   –stdin: 

    echo "PASSWORD" |  password  –stdin SUERNAME

gpasswd 命令:

   

 组密码文件:/etc/gshadow

      gpasswd [选项] group

     -a USERNAME : 向组中添加用户

     -d  USERNAME:  从组中移除用户

newgrp命令:临时切换指定的组为基本组:

    newgrp [-] [group]

 -:会模拟用户重新登录以实现重新初始化环境

   chage [选项] 登录名

       -d

       -E

       -W

       -m

      -M

id命令:显示用户的真实有效ID

      id [OPTION]…..[USER]

     -u:仅显示有效的UID;

     -g:仅显示用户的基本组ID

     -G:仅显示用户组所属的所有组的ID

     -n: 显示名字而非ID

su命令:switch user

登录式切换:会通过重新读取用户的配置文件来重新初始化

    su –  USERNAM

    su  -l  USERNAME

非登录是切换:不会读取目标用户的配置文件进行初始化

      su    USERNAME

 注意:管理员可无法切换至其他任何用户

     -c 'COMMAND' :仅以指定用户的身运行此处指定的命令;

其他几个命令:chsh,chfn,finger, whoami  pwck,grpck

命令总结:

   groupadd, groupmod,groupdel.useradd,usermod,usermod,userdel,

   passwd,gpasswd,newgrp,id,su,chage

原创文章,作者:shadow,如若转载,请注明出处:http://www.178linux.com/64446

(0)
shadowshadow
上一篇 2016-12-21
下一篇 2016-12-21

相关推荐

  • N25期第四周作业

    1.复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限 cp -r /etc/skel /home/tuser1 chmod -R go= /home/tuser1 2.编辑/etc/group文件,添加组hadoop echo “hadoop:x:1080” >> /…

    Linux干货 2016-12-26
  • shell编程之函数

    函数:函数function是由若干条shell命令组成的语句块,实现代码 重用和模块化编程      1)函数的定义: 可在 命令行,脚本的一部分,只有函数的单独文件 中定义        两部分组成:函数名和函数体;函…

    Linux干货 2016-08-21
  • iptables——linux下的防火墙

    iptables Firewall:隔离工具 Packets Filter Firewall;工作于主机或网络的边缘,对经由的报文根据预先定义的规则(匹配条件)进行检测,对于能够被规则匹配到的报文实行某预定义的处理机制的一套组件          硬件防火墙:在硬件级别实现部分功…

    Linux干货 2016-10-22
  • grep用法

    一、前言 grep是功能强大的文本处理工具,全称:global search regular expression and print out the line,grep一行一行使用正则表达式匹配文本,之后对匹配到的文本整行显示(除非使用特定的选项取反,如 grep -v)。 二、grep用法 grep命令用法:    &nbs…

    Linux干货 2015-08-24
  • 马哥教育网络班20期+第3周课程练习

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。    w | grep "^root\>" |sort -u   2、取出最后登录到当前系统的用户的相关信息。    who |   3、取出当前系统上被用户当作…

    Linux干货 2016-06-26
  • 学习linux第四天

    Linux学习第4天   Linux内部命令和外部命令    内部命令:实际上是shell程序的一部分,其中包含的是一些比较简单的linux系统命令,这些命令由shell程序识别并在shell程序内部完成运行,通常在linux系统加载运行时shell就被加载并驻留在系统内存中。内部命令是写在bashy源码里面的,其执行速度比外部…

    Linux干货 2016-10-29