马哥Linux第三周作业

正则表达式 用户和组管理

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

~]# who | cut -d” ” -f1 | uniq

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

~]# who | tail -1 | cut -d” ” -f1 | id

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

~]# cut -d: -f7 /etc/passwd | uniq -c | sort -n | tail -1

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

~]# sort -t: -k3 -n /etc/passwd | tail -10 | tr “a-z” “A-Z” > /tmp/maxusers.txt

5.取出当前主机的ip地址

~]# ifconfig eno16777728 | egrep -o “inet \<([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\>”

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

~]# ls /etc/*.conf | tr “a-z” “A-Z” > /tmp/etc.conf

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

~]# ll -d /var/* | wc -l

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

~]# sort -t: -k3 -n /etc/group | head -10 | cut -d: -f1

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

~]# cat fstab issue > /tmp/etc.test

10.总结描述用户和组管理命令的使用方法并完成以下练习

groupadd:创建一个新组
格式:groupadd [选项] GROUPNAME
-g GID:指定GID
-r:创建系统组
groupmod:修改组属性
格式:groupmod [选项] GROUPNAME
-g GID:修改GID
-n NEWNAME:修改组名
groupdel:删除用户组
格式:groupdel [选项] GROUPNAME

useradd:创建一个新用户或更新默认新用户信息
格式:
useradd [选项] 用户名
-u UID:指定UID
-g group:指定基本组,此组得事先存在
-c COMMENT:指定注释信息
-G GROUP1[,GROUP2,…[,GROUPN]]]:指定用户所属的附加组,多个组之间用逗号分隔
-d HOMEDIR:以指定作为用户家目录,通过复制/etc/skel并重命名实现的;指定的家目录路径如果事先存在,则不会为用户复制环境配置文件,最终家目录的父目录必须事先存在
-s SHELL:指定用户SHELL,可用的所有shell列表为/etc/shells
-r:创建系统用户
-M:不创建家目录
-p:设置密码
注意:创建用户时的诸多默认设定的配置文件为/etc/login.defs

useradd -D:显示创建用户的默认配置
useradd -D [选项]:修改默认选项值
修改的结果保存于/etc/default/useradd

usermod:修改用户属性
格式:usermod [选项] 用户名
-u UID:修改用户的UID
-g group:修改用户所属的基本组,此组得事先存在
-G GROUP1[,GROUP2,…[,GROUPN]]]:修改用户的附加组,原来的附加组会被覆盖
-a:将用户添加到附加组。只能和 -G 选项一起使用,-a在-G前
-c COMMENT:修改注释信息
-d HOMEDIR:修改用户的家目录,用户原有的文件不会被转移至新目录
-m:只能与-d一起使用,用于将原来的家目录移动为新的家目录
是将原有的家目录移动到新的路径下,新的家目录路劲不能事先存在
-l NEWNAME:修改用户名
-s SHELL:修改SHELL
-L:锁定用户的密码,即在文件/etc/shadow中用户原来的密码字符串前添加一个“!”
-U:解锁用户密码

userdel:删除用户
格式:userdel [选项] 用户名
-r:删除用户时一并删除其家目录

passwd:update user’s authentication tokens
格式:passwd [-k] [-l] [-u [-f]] [-d] [-e] [-n mindays] [-x maxdays] [-w warndays] [-i inactivedays] [-S] [–stdin] [username]
passwd:修改执行此命令的用户自己的密码
passwd USERNAME:修改指定用户的密码,但仅root有此权限
-l,-u:锁定和解锁用户
-d:删除用户密码
-e DATE:过期期限,日期
-i DAYS:非活动期限
-n DAYS:密码的最短使用期限
-x DAYS:密码的最长使用期限
-w DAYS:警告期限
–stdin:
echo “PASSWORD” | passwd –stdin USERNAME

gpasswd:设置组密码
组密码文件为/etc/gshadow
格式:gpasswd [选项] group
-a USERNAME:向组中添加用户,以此组为附加组
-d USERNAME:从组中移除用户

newgrp GROUP:临时切换指定的组为基本组,该组须为此用户的附加组,如果不是,此组必须有组密码,否则无法切换;exit切换回来
格式:newgrp [-] [group]
-:会模拟用户重新登录以实现重新初始化其工作环境

⑴创建组distro,其GID为2016

~]# groupadd -g 2016 distro

⑵创建用户mandriva,其ID号为1005,基本组为distro

~]# useradd -u 1005 -g distro mandriva

⑶创建用户mageia,其ID号为1100,家目录为/home/linux

~]# useradd -u 1100 -d /home/linux mageia

⑷给用户mageia添加密码,密码为mageedu

~]# echo “mageedu” | passwd –stdin mageia

⑸删除mandriva,但保留其家目录

~]# userdel mandriva

⑹创建用户slackware,其ID号为2002,基本组为distro,附加组为peguin

~]# groupadd peguin;useradd -u 2002 -g distro -G peguin slackware

⑺修改slackware的默认shell为/bin/tcsh

~]# usermod -s /bin/tcsh slackware

⑻为用户slackware新增附加组admins

方法一:~]# groupadd admins;usermod -a -G admins slackware

方法二:~]# groupadd admins;gpasswd -a slackware admins

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:/90667

发表评论

登录后才能评论

联系我们

400-080-6560

在线咨询:点击这里给我发消息

邮件:1823388528@qq.com

工作时间:周一至周五,9:30-18:30,节假日同时也值班

友情链接:万达直属QQ  万达注册  万达娱乐平台  万达招商QQ  万达主管QQ  万达娱乐  万达娱乐直属  万达招商  万达直属QQ  万达娱乐招商