N28-第三周博客作业

1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。
2、取出最后登录到当前系统的用户的相关信息。
3、取出当前系统上被用户当作其默认shell的最多的那个shell。
4、将/etc/passwd中的第三个字段数值最大的后10个用户的信息全部改为大写后保存至/tmp/maxusers.txt文件中。
5、取出当前主机的IP地址,提示:对ifconfig命令的结果进行切分。
6、列出/etc目录下所有以.conf结尾的文件的文件名,并将其名字转换为大写后保存至/tmp/etc.conf文件中。
7、显示/var目录下一级子目录或文件的总个数。
8、取出/etc/group文件中第三个字段数值最小的10个组的名字。
9、将/etc/fstab和/etc/issue文件的内容合并为同一个内容后保存至/tmp/etc.test文件中。
10、请总结描述用户和组管理类命令的使用方法并完成以下练习:
(1)、创建组distro,其GID为2016;
(2)、创建用户mandriva, 其ID号为1005;基本组为distro;
(3)、创建用户mageia,其ID号为1100,家目录为/home/linux;
(4)、给用户mageia添加密码,密码为mageedu;
(5)、删除mandriva,但保留其家目录;
(6)、创建用户slackware,其ID号为2002,基本组为distro,附加组peguin;
(7)、修改slackware的默认shell为/bin/tcsh;
(8)、为用户slackware新增附加组admins;

1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。
[root@magedu ~]# who | cut -d’ ‘ -f1 | sort -u
root

2、取出最后登录到当前系统的用户的相关信息。
[root@magedu ~]# who | tail -1
root pts/3 2017-12-18 09:12 (192.168.10.1)

3、取出当前系统上被用户当作其默认shell的最多的那个shell。
[root@magedu ~]# cut -d’:’ -f7 /etc/passwd | uniq -c | sort -n | tail -1
32 /sbin/nologin

4、将/etc/passwd中的第三个字段数值最大的后10个用户的信息全部改为大写后保存至/tmp/maxusers.txt文件中。
[root@magedu tmp]# cat passwd |sort -n -k 3 -t:| tail -n 10 | tr ‘a-z’ ‘A-Z’ >> ./maxuser.txt

5、取出当前主机的IP地址,提示:对ifconfig命令的结果进行切分。
[root@magedu tmp]# ifconfig | grep “inet ” | awk ‘{print $2}’
10.0.2.4
192.168.10.3
127.0.0.1
192.168.122.1

6、列出/etc目录下所有以.conf结尾的文件的文件名,并将其名字转换为大写后保存至/tmp/etc.conf文件中。
[root@magedu ~]# ls /etc/ | grep -E “.conf$” |tr ‘a-z’ ‘A-Z’> /tmp/etc.conf

7、显示/var目录下一级子目录或文件的总个数。
[root@magedu ~]# ls -l /var/ | grep “^d” | wc -l
19

8、取出/etc/group文件中第三个字段数值最小的10个组的名字。
[root@magedu ~]# sort -t”:” -k3 /etc/group | head -10 | awk -F ‘:’ ‘{print $1}’
root
bin
wheel
users
yinqiang
hadoop
qemu
cdrom
usbmuxd
mail

9、将/etc/fstab和/etc/issue文件的内容合并为同一个内容后保存至/tmp/etc.test文件中。
[root@magedu tmp]# cat ./{fstab,issue} > ./etc.test

10、请总结描述用户和组管理类命令的使用方法并完成以下练习:
命令包括useradd、userdel、usemod、chfn、chsh、chage、passwd、groupadd、groupmod、groupdel、gpasswd、su

创建用户
useradd等同于adduser,
命令格式:
useradd [options] UserName
命令参数:
-u UID:指定用户的UID,如果不指定的话,就在最后一个用户的基础上+1,useradd创建的第一个账号的UID为500;
-g GID:指定用户的GID,即用户的基本组ID,但是GID要实现存在才可以,也可以直接使用组名
-G GID:指定用户的额外组,当时GID要实现存在才可以,也可以直接使用组名
-d 目录:指定用户的家目录,这个家目录最好是不要存在的文件夹,如果目录已经存在,会出现shell环境变量错误
-c 备注:为用户添加备注信息
-s shell:指定用户的默认shell,应该指定使用/etc/shells文件中出现的shell类型
-m:创建用户时,强制给用户创建家目录,默认情况下会在/home目录下创建一个跟用户名同名的文件夹来作为用户的家目录
-M:创建用户时,不创建用户家目录

