N22第三周作业

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

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

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

[root@localhost ~]# who |tail -1
root     pts/1        2016-08-22 04:28(172.20.158.101)

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

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

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

[root@localhost ~]# cut -d':' -f3-7 /etc/passwd |sort -n |tail -10 |tr 'a-z' 'A-Z' > /tmp/maxusers.txt
[root@localhost ~]# cat /tmp/maxusers.txt 
997:996:USER FOR POLKITD:/:/SBIN/NOLOGIN
998:997:SYSTEMD NETWORK MANAGEMENT:/:/SBIN/NOLOGIN
999:998:SYSTEMD BUS PROXY:/:/SBIN/NOLOGIN
1000:1000:XUC:/HOME/XUC:/BIN/BASH
1001:1001::/HOME/FEDORA:/BIN/BASH
1002:1002::/HOME/CENTOS:/BIN/BASH
1003:1004::/HOME/O:/BIN/BASH
1004:1005::/HOME/P:/BIN/BASH
1005:1006::/HOME/Q:/BIN/BASH
65534:65534:ANONYMOUS NFS USER:/VAR/LIB/NFS:/SBIN/NOLOGIN

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

[root@localhost ~]# ifconfig eno16777736 |head -2 |tail -1 |cut -d' ' -f10
172.20.158.102

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

[root@localhost tmp]# ls /tmp/*.conf |tr 'a-z' 'A-Z' > /tmp/etc.conf
[root@localhost tmp]# cat etc.conf 
/TMP/ABCD.CONF
/TMP/A.CONF
/TMP/B.CONF
/TMP/C.CONF
/TMP/DCBA.CONF

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

[root@localhost ~]# tree -L 1 /var/     //需要先安装tree命令
/var/
├── account
├── adm
├── cache
├── crash
├── db
├── empty
├── games
├── gopher
├── kerberos
├── labc4abcq
├── lib
├── local
├── lock -> ../run/lock
├── log
├── mail -> spool/mail
├── nis
├── opt
├── preserve
├── run -> ../run
├── spool
├── target
├── tmp
└── yp

23 directories, 0 files
[root@localhost ~]# tree -L 1 /var/ |wc -l
26

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

[root@localhost ~]# 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@localhost ~]# cat  /etc/fstab /etc/issue > /tmp/etc.test
[root@localhost ~]# cat /tmp/etc.test 

#
# /etc/fstab
# Created by anaconda on Wed Aug  3 17:45:02 2016
#
# 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=b2f921e8-b0cf-41ae-b4c8-90161c495319 /                       ext4    defaults        1 1
UUID=1bb4c1bc-1b00-4200-a0cd-51bfd99548a6 /boot                   xfs     defaults        0 0
UUID=5c1a3eb1-b1d8-4ad5-9a21-8f9f6922eab9 swap                    swap    defaults        0 0
\S
Kernel \r on an \m

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

