03葵花宝典之linux用户

介绍了linux上有关用户和组的相关命令及配置文件

一、查看用户和组相关信息练习

1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。

who | cut -d' ' -f1 | uniq

2、取出最后登录到当前系统的用户的相关信息。

cat /etc/passwd | grep "^`who | tail -1 | cut -d' ' -f1`"

3、取出当前系统上被用户当作其默认shell的最多的那个shell。

 cat /etc/passwd | cut -d: -f7 | sort | uniq -c | sort | head -1 | grep -E -o "/.*"

说明:cut命令取出每个用户的shell后,使用sort排序,是将相同的shell放在一起,便于后面uniq使用。若不进行此次排序,uniq -c命令会显示相连接在一起的相同shell的次数,对于没有连接在一起的相同的shell,则会认为是两个不同shell。 用head命令取到最多的shell后,由于前面使用了uniq命令,使用最多的shell前有使用次数,且使用次数是以几个空格隔开的(根据使用的次数不同,空格数量也不同,故不能使用cut命令),所有使用了grep命令查找以/开头的串,得到了最终结果。

4、将/etc/passwd中的第三个字段数值最大的后10个用户的信息全部改为大写后保存至/tmp/maxusers.txt文件中。

sort -n -t: -k3 /etc/passwd | tail | tr [a-z] [A-Z] > /tmp/maxusers.txt

5、取出当前主机的IP地址,提示:对ifconfig命令的结果进行切分。

ifconfig | head -2 | tail -1 | grep -o [0-9].* | cut -d' ' -f1

6、列出/etc目录下所有以.conf结尾的文件的文件名,并将其名字转换为大写后保存至/tmp/etc.conf文件中。

