1、 列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。
[root@ada-dog ~]# who | cut -d ” ” -f1 |uniq -c
2 root
1 ada
2、 取出最后登录到当前系统的用户的相关信息。
[root@ada-dog ~]# id $(last | head -1 | cut -d ” ” -f1)
uid=1000(ada) gid=1000(ada) groups=1000(ada)
3、取出当前系统上被用户当作其默认shell的最多的那个shell。
[root@ada-dog ~]# cut -d: -f7 /etc/passwd | uniq -c | sort -n | tail -1
32 /sbin/nologin
4、将/etc/passwd中的第三个字段数值最大的后10个用户的信息全部改为大写后保存至/tmp/maxusers.txt文件中。
[root@ada-dog ~]# sort -t: -k3 -n /etc/passwd |tail -10 | tr ‘a-z’ ‘A-Z’
DOCKER:X:1001:1002::/HOME/DOCKER:/BIN/BASH
OPENSTACK:X:1005:1005::/HOME/OPENSTACK:/BIN/BASH
MOGILEFS:X:1006:1006:MOGILFS DFS:/HOME/MOGILEFS:/BIN/BASH
MOOSEFS:X:1007:1007::/TMP/MOOSEFS:/BIN/BASH
MARIADB:X:1009:5002::/HOME/MARIADB:/SBIN/NOLOGIN
GENTOO:X:1010:1010::/USERS/GENTOO:/BIN/BASH
USER3:X:3000:3000::/HOME/USER3:/BIN/BASH
USER1:X:3001:3001::/HOME/USER1:/BIN/BASH
CENTOS:X:3002:3002::/HOME/CENTOS:/BIN/BASH
NFSNOBODY:X:65534:65534:ANONYMOUS NFS USER:/VAR/LIB/NFS:/SBIN/NOLOGIN
5、取出当前主机的IP地址,提示:对ifconfig命令的结果进行切分。
[root@ada-dog ~]# ifconfig | cut -d” ” -f10 | head -2
192.168.64.128
6、列出/etc目录下所有以.conf结尾的文件的文件名,并将其名字转换为大写后保存至/tmp/etc.conf文件中。
[root@ada-dog tmp]# ls /etc/*.conf | tr ‘a-z’ ‘A-Z’ > /tmp/etc.conf
7、显示/var目录下一级子目录或文件的总个数。
[root@ada-dog tmp]# ls -l /var/ | wc -l
23
8、取出/etc/group文件中第三个字段数值最小的10个组的名字。
[root@ada-dog tmp]# sort -t: -k3 -n /etc/group | head -10 | cut -d: -f1
root
bin
daemon
sys
adm
tty
disk
lp
mem
kmem
9、将/etc/fstab和/etc/issue文件的内容合并为同一个内容后保存至/tmp/etc.test文件中。
[root@ada-dog tmp]# cat /etc/fstab /etc/issue > /tmp/etc.test
10、请总结描述用户和组管理类命令的使用方法并完成以下练习:
useradd
useradd [options] username
options:
-c:描述信息,comment;
-d:指定家目录路径;
-e:账户过期日期;
-g:指定组id;
-G:指定特定或附加组;
-m:创建新建用户家目录;
-M:不创建新建用户家目录;
-p:创建用户密码;
-s:指定用户使用的shell类型;
-u:指定用户属主ID;
usermod
usermod [options] username
options:
-a:追加属主用户附加组常和-G一起用;
-c:用户描述信息,comment;
-d:修改用户家目录路径;
-g:修改组id;
-G:修改特定或附加组;
-L:锁定用户;
-m:移动用户家目录;
-p:修改用户密码;
-s:修改用户使用的shell类型;
-u:修改用户属主ID;
userdel
userdel [options] username 删除用户
-f:强制删除用户,即使用户当前已登录;
-r:删除用户的同时,删除与用户相关的所有文件。
passwd
普通用户仅能修改自己的密码;超级用户可以修改任意账户的密码;也可以改变相关账户密码的有效期;
passwd [options] [LOGIN]
选项:
-a,–all
与-S搭配使用,显示所有用户状态
-d,–delete
删除用户密码
-e,–expire
使用户密码立即失效,强制用户下次登录时修改密码
-h,–help
显示帮助信息并退出
-i,–inactive INACTIVE
当账户失效INACTIVE天后,用户无法再使用该账户登录
-n,–mindays MIN_DAYS
密码两次修改的时间至少间隔MIN_DAYS天,若MIN_DAYS为0,则表示可在任意时刻进行修改
-S,–status
显示账户状态信息,共有7个字段,分别是登录名、L(P or NP)、上次修改时间、最小期限、最大期限、警告期、inactive period。这些ages的单位都是天。
-w,–warndays WARN_DAYS
密码失效前WARN_DAYS天发出警告
-x,–maxdays MAX_DAYS
设置密码最长的有效期
groupadd 用于创建一个新的工作组,新工作组的信息将被添加到系统文件中。
groupadd [options] group-name
选项
-g:指定新建工作组的id;-r:创建系统工作组,系统工作组的组ID小于500;-K:覆盖配置文件“/ect/login.defs”;-o:允许添加组ID号不唯一的工作组。
groupmod 更改群组识别码或名称。需要更改群组的识别码或名称时,可用groupmod指令来完成这项工作。
groupmod [options] group-name
选项
-g<群组识别码>:设置欲使用的群组识别码;
-o:重复使用群组识别码;
-n<新群组名称>:设置欲使用的群组名称。
groupdel 用于删除指定的工作组,本命令要修改的系统文件包括/ect/group和/ect/gshadow。若该群组中仍包括某些用户,则必须先删除这些用户后,方能删除群组。
groupdel group-name
(1)、创建组distro,其GID为2016;
[root@ada-dog tmp]# groupadd -g 2016 distro
(2)、创建用户mandriva, 其ID号为1005;基本组为distro;
[root@ada-dog ~]# useradd -u 1005 -G distro mandriva
(3)、创建用户mageia,其ID号为1100,家目录为/home/linux;
[root@ada-dog ~]# useradd -u 1100 -d /home/linux mageia
(4)、给用户mageia添加密码,密码为mageedu;
[root@ada-dog ~]# echo ‘mageedu’ | passwd –stdin mageia
(5)、删除mandriva,但保留其家目录;
[root@ada-dog tmp]# userdel mandriva
(6)、创建用户slackware,其ID号为2002,基本组为distro,附加组peguin;
[root@ada-dog ~]# groupadd peguin
[root@ada-dog ~]# useradd -u 2002 -g distro -G peguin slackware
[root@ada-dog ~]# id slackware
uid=2002(slackware) gid=2016(distro) groups=2016(distro),5001(peguin)
(7)、修改slackware的默认shell为/bin/tcsh;
[root@ada-dog ~]# usermod -s /bin/tcsh slackware
(8)、为用户slackware新增附加组admins;
[root@ada-dog ~]# usermod -G admins slackware
[root@ada-dog ~]# id slackware
uid=2002(slackware) gid=2016(distro) groups=2016(distro),5003(admins)
本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/102426