Linux Basics–part3

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

~]# who | cut -d” ” -f1 | sort -u

centos

ronny

root

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

centos

ronny

root

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

~]# who | tail -n 1

centos  pts/2        2017-07-27 23:35 (192.168.4.241)

~]# last -i | head  -n 1

centos  pts/2        192.168.4.241    Thu Jul 27 23:35  still logged in

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

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

18 /sbin/nologin

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

[root@ronny1 ~]# cat /etc/passwd |sort -t: -k 3 -n|tail |tr ‘a-z’ ‘A-Z’ > /tmp/maxusers.txt

[root@ronny1 ~]# cat /tmp/maxusers.txt

SYSTEMD-BUS-PROXY:X:999:997:SYSTEMD BUS PROXY:/:/SBIN/NOLOGIN

RONNY:X:1000:1000:RONNY:/HOME/RONNY:/BIN/BASH

RONNY1.1:X:1001:1001::/HOME/RONNY1.1:/BIN/BASH

GENTOO:X:4004:4004::/USERS/GENTOO:/BIN/BASH

FEDORA:X:4005:4005::/USERS/FEDORA:/BIN/BASH

WWW:X:4006:4006::/USERS/WWW:/BIN/BASH

CENTOS:X:4007:4007::/HOME/CENTOS:/BIN/BASH

USER1:X:4008:4008::/HOME/USER1:/BIN/BASH

NOLOGIN:X:4009:4009::/HOME/NOLOGIN:/SBIN/NOLOGIN

NFSNOBODY:X:65534:65534:ANONYMOUS NFS USER:/VAR/LIB/NFS:/SBIN/NOLOGIN

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

~]# ifconfig |grep -E “^[[:space:]]” |cut -d” ” -f10 | head -n 1

192.168.4.240

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

~]# touch /tmp/etc.conf

~]# ll -a /etc/ |grep -E “\.conf$” | tr ‘a-z’ ‘A-Z’| tee /tmp/etc.conf

~]# cat /tmp/etc.conf

-RW-R–R–.  1 ROOT ROOT      55 11月  5 2016 ASOUND.CONF

-RW-R–R–.  1 ROOT ROOT    13386 11月  6 2016 AUTOFS.CONF

-RW——-.  1 ROOT ROOT      232 11月  6 2016 AUTOFS_LDAP_AUTH.CONF

-RW-R–R–.  1 ROOT ROOT    21929 11月  6 2016 BRLTTY.CONF

-RW-R–R–.  1 ROOT ROOT      676 11月  6 2016 CGCONFIG.CONF

……

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

~]# ll -a /var/ | wc -l

26

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

~]# cat /etc/group| sort -t: -k3 -n |head -n 10

root:x:0:

bin:x:1:

daemon:x:2:

sys:x:3:

adm:x:4:

tty:x:5:

disk:x:6:

lp:x:7:

mem:x:8:

kmem:x:9:

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

[root@ronny1 ~]# vim /etc/fatab

hello world!!

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

~]# cat /tmp/etc.test

hello world!!

\S

Kernel \r on an \m

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

groupadd命令:添加组

groupadd [选项] group_name

-g GID:指定GID;默认是上一个组的GID+1;

-r: 创建系统组;

groupmod命令:修改组属性

groupmod [选项] GROUP

-g GID:修改GID;

-n new_name:修改组名;

groupdel命令:删除组

groupdel [选项] GROUP

useradd命令:创建用户

useradd [选项] 登录名

-u, –uid UID:指定UID;

-g, –gid GROUP:指定基本组ID,此组得事先存在;

-G, –groups GROUP1[,GROUP2,…[,GROUPN]]]:指明用户所属的附加组,多个组之间用逗号分隔;

-c, –comment COMMENT:指明注释信息;

-d, –home

-s, –shell SHELL:指定用户的默认shell,可用的所有shell列表存储在/etc/shells文件中;

-r, –system:创建系统用户;

useradd -D:显示创建用户的默认配置;

useradd -D 选项: 修改默认选项的值;

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:删除用户时一并删除其家目录;

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

~]# groupadd -g 2016 distro

~]# tail -n -1 /etc/group

distro:x:2016:

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

~]# useradd -u 1005 -g 2016 mandriva

id mandriva

uid=1005(mandriva) gid=2016(distro) groups=2016(distro)

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

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

~]# tail -n 1 /etc/passwd

mageia:x:1100:1100::/home/linux:/bin/bash

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

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

更改用户 mageia 的密码 。

passwd:所有的身份验证令牌已经成功更新。

(5).删除mandriva,但保留其家目录;

~]# userdel mandriva

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

~]# useradd -u 2002 -g 2016 -G 5001 slackware

 ~]# id slackware

uid=2002(slackware) gid=2016(distro) 组=2016(distro),5001(peguin)

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

~]# usermod -s /bin/tcsh slackware

(8).为用户slackware新增附加组admins;

~]# groupadd admins

~]# usermod -aG admins slackware

[root@ronny1 ~]# id slackware

uid=2002(slackware) gid=2016(distro) 组=2016(distro),5001(peguin),5003(admins)

原创文章,作者:N27_ronny,如若转载,请注明出处:http://www.178linux.com/84126

(0)
N27_ronnyN27_ronny
上一篇 2017-08-06
下一篇 2017-08-07

相关推荐

  • Linux中正则表达式和grep的使用

    正则表达式在Linux经常配合grep,sed和awk等用于搜寻关键字。正则表达式分为正则表达式和扩展正则表达式: 一、正则表达式 1.1 元字符: .:匹配任意字符    []:匹配[]中的任意一个字符 [^]:匹配[]以外的任意字符 [:alpha:]大小写英文字母 [:digit:]:十进制数字 [:xdigit…

    Linux干货 2017-04-08
  • linux网络属性命令操作介绍(第十一天)

            linux网络属性常用命令有ifconfig\route\ip命令,centos7 的还是nmcli\nmtui。     网络属性的三大文件:修改DNS的文件/etc/resolv.conf  、修改网卡IP地址/etc/sysconfig/…

    Linux干货 2016-06-01
  • N21沉舟第九周作业

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; 方法一: #!/bin/bash         #     dec…

    Linux干货 2016-08-30
  • 第三周作业

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次既可。 [root@director ~]# who | cut -d' ' -f 1 | sort | uniq &nbsp…

    Linux干货 2016-12-13
  • N24 W3 博客作业

    第三周 "   1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 [root@localhost ~]# who | cut –d’ ‘ –f1 | uniq 2、取出最后登录到当前系统的用户的相关信息。 [root@localhost ~]# id `who | tail -n 1 | cut …

    Linux干货 2016-11-14
  • RAID and LVM

    RAID          Redundant Arrays of  inexpensive(Independent)Disks,RAID:容错式廉价磁盘阵列,容错式独立磁盘阵列,简称RAID,由加利福尼亚大学伯克利分校(University of California-Berkeley)在1988…

    Linux干货 2016-09-02

评论列表(1条)

  • 马哥教育
    马哥教育 2017-08-20 19:06

    这次作业考察的是些基础的操作命令,熟练掌握,在以后的工作中会更加的得心应手。