ls -d /etc/*.conf | tr [a-z] [A-Z] > /tmp/etc.conf

7、显示/var目录下一级子目录或文件的总个数。

ls -lA /var | tail -n +2 | wc -l

8、取出/etc/group文件中第三个字段数值最小的10个组的名字。

sort -n -t: -k3 /etc/group | head | cut -d: -f1

9、将/etc/fstab和/etc/issue文件的内容合并为同一个内容后保存至/tmp/etc.test文件中。

cat /etc/{fstab,issue} > /tmp/etc.test

二、用户和组管理命令及练习

用户和组管理命令常用的有下面几个:useradd(adduser)、usermod、userdel、passwd、groupadd、groupmod、groupdel、gpasswd、chage、chsh、id、su、pwck、grpck等下面分别简单介绍

1、useradd(adduser)

adduser是useradd的一个软连接,在使用上完全一致,用法是 useradd [options] LOGIN,常用的选项有:

useradd

-u 指定用户的UID,其中,系统用户UID在centos7上从1-999,在centos6以下为1-500。普通用户可以的UID从系统用户默认最大UID开始,如果不指定,从/etc/passwd中,以系统用户或普通用户最大UID值+1为默认UID

-g 后面可跟组名或组id 指定用户的基本组id

-G 指定用户的附加组

-d 指定用户的家目录,默认在/home/USERNAME

-s 指定用户的默认shell

-r 指定创建的是一个系统用户

-M 不创建用户家目录,即使使用了-d选项指定了用户的家目录路径

-c comment /etc/passwd中,每个用户的第五字段,用户注释

2、usermod

修改用户的相关属性,usermod [options] LOGIN

-c comment

-G 修改附加组

-aG 追加用户附加组

-d HOMEDIR -m 重新指定用户的家目录,并将以前家目录中的内容拷贝至新的家目录中

-L 锁定用户

-U 解锁用户

3、userdel

删除用户,userdel [options] LOGIN,默认不删除用户的家目录

-f 强制删除,即使用户正在登录系统

-r 删除用户的家目录

4、passwd

创建或修改用户密码。root用户可创建或修改所有用户的密码,而普通用户只能创建或修改自己的密码

–stdin 从标准输入读取字符串作为密码,一般使用echo “passwords” | passwd –stdin USERNAME

5、groupadd

创建组 groupadd [options] group

-g 指定组的组id,默认为/etc/group文件中系统组或用户组组id最大值+1

-r 创建系统组

6、groupdel

删除已有组 groupadd [options] group

7、groupmod

修改组的相关属性

-g 修改GID

8、gpasswd

组密码。当一个用户需要加入一个组时,如果这个组没有组密码,用户就可以直接加入,如果有组密码,则在加入时需要向系统提供该组密码,才能加入。该机制是为了保护组用户的内容。

9、chage

修改用户密码的相关时间信息

在/etc/shadowd中,每一行共有8个字段,从第三个字段开始,其含义为:

-d 3:最近一次密码修改时间(自1970年1月1日起止最近一次修改密码所经过的天数) -m 4:密码不可被修改时间(自最近一次密码修改之日起,几天内密码不能被在次修改) -M 5:密码使用期限(从最近一次修改密码起,密码可以使用的天数) -W 6:密码警告天数(以密码可以使用的最后一天起,即1970年1月1日起到最经一次修改密码天数加上密码使用期限至之日,前天几天,开始提示用户修改密码) -I -7:密码失效天数。到密码使用期限后,在失效天数内,用户登录系统时,强制用户修改密码 -E 8:账户过期时间。自1970年1月1日起止,到帐户过期时间后,该帐户将永远不能被使用

10、chsh

更改用户默认shell

11、id

显示用户的UID GID 附加组等信息 常用选项是 -u -g -G

12、su

切换用户

su – 切换用户时,是登录式切换,将读取要切换用户的用户配置

su 非登录式切换,不读取用户的用户配置

13、pwck

检查/etc/passwd和/etc/shadow文件的完整性和语法正确性

14、grpck

检查/etc/group和/etc/gshadow文件的完整性和语法正确性

用户和组管理类命令的使用方法并完成以下练习:

(1)、创建组distro,其GID为2016;

   groupadd -g 2016 distro

(2)、创建用户mandriva, 其ID号为1005;基本组为distro;

   useradd -u 1005 -g distro mandriva

(3)、创建用户mageia,其ID号为1100,家目录为/home/linux;

   useradd -u 1100 -d /home/linux mageia

(4)、给用户mageia添加密码,密码为mageedu;

   echo "mageedu" | passwd --stdin mageia

(5)、删除mandriva,但保留其家目录;

   userdel mandriva

(6)、创建用户slackware,其ID号为2002,基本组为distro,附加组peguin;

   useradd -u 2002 -g distro -G peguin slackware

(7)、修改slackware的默认shell为/bin/tcsh;

   usermod -s /bin/tcsh slackware

(8)、为用户slackware新增附加组admins;

   groupadd admins
   usermod -aG admins slackware

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/92474

(1)
koalakoala
上一篇 2018-03-15 17:48
下一篇 2018-03-16

相关推荐

  • Linux的文本处理工具及grep正则表达式的使用

    文本处理工具及grep正则表达式的使用 本章节学习的内容: 1、各种文本工具来查看、分析、统计文本文件 2、grep正则表达式 3、扩展正则表达式 一、抽取文本的工具: 1、按文件内容:less和cat 2、按文件截取:head和tail 3、按列抽取:cut 4、按关键字抽取:grep 二、文件查看命令:cat, tac,rev 1、命令cat: (1)文…

    Linux干货 2016-08-05
  • wed服务基础·httpd基础配置详解

    一、 Web Service基础: service:计算机后台提供的功能或计算机可以提供的某一种功能 Web Service本质:通过网络调用其它网站的资源 根据来源的不同,分为两种服务: 本地服务:使用同一台机器提供的服务,不需要网络 网络服务:使用另一台机器提供的服务,需要网络   IANA互联网地址授权机构(Internet Assigned…

    2017-06-09
  • 网络管理

                 网络管理 一、 OSI七层模型   OSI七层模型结构如下            OSI七层模式基本只是用于我们学习时候使用,因为其将每层协议定义的太规范,导致缺乏灵活性,所以现实中仍然以tcp/ip四层模型为主,OSI七层模型从下至上依次为:      1、 物理层( physical layer)   物理层是通过网络介质(如网…

    Linux干货 2016-09-06
  • 马哥教育网络班22期+第5周课程练习

    1、显示当前系统上root、fedora或user1用户的默认shell; [root@localhost ~]# awk -F: '{print $1,$7}' /etc/passwd| egrep "^\<(root|fedora|user…

    Linux干货 2016-09-15
  • Linux上文本处理三剑客sed

    Sed是一种在线编辑器,行编辑器,一次处理一行内容,在处理时,把当前处理的行存储在临时缓冲区当中,该缓冲区称为“模式空间”,接着用sed命令处理缓冲区中的内容,处理完毕后,把缓冲区的内容送到标准输出:然后紧接着去处理下一行,重复完成相同的操作,直至文件末尾;sed处理的整个过程中,对象文件中的内容并没有发生改变,除非使用重定向来存储处理后的结果。sed主要用…

    Linux干货 2016-08-09
  • Linux文件的权限与解析

    一,文件的基本权限: 通常,你使用ls -l 命令,就会看到这样的行:   让我们解析一下这些字段代表的意思: -rw-r–r–. 1 root root 1018 Nov 6 2016 usb_modeswitch.conf 文件类型权限  硬链接数 文件所有者 文件所属组 文件容量  文件最后被修改时…

    2017-07-30