Linux用户和组管理类命令

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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 -n1
技术分享图片


4、 将/etc/passwd中的第三个字段数值最大的后10个用户的信息全部改为大写后保存至/tmp/maxusers.txt文件中。
命令:sort -t: -k3 -n /etc/passwd | tail | tr ‘a-z‘ ‘A-Z‘ > /tmp/maxuser.txt
技术分享图片


5、取出当前主机的IP地址,提示:对ifconfig命令的结果进行切分。
命令:ifconfig | grep ‘[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}‘ |cut -d‘ ‘ -f10 |head -n1
技术分享图片


6、 列出/etc目录下所有以.conf结尾的文件的文件名,并将其名字转换为大写后保存至/tmp/etc.conf文件中。
命令:find /etc/ -name "*.conf" | tr ‘a-z‘ ‘A-Z‘ > /tmp/etc.conf
技术分享图片


7、 显示/var/目录下一级子目录或文件的总个数。
命令:ls -d /var/ | wc -l
技术分享图片


8、 取出/etc/group文件中第三个字段数值最小的10个组的名字。
命令:sort -t: -k3 -n /etc/group | cut -d: -f1 | head
技术分享图片


9、 将/etc/fstab和/etc/issue文件的内容合并为同一个内容后保存至/tmp/etc.test文件中。
命令:cat /etc/fstab /etc/issue > /tmp/etc.test
技术分享图片


10、请总结描述用户个组管理类命令的使用方法并完成一下练习:
用户管理命令:

useradd:创建用户
语法:useradd [选项] 登录名
选项:
-u, --uid UID:指定UID;
-g, --gid GROUP:指定基本组ID,此组得事先存在;
-G, --groups GROUP1[,GROUP2,...[,GROUPN]]]:指明用户所属的附加组,多个组之间用逗号分隔;
-c, --comment COMMENT:指明注释信息;
-d, --home HOME_DIR:以指定的路径为用户的家目录;通过复制/etc/skel此目录并重命名实现;指定的家目录路径如果事先存在,则不会为用户复制环境配置文件;
-s, --shell SHELL:指定用户的默认shell,可用的所有shell列表存储在/etc/shells文件中;
-r, --system:创建系统用户;

useradd -D:显示创建用户的默认配置;
useradd -D 选项: 修改默认选项的值;

注意:创建用户时的诸多默认设定配置文件为/etc/login.defs

usermod:修改用户属性
语法:usermod [选项] 登录
选项:
-u, --uid UID:修改用户的ID为此处指定的新UID;
-g, --gid GROUP:修改用户所属的基本组;
-G, --groups GROUP1[,GROUP2,...[,GROUPN]]]:修改用户所属的附加组;原来的附加组会被覆盖;
-a, --append:与-G一同使用,用于为用户追加新的附加组;
-c, --comment COMMENT:修改注释信息;
-d, --home HOME_DIR:修改用户的家目录;用户原有的文件不会被转移至新位置;
-m, --move-home:只能与-d选项一同使用,用于将原来的家目录移动为新的家目录;
-l, --login NEW_LOGIN:修改用户名;
-s, --shell SHELL:修改用户的默认shell;
-L, --lock:锁定用户密码;即在用户原来的密码字符串之前添加一个"!";
-U, --unlock:解锁用户的密码;

userdel:删除用户
语法:userdel [选项] 登录
选项:-r:删除用户时一并删除其家目录;

组管理命令:

groupadd:添加组
语法:groupadd [选项] group_name
选项:
-g GID:指定GID;默认是上一个组的GID+1;
-r: 创建系统组;

groupmod:修改组属性
语法:groupmod [选项] GROUP
选项:
-g GID:修改GID;
-n new_name:修改组名;

groupdel:删除组
语法:groupdel [选项] GROUP

(1)、创建组distro,其GID为2016;
命令:groupadd distro -g 2016
技术分享图片

(2)、创建用户mandriva,其ID号为1005,其本组为distro;
命令:useradd mandriva -u 1005 -g distro
技术分享图片

(3)、创建用户mageia,其ID号为1100,家目录为/home/linux;
命令:useradd mageia -u 1100 -s /home/linux
技术分享图片

(4)、给用户mandriva添加密码,密码为mageedu;
命令:echo "mageedu" | passwd --stdin mageia
技术分享图片

(5)、删除mandriva,但保留其家目录;
命令:userdel mandriva
技术分享图片

(6)、创建用户slackware,其ID号为2002,基本组为distro,附加组为peguin;
命令:useradd slackware -u 2002 -g distro -G peguin
技术分享图片

(7)、修改slackware的默认shell为/bin/tcsh;
命令:usermod -s /bin/tcsh slackware
技术分享图片

(8)、为用户slackware新增加附加组admins;
命令:usermod -a -G admins slackware
技术分享图片

以上是关于Linux用户和组管理类命令的主要内容,如果未能解决你的问题,请参考以下文章

Linux用户和组管理类命令

Linux 用户和组管理类命令的使用方法

linux系统 用户和组管理类命令的使用方法

linux系统 用户和组管理类命令的使用方法

Linux用户和组管理及其相关命令

Linux基础之用户和组管理