删除用户
userdel:用于删除用户,默认情况下会保留用户的家目录,如果想连家目录一起删除的话,应该使用-r选项
命令格式:
userdel [options] UserName

修改用户的属性信息
chsh:修改用户的默认shell
chfn:修改用户的备注信息,会依次输入用户的名称、办公地址、办公电话、家庭电话

修改用户的属性信息
usermod:
命令格式
usermod [options] UserName
命令参数
-a :追加
-u UID:修改用户的UID
-g GID:修改用户基本组的GID,也可以直接使用基本组的组名
-G GID:修改用户的额外组的GID,也可以直接使用基本组的组名,默认状态下会覆盖原有的附加组,如果想要添加附加组,请在该选项前加-a选项
-c string:修改用户的备注信息
-d 目录:默认不会迁移用户的家目录,如果要迁移,请以-m选项一起使用
-s shell:修改用户的默认shell ,应该指定使用/etc/shells文件中出现的shell类型
-l 名称:修改用户的登陆名称,但是不修改用的UID,GID
-e 时间:修改用户的过期时间
-f 时间:修改用户的非活动时间。
-L 用户名:锁定用户账号
-U 用户名:将锁定的用户账号进行解锁

chage:修改用户的日期属性
-E:距离1970-1-1号的时间天数,过了这个时间,账号不可访问
-I: 设置非活动期限
-m:修改密码最小使用时间
-M:修改密码最长使用时间
-W:修改密码警告时间

查看用户的相关信息
id 查看用户的id号
命令格式:
id [options] UserName
命令参数:
-n:只显示名称
-u:只显示用户的UID
-g:显示用户的基本在GID
-G:显示用户的额外组的GID

修改用户密码

密码安全性策略:

1、足够复杂

2、足够长、尽量交叉使用数字、大写字母、小写字母和特殊字符

3、尽量避免使用易猜测的密码:

4、定期更换

passwd 修改用户的密码

命令格式:
passwd [options] 用户名

说明:普通用户只能修改自身的密码,管理员可以设定自身和所有普通用户的密码,在设定其他用户密码是直接使用passwd 用户名即可
命令参数:
-l:锁定用户
-u:解锁用户
-n:设定用户密码的最少使用时间
-x:设定用户密码的最长使用时间
-w:设定用户密码的警告时间
-i:设定用户密码的非活动时间
/etc/passwd中的格式
用户名:密码占位符:UID:GID(基本组ID):用户备注信息(多个以,隔开):家目录:默认shell
/etc/shadow中的格式
用户名:密码:最近的一次密码修改时间距离1970-1-1的时间:最短使用期限:最长使用期限:警告时间:非活动时间(登陆就要修改密码):账号的过期期限:预留段

组的管理:
用户组分为普通组和管理员组,在用户看来,组可以分为两类:基本组和额外组,额外组也叫附加组,组的管理和用户的管理基本类似。

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

[root@magedu tmp]# groupadd –gid 2016 distro

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

[root@magedu home]# useradd -u 1005 -g distro mandriva
[root@magedu home]#
[root@magedu home]#
[root@magedu home]# ls
hadoop mandriva yinqiang
[root@magedu home]# id mandriva
uid=1005(mandriva) gid=2016(distro) groups=2016(distro)

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

[root@magedu home]# useradd -u 1100 -d /home/linux mageia
[root@magedu home]# ls
hadoop linux mandriva yinqiang
[root@magedu home]# id mageia
uid=1100(mageia) gid=1100(mageia) groups=1100(mageia)
[root@magedu home]# cat /etc/passwd | grep mageia
mageia:x:1100:1100::/home/linux:/bin/bash

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

