• Linux 用户和用户操作


    1,创建

    groupadd test

    增加一个test

    2,修改

    groupmod -n test2 test

    将test的名子改成test2

    3,删除

    groupdel test2

    删除 test2

    4,查看

    a),查看当前登录用户所在的 groups,查看apacheuser所在groups apac

     一,操作

    1,创建

    groupadd test

    增加一个test

    2,修改

    groupmod -n test2  test

    将test的名子改成test2

    3,删除

    groupdel test2

    删除 test2

    4,查看

    a),查看当前登录用户所在的 groups,查看apacheuser所在groups apacheuser

    b),查看所有 cat /etc/group

    c),有的linux系统没有/etc/group文件的,这个时候看下面的这个方法

    cat /etc/passwd |awk -F [:] ‘{print $4}’ |sort|uniq | getent group |awk -F [:] ‘{print $1}’

    这里用到一个命令是getent,可以通过ID来查找信息,如果这个命令没有的话,那就很难查找,系统中所有的了.

    二,用户操作

    1,增加用户

    查看复制打印?

    [root@krlcgcms01 mytest]# useradd –help

    Usage: useradd [options] LOGIN

    Options:

    -b, –base-dir BASE_DIR       设置基本路径作为用户的登录目录

    -c, –comment COMMENT         对用户的注释

    -d, –home-dir HOME_DIR       设置用户的登录目录

    -D, –defaults                改变设置

    -e, –expiredate EXPIRE_DATE 设置用户的有效期

    -f, –inactive INACTIVE       用户过期后,让密码无效

    -g, –gid GROUP               使用户只属于某个

    -G, –groups GROUPS           使用户加入某个

    -h, –help                    帮助

    -k, –skel SKEL_DIR           指定其他的skel目录

    -K, –key KEY=VALUE           覆盖 /etc/login.defs 配置文件

    -m, –create-home             自动创建登录目录

    -l,                           不把用户加入到lastlog文件中

    -M,                           不自动创建登录目录

    -r,                           建立系统账号

    -o, –non-unique              允许用户拥有相同的UID

    -p, –password PASSWORD       为新用户使用加密密码

    -s, –shell SHELL             登录时候的shell

    -u, –uid UID                 为新用户指定一个UID

    -Z, –selinux-user SEUSER     use a specific SEUSER for the SELinux user mapping

    [root@krlcgcms01 mytest]# useradd --help

    Usage: useradd [options] LOGIN

    Options:

     -b, --base-dir BASE_DIR       设置基本路径作为用户的登录目录

     -c, --comment COMMENT         对用户的注释

     -d, --home-dir HOME_DIR       设置用户的登录目录

     -D, --defaults                改变设置

     -e, --expiredate EXPIRE_DATE 设置用户的有效期

     -f, --inactive INACTIVE       用户过期后,让密码无效

     -g, --gid GROUP               使用户只属于某个

     -G, --groups GROUPS           使用户加入某个

     -h, --help                    帮助

     -k, --skel SKEL_DIR           指定其他的skel目录

     -K, --key KEY=VALUE           覆盖 /etc/login.defs 配置文件

     -m, --create-home             自动创建登录目录

     -l,                           不把用户加入到lastlog文件中

     -M,                           不自动创建登录目录

     -r,                           建立系统账号

     -o, --non-unique              允许用户拥有相同的UID

     -p, --password PASSWORD       为新用户使用加密密码

     -s, --shell SHELL             登录时候的shell

     -u, --uid UID                 为新用户指定一个UID

     -Z, --selinux-user SEUSER     use a specific SEUSER for the SELinux user mappinguseradd test

    passwd test

    增加用户test,有一点要注意的,useradd增加一个用户后,不要忘了给他设置密码,不然不能登录的。

    2,修改用户

    usermod -d /home/test -G test2 test

    将test用户的登录目录改成/home/test,并加入test2,注意这里是大G。

    gpasswd -a test test2 将用户test加入到test2

    gpasswd -d test test2 将用户test从test2中移出

    3,删除用户

    userdel test

    将test用户删除

    4,查看用户

    a),查看当前登录用户

    [root@krlcgcms01 ~]# w

    [root@krlcgcms01 ~]# who

    b),查看自己的用户

    [root@krlcgcms01 ~]# whoami

    c),查看单个用户信息

    [root@krlcgcms01 ~]# finger apacheuser

    [root@krlcgcms01 ~]# id apacheuser

    d),查看用户登录记录

    [root@krlcgcms01 ~]# last 查看登录成功的用户记录

    [root@krlcgcms01 ~]# lastb 查看登录不成功的用户记录

    e),查看所有用户

    [root@krlcgcms01 ~]# cut -d : -f 1 /etc/passwd

    [root@krlcgcms01 ~]# cat /etc/passwd |awk -F : ‘{print $1}’

    whois
    功能说明:查找并显示用户信息。
    语  法:whois [帐号名称]
    补充说明:whois指令会去查找并显示指定帐号的用户相关信息,因为它是到Network Solutions 的WHOIS数据库去查找,所以该帐号名称必须在上面注册方能寻获,且名称没有大小写的差别。
    ---------------------------------------------------------
    whoami

    功能说明:先似乎用户名称。
    语  法:whoami [--help][--version]
    补充说明:显示自身的用户名称,本指令相当于执行"id -un"指令。
    参  数:
    --help  在线帮助。
    --version  显示版本信息。
    ---------------------------------------------------

    who

    功能说明:显示目前登入系统的用户信息。
    语  法:who [-Himqsw][--help][--version][am i][记录文件]
    补充说明:执行这项指令可得知目前有那些用户登入系统,单独执行who指令会列出登入帐号,使用的    终端机,登入时间以及从何处登入或正在使用哪个X显示器。
    参  数:
    -H或--heading  显示各栏位的标题信息列。
    -i或-u或--idle  显示闲置时间,若该用户在前一分钟之内有进行任何动作,将标示成"."号,如果该用户已超过24小时没有任何动作,则标示出"old"字符串。
    -m  此参数的效果和指定"am i"字符串相同。
    -q或--count  只显示登入系统的帐号名称和总人数。
    -s  此参数将忽略不予处理,仅负责解决who指令其他版本的兼容性问题。
    -w或-T或--mesg或--message或--writable  显示用户的信息状态栏。
    --help  在线帮助。
    --version  显示版本信息。

    ----------------------------------------------------
    w

    功能说明:显示目前登入系统的用户信息。
    语  法:w [-fhlsuV][用户名称]
    补充说明:执行这项指令可得知目前登入系统的用户有那些人,以及他们正在执行的程序。单独执行w
    指令会显示所有的用户,您也可指定用户名称,仅显示某位用户的相关信息。
    参  数:
    -f  开启或关闭显示用户从何处登入系统。
    -h  不显示各栏位的标题信息列。
    -l  使用详细格式列表,此为预设值。
    -s  使用简洁格式列表,不显示用户登入时间,终端机阶段作业和程序所耗费的CPU时间。
    -u  忽略执行程序的名称,以及该程序耗费CPU时间的信息。
    -V  显示版本信息。
    -----------------------------------------------------

    finger命令

    finger命令的功能是查询用户的信息,通常会显示系统中某个用户用户名、主目录、停滞时间、登录时间、登录shell等信息。如果要查询远程机上的用户信息,需要在用户名后面接“@主机名”,采用[用户名@主机名]的格式,不过要查询的网络主机需要运行finger守护进程。

    该命令的一般格式为:
    finger [选项] [使用者] [用户@主机]
    命令中各选项的含义如下:
    -s 显示用户的注册名、实际姓名、终端名称、写状态、停滞时间、登录时间等信息。
    -l 除了用-s选项显示的信息外,还显示用户主目录、登录shell、邮件状态等信息,以及用户主目录下的.plan、.project和.forward文件的内容。
    -p 除了不显示.plan文件和.project文件以外,与-l选项相同。 
    [例]在本地机上使用finger命令。
    $ finger xxq
    Login: xxq Name:
    Directory: /home/xxq Shell: /bin/bash
    Last login Thu Jan 1 21:43 (CST) on tty1
    No mail.
    No Plan. 
    $ finger
    Login Name Tty Idle Login Time Office Office Phone
    root root *1 28 Nov 25 09:17
    ……

    ------------------------------------------------------------------

    /etc/group文件包含所有
    /etc/shadow和/etc/passwd系统存在的所有用户


    修改当前用户所属的方法

    usermod 或者可以直接修改 /etc/paaawd文件即可

    ----------------------------------------------------------------

    vlock(virtual console lock)
    功能说明:锁住虚拟终端。
    语  法:vlock [-achv]
    补充说明:执行vlock指令可锁住虚拟终端,避免他人使用。
    参  数:
    -a或--all  锁住所有的终端阶段作业,如果您在全屏幕的终端中使用本参数,则会将用键盘
    切换终端机的功能一并关闭。
    -c或--current  锁住目前的终端阶段作业,此为预设值。
    -h或--help  在线帮助。
    -v或--version  显示版本信息。
    --------------------------------------------------------
    usermod

    功能说明:修改用户帐号。
    语  法:usermod [-LU][-c <备注>][-d <登入目录>][-e <有效期限>][-f <缓冲天数>][-g <群>][-G <群>][-l <帐号名称>][-s ][-u ][用户帐号]
    补充说明:usermod可用来修改用户帐号的各项设定。
    参  数:
    -c<备注>  修改用户帐号的备注文字。
    -d登入目录>  修改用户登入时的目录。
    -e<有效期限>  修改帐号的有效期限。
    -f<缓冲天数>  修改在密码过期后多少天即关闭该帐号。
    -g<群>  修改用户所属的群
    -G<群>  修改用户所属的附加群
    -l<帐号名称>  修改用户帐号名称。
    -L  锁定用户密码,使密码无效。
    -s  修改用户登入后所使用的shell。
    -u  修改用户ID。
    -U  解除密码锁定。
    -------------------------------------------------------
    userdel
    功能说明:删除用户帐号。
    语  法:userdel [-r][用户帐号]
    补充说明:userdel可删除用户帐号与相关的文件。若不加参数,则仅删除用户帐号,而不删除相关文件。
    参  数:
    -f  删除用户登入目录以及目录中所有文件。
    ----------------------------------------------------------

    userconf

    功能说明:用户帐号设置程序。
    语  法:userconf [--addgroup <群>][--adduser <用户ID><群><用户名称>][--delgroup <群>][--deluser <用户ID>][--help]
    补充说明:userconf实际上为linuxconf的符号连接,提供图形界面的操作方式,供管理员建立与管理各类帐号。若不加任何参数,即进入图形界面。
    参  数:
    --addgroup<群>  新增群
    --adduser<用户ID><群><用户名称>  新增用户帐号。
    --delgroup<群>  删除群
    --deluser<用户ID>  删除用户帐号。
    --help  显示帮助。

    ------------------------------------------------------

    useradd

    功能说明:建立用户帐号。
    语  法:useradd [-mMnr][-c <备注>][-d <登入目录>][-e <有效期限>][-f <缓冲天数>][-g <群>][-G <群>][-s ][-u ][用户帐号] 或 useradd -D [-b][-e <有效期限>][-f <缓冲天数>][-g <群>][-G <群>][-s ]

    补充说明:useradd可用来建立用户帐号。帐号建好之后,再用passwd设定帐号的密码.而可用userdel删除帐号。使用useradd指令所建立的帐号,实际上是保存在/etc/passwd文本文件中。

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

    who 看当前登陆用户信息
    cat /etc/passwd 看所有系统用户信息

    查看linux下用户组是哪个命令!
    察看 /etc/group文件
    用cat /etc/passwd |cut -f 1 -d :


    1、Linux里查看所有用户
     
      linux里,并没有像windows的net user,net localgroup这些方便的命令来管理用户。
     
      Xwindows界面的就不说了。
     
      (1)在终端里。其实只需要查看 /etc/passwd文件就行了。
     
      (2)看第三个参数:500以上的,就是后面建的用户了。其它则为系统的用户。
     
      或者用cat /etc/passwd |cut -f 1 -d :
     
      2、用户管理命令
     
      useradd 注:添加用户
     
      adduser 注:添加用户
     
      passwd 注:为用户设置密码
     
      usermod 注:修改用户命令,可以通过usermod 来修改登录名、用户的家目录等等;
     
      pwcov 注:同步用户从/etc/passwd 到/etc/shadow
     
      pwck 注:pwck是校验用户配置文件/etc/passwd 和/etc/shadow 文件内容是否合法或完整;
     
      pwunconv 注:是pwcov 的立逆向操作,是从/etc/shadow和 /etc/passwd 创建/etc/passwd ,然后会删除 /etc/shadow 文件;
     
      finger 注:查看用户信息工具
     
      id 注:查看用户的UID、GID及所归属的用户组
     
      chfn 注:更改用户信息工具
     
      su 注:用户切换工具
     
      sudo 注:sudo 是通过另一个用户来执行命令(execute a command as another user),su 是用来切换用户,然后通过切换到的用户来完成相应的任务,但sudo 能后面直接执行命令,比如sudo 不需要root 密码就可以执行root 赋与的执行只有root才能执行相应的命令;但得通过visudo 来编辑/etc/sudoers来实现;
     
      visudo 注:visodo 是编辑 /etc/sudoers 的命令;也可以不用这个命令,直接用vi 来编辑 /etc/sudoers 的效果是一样的;
     
      sudoedit 注:和sudo 功能差不多;
     
      3、管理用户组(group)的工具或命令;
     
      groupadd 注:添加用户组;
     
      groupdel 注:删除用户组;
     
      groupmod 注:修改用户组信息
     
      groups 注:显示用户所属的用户组
     
      grpck
     
      grpconv 注:通过/etc/group和/etc/gshadow 的文件内容来同步或创建/etc/gshadow ,如果/etc/gshadow 不存在则创建;
     
      grpunconv 注:通过/etc/group 和/etc/gshadow 文件内容来同步或创建/etc/group ,然后删除gshadow文件

     
     
    groups 查看当前登录用户内成员
    groups gliethttp 查看gliethttp用户所在的,以及内成员
    whoami 查看当前登录用户

    /etc/group文件包含所有
    /etc/shadow和/etc/passwd系统存在的所有用户


    1、/etc/group 解说;

    /etc/group 文件是用户的配置文件,内容包括用户用户,并且能显示出用户是归属哪个用户或哪几个用户,因为一个用户可以归属一个或多个不同的用户;同一用 户用户之间具有相似的特征。比如我们把某一用户加入到root用户,那么这个用户就可以浏览root用户家目录的文件,如果root用户把某个文件 的读写执行权限开放,root用户的所有用户都可以修改此文件,如果是可执行的文件(比如脚本),root用户用户也是可以执行的;

    用户的特性在系统管理中为系统管理员提供了极大的方便,但安全性也是值得关注的,如某个用户下有对系统管理有最重要的内容,最好让用户拥有独立的用户,或者是把用户下的文件的权限设置为完全私有;另外root用户一般不要轻易把普通用户加入进去,

    2、/etc/group 内容具体分析

    /etc/group 的内容包括用户(Group)、用户口令、GID及该用户所包含的用户(User),每个用户一条记录;格式如下:

    group_name:passwd:GID:user_list

    在/etc/group 中的每条记录分四个字段:

    第一字段:用户名称;

    第二字段:用户密码;

    第三字段:GID

    第四字段:用户列表,每个用户之间用,号分割;本字段可以为空;如果字段为空表示用户为GID的用户名;

  • 相关阅读:
    异步编程
    写代码写至最有面向对象味道
    GitHub上整理
    用CQRS+ES实现DDD
    前端开发
    让低版本的IE浏览器 强制渲染为IE8 或者 以上 浏览器模式
    NHibernate系列
    hadoop搭建开发环境及编写Hello World
    Linux date -s(转)
    即时编译和打包您的 Groovy 脚本(转)
  • 原文地址:https://www.cnblogs.com/mingforyou/p/4104914.html
Copyright © 2020-2023  润新知