慢慢学(8.27第三周)

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

[root@cherryyao ~]# who|cut -d' ' -f1|sort -u
root

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

[root@cherryyao ~]# who|cut -d' ' -f1|tail -1|id
uid=0(root) gid=0(root) 组=0(root) 环境=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023

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

[root@cherryyao ~]# cut -d: -f7 /etc/passwd|sort -n|uniq -c|sort -n|tail -1
     17 /sbin/nologin

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

[root@cherryyao ~]# sort -t: -k3 -n /etc/passwd|tail|tr [a-z] [A-Z] >> /tmp/etc.conf
[root@cherryyao ~]# cat /tmp/etc.conf
CHERRYYJ:X:1010:1010::/HOME/CHERRYYJ:/BIN/BASH
USER5:X:1011:1011::/HOME/USER5:/BIN/BASH
BASH:X:1013:1013::/HOME/BASH:/BIN/BASH
TESTBASH:X:1014:1014::/HOME/TESTBASH:/BIN/BASH
BASHER:X:1015:1015::/HOME/BASHER:/BIN/BASH
NOLOGIN:X:1016:1016::/HOME/NOLOGIN:/SBIN/NOLOGIN
USERSH1:X:1017:1017::/HOME/USERSH1:/BIN/BASH
USERSH2:X:1018:1018::/HOME/USERSH2:/BIN/BASH
USERSH3:X:1019:1019::/HOME/USERSH3:/BIN/BASH
HADOOP:X:1020:1020::/HOME/HADOOP:/BIN/BASH

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

[root@cherryyao ~]# ifconfig|grep "inet "|cut -d' ' -f10|head -1
192.168.10.185

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

[root@cherryyao ~]# find /etc/*.conf|cut -d/ -f3|tr [a-z] [A-Z] >> /tmp/etc.conf

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

[root@cherryyao ~]# ls -l /var|wc -l
25

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

[root@cherryyao ~]# sort -t: -k3 -n /etc/group|cut -d: -f1|head
root
bin
daemon
sys
adm
tty
disk
lp
mem
kmem

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

[root@cherryyao ~]# cat /etc/{fstab,issue} >> /tmp/etc.test 
[root@cherryyao ~]# cat /tmp/etc.test 


#
# /etc/fstab
# Created by anaconda on Tue Aug 14 02:07:05 2018
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
UUID=de4de8b4-8bc8-4fdd-910c-93d21c8ebf3e /                       ext4    defaults        1 1
UUID=021aa58b-3e18-4bd3-b9b0-262993489c0b /boot                   ext4    defaults        1 2
UUID=46fef0ce-387c-4838-a84d-f3c9c9062e7c swap                    swap    defaults        0 0
\S
Kernel \r on an \m

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. groupadd命令:添加组
  • groupadd [options] group
    • -g GID:手动指定GID,默认是上一个组的GID+1
      • -r:创建系统组;
  • groupmod命令:修改组属性
    • groupmod [options] GROUP
      • -g GID: 修改GID
      • -n new_name:修改组名
  • groupdel命令:删除组
    • groupdel - delete a group
  1. useradd命令:创建用户
  • useradd [options] LOGIN
    • -u,--uid UID:指定uid
    • -g,--gid GROUP:指定基本组ID,此组得事先存在
    • -G, --groups GROUP1[,GROUP2,...[,GROUPN]]]:指明用户所属的附加组,多个组名之间用逗号隔开
    • -c,--comment :指明注释信息
    • -d, --home-dir HOME_DIR:以指定的路径为用户的家目录;通过复制/etc/skel此目录并重命名来实现的,指定的家目录路径如果事先存在,则不会为用户复制环境配置文件
    • -s, --shell SHELL:指定用户的默认shell,可用的所有shell列表存储在/etc/shells文件中
    • -r, --system:创建系统用户
      • 注意:创建用户时的诸多默认设置配置文件为/etc/login.defs
  • useradd -D:显示创建用户的默认配置
  • useradd -D 选项:修改默认选项的值
    • 修改的结果保存于/etc/default/useradd文件中
  1. usermod命令:修改用户属性
  • -u,--uid UID:修改用户的ID为此处指定的新UID
  • -g, --gid GROUP:修改用户所属的基本组
  • -G, --groups GROUP1[,GROUP2,...[,GROUPN]]]:修改用户所属的附加组,原来的附加组会被覆盖(如果不想被覆盖用-a)
  • -a, --append:与-G一起使用,用于为用户追加新的附加组
  • -c,--comment :修改注释信息
  • -d, --home-dir HOME_DIR:修改用户的家目录,用户原有的文件不会被转移至新位置(如果想转移到新位置用-m)
  • -m, --move-home:只能与-d选项一同使用,用于将原来的家目录移动为新的家目录
  • -l, --login NEW_LOGIN:修改用户名
  • -s, --shell SHELL:修改用户的默认shell为此处显示的shell
  • -L, --lock:锁定用户密码,即在用户原来的密码字符串之前添加一个 ”!“
  • -U, --unlock:解锁用户的密码
  1. userdel命令:删除用户
  • userdel [options] LOGIN
    • -r, --remove:删除用户时一并删除其家目录

[root@cherryyao ~]# groupadd -g 2016 distro

[root@cherryyao ~]# useradd -u 1005 -g 2016 mandriva

[root@cherryyao ~]# useradd -u 1100 -d /home/linux megeia

[root@cherryyao ~]# echo "mageedu"|passwd --stdin mageia

[root@cherryyao ~]# userdel -r megeia

[root@cherryyao ~]# useradd -u 1100 -d /home/linux mageia

[root@cherryyao ~]# echo "mageedu"|passwd --stdin mageia
更改用户 mageia 的密码 。
passwd:所有的身份验证令牌已经成功更新。

[root@cherryyao ~]# userdel mandriva

[root@cherryyao ~]# useradd -u 2002 -g distro -G peguin slackware

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

[root@cherryyao ~]# usermod -G admins slackware

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容