(1)、创建组distro,其GID为2016;
[root@localhost ~]# groupadd -g 2016 distro
[root@localhost ~]# tail -1 /etc/group
distro:x:2016:
(2)、创建用户mandriva, 其ID号为1005;基本组为distro;
[root@localhost ~]# useradd -u 1005 -g distro mandriva
[root@localhost ~]# id mandriva
uid=1005(mandriva) gid=2016(distro) groups=2016(distro)
(3)、创建用户mageia,其ID号为1100,家目录为/home/linux;
[root@localhost ~]# useradd mageia -u 1100 -d /home/linux
[root@localhost ~]# tail -1 /etc/passwd
mageia:x:1100:1100::/home/linux:/bin/bash
(4)、给用户mageia添加密码,密码为mageedu;
[root@localhost ~]# echo "mageedu" |passwd --stdin mageia
Changing password for user mageia.
passwd: all authentication tokens updated successfully.
(5)、删除mandriva,但保留其家目录;
[root@localhost ~]# userdel mandriva      //加上-r选项表示家目录一并删除
[root@localhost ~]# ls /home/
centos  fedora  linux  mandriva  o  p  q  xuc
(6)、创建用户slackware,其ID号为2002,基本组为distro,附加组peguin;
[root@localhost ~]# groupadd peguin
[root@localhost ~]# useradd slackware -u 2002 -g distro -G peguin
[root@localhost ~]# id slackware
uid=2002(slackware) gid=2016(distro) groups=2016(distro),2017(peguin)
(7)、修改slackware的默认shell为/bin/tcsh;
[root@localhost ~]# usermod slackware -s /bin/tcsh
[root@localhost ~]# tail -1 /etc/passwd
slackware:x:2002:2016::/home/slackware:/bin/tcsh
(8)、为用户slackware新增附加组admins;
[root@localhost ~]# useradd -G admins
[root@localhost ~]# usermod -a -G admins slackware
[root@localhost ~]# id slackware
uid=2002(slackware) gid=2016(distro) groups=2016(distro),2017(peguin),2018(admins)
(9)、为slackware添加密码,且要求密码最短使用期限为3天,最长为180天,警告为3天;
[root@localhost ~]# passwd slackware -n 3 -x 180 -w 3
Adjusting aging data for user slackware.
passwd: Success
[root@localhost ~]# tail -1 /etc/shadow
slackware:!!:17035:3:180:3:::
(10)、添加用户openstack,其ID号为3003, 基本组为clouds,附加组为peguin和nova;
[root@localhost ~]# groupadd clouds
[root@localhost ~]# groupadd nova
[root@localhost ~]# useradd openstack -u 3003 -g clouds -G peguin,nova
[root@localhost ~]# id openstack
uid=3003(openstack) gid=2019(clouds) groups=2019(clouds),2017(peguin),2020(nova)
(11)、添加系统用户mysql,要求其shell为/sbin/nologin;
[root@localhost ~]# useradd -s /sbin/nologin mysql
[root@localhost ~]# tail -1 /etc/passwd
mysql:x:3004:3004::/home/mysql:/sbin/nologin
(12)、使用echo命令,非交互式为openstack添加密码。
[root@localhost ~]# echo "openstack" |passwd --stdin openstack
Changing password for user openstack.
passwd: all authentication tokens updated successfully.
[root@localhost ~]# cat /etc/shadow |grep openstack
openstack:$6$qubFKUhq$SyZ1uTUzUxxJWZp46JqvkKc427HerycvHLA175mJM4jeCaJISzTRwmxlRkN1shkmkyrZJxXupf46JkfL2R6.71:17035:0:99999:7:::

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

(0)
N22_熊宝N22_熊宝
上一篇 2016-08-29
下一篇 2016-08-29

相关推荐

  • N24 第三周 磁盘及文件系统管理

    Linux系统管理          磁盘分区及文件系统管理          RAID          LVM 动态磁盘设备管理          网络属性…

    Linux干货 2016-11-22
  • 在centos6.9上实现软RAID

    在centos6.9上实现软RAID 什么是RAID?     RAID,全称Redundant Arrays of Inexpensive(Independent)Disks。简单翻译叫磁盘阵列。    通俗一点讲就是多个磁盘合成一个“阵列”来提供更好的性能、冗余,或者两者都提…

    Linux干货 2017-08-12
  • 手动添加用户

        通常使用useradd命令可以轻松添加一个用户,然后使用passwd命令设置一个密码后就可以登录系统了,其实这一过程完成可以自己手动完成,下面就让我们来通过修改配置文件来添加一个用户。 一、修改/etc/passwd文件     在etc/passwd文件中手动添加一行内…

    Linux干货 2015-04-27
  • Trie树:应用于统计和排序

    1. 什么是trie树 1.Trie树 (特例结构树)         Trie树,又称单词查找树、字典树,是一种树形结构,是一种哈希树的变种,是一种用于快速检索的多叉树结构。典型应用是用于统计和排序大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计。它的优点是:最大限度地减少…

    Linux干货 2015-04-08
  • 2

    2

    Linux干货 2018-03-26
  • shell编程之循环

           当需要重复运行特定的指令以满足系统管理工作需要时,条件判断语句if、case并不能很好地提供支撑,shell提供了for、while、until循环语句来满足此需求。 一、for循环语句        for循环用于重复整个对象列表,依次遍历对列…

    Linux干货 2016-08-18

评论列表(1条)

  • 马哥教育
    马哥教育 2016-08-30 12:31

    作业工整,有输出回显,很棒,加油!