[root@magedu home]# passwd mageia
Changing password for user mageia.
New password:
BAD PASSWORD: The password is shorter than 8 characters
Retype new password:
passwd: all authentication tokens updated successfully.
[root@magedu home]#
[root@magedu ~]# ssh mageia@192.168.10.3

(5)、删除mandriva,但保留其家目录;
[root@magedu home]# userdel mandriva

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

[root@magedu ~]# groupadd peguin
[root@magedu ~]# useradd slackware -u 2002 -g distro
[root@magedu ~]# usermod -aG peguin

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

[root@magedu ~]# usermod -s /bin/tcsh slackware

(8)、为用户slackware新增附加组admins;”
[root@magedu ~]# groupadd admins
[root@magedu ~]# usermod -aG admins slackware
[root@magedu ~]# id slackware
uid=2002(slackware) gid=2016(distro) groups=2016(distro),2017(peguin),2018(admins)

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

(0)
王银强王银强
上一篇 2017-12-19
下一篇 2017-12-19

相关推荐

  • lvs的四种调度类型和调度算法介绍

    lvs是linux内核级的负载均衡解决方案,作为netfilter的补充套件,其工作在INPUT hook上。 相比nginx等负载均衡解决方案的差异如下: lvs工作于内核空间,不受用户空间套接字和端口数量的限制,而且所有调度工作在内核空间完成,效率更高; nginx为七层负载均衡器,虽然通过stream模块也可以做到四层负载均衡,但是受到套接字数量限制,…

    Linux干货 2017-06-25
  • LVS中nat和dr的原理与用法简述

      LVS中nat和dr的原理与用法简述 lvs-nat:   多目标IP的DNAT,通过将请求报文中的目标地址和目标端口修改为某挑出的RS的RIP和PORT实现转发; (1)RIP和DIP必须在同一个IP网络,且应该使用私网地址;RS的网关要指向DIP; (2)请求报文和响应报文都必须经由Director转发;Director…

    Linux干货 2016-10-30
  • 详解Linux下用户和组的配置文件

    本文将介绍Linux下用户和组的概念及相关配置文件,通过本文,能更好的认识/etc/pssswd ,/etc/group,以及UID、GID的概念,最后将通过修改用户配置文件来实现用户和组的管理工作,对Linux的多任务、多用户有一个更清楚的认识。 一、用户(USER) 在LInux上用户的管理工作是通过修改相关的配置文件来实现的,在日常的工作中主要包含对用…

    Linux干货 2016-10-23
  • Linux基础命令

    Linux基础命令 大家都知道Linux是由许许多多的小程序组成的,而这些小程序是怎么启动的呢?在Linux中这些小程序大多是靠命令来启动运行的 命令(COMMAND):请求内核将某个二进制程序运行为一个进程的过程就是命令 程序由命令运行之后就会形成一个有生命周期的‘进程’,一个静态的二进制程序运行为一个动态的进程是由命令发起的. 在Linux中命令可分为两…

    Linux干货 2016-11-02
  • N22-妙手-第五周博客作业

    1、显示/boot/grub/grub.conf中以至少一个空白字符开头的行; [root@localhost grub]# grep "^[[:space:]]\+" /boot/grub/grub.conf 2、显示/etc/rc.d/rc.sysinit文件中以#开头,后面跟至少一个空白字符,…

    Linux干货 2016-09-19
  • 用户和组的四大配置文件简介

    一. 用户的由来 linux系统拥有的就是资源,最重要的事就是对资源的分配,资源分给谁?在linux上资源的访问是对用户赋予不同的权限实现,也就是说能访问资源的单位是用户。那用户在获取资源之前要实现证明自己是本用户,这个过程称为认证,他通过密码和用户名实现。在用户登录时会将用户输入的用户名和密码进行校验,校验过程就是将输入的用户名和密码与linux系统上记录…

    Linux干货 2016-10-24

评论列表(1条)

  • 马哥教育
    马哥教育 2018-01-02 21:36

    linux用户的创建和管理很简单,相反用户的组管理是值得深入了解了,这个在多文件权限管理的场景中非常重要。