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

相关推荐

  • 基于Keepalived+Nginx实现高可用负载均衡

    练习贴,测试keepalived+lvs_dr高可用负载均衡

    2017-12-11
  • Nginx首部相关模块使用介绍-隐藏,修改

    ngx_http_headers_module模块一. 前言ngx_http_headers_module模块提供了两个重要的指令add_header和expires,来添加 “Expires” 和 “Cache-Control” 头字段,对响应头添加任何域字段。add_header可以用来标示请求访问到哪台服务器上,这个也可以通过nginx模块nginx-…

    Linux干货 2017-05-06
  • linux根下的文件

    /boot:系统启动时要加载引导的静态文件,内核和ramdisk及grub等 /bin:系统自身启动和运行时可能用到的核心二进制程序,不能关联至独立分区。 /sbin:管理类基本命令,不能关联至独立分区,系统启动便会用到的程序。 /lib:基本共享库文件,以及内核模块文件 /lib64:专用于x86_64系统上的辅助共享库文件存放位置 /etc:大多数应用程…

    Linux干货 2017-03-30
  • linux内核及系统启动流程

    Linux内核 内核概述 如图,最上面是用户空间(User Space),是用户程序执行的地方;用户空间之下是内核空间(Kernel Space),内核位于此。基于此,GUN C Library(glibc)提供了连接内核的系统调用接口,还提供了在用户空间应用程序和内核之间进行转换的机制,因为内核空间和用户空间的应用程序使用的是不同的保护地址空间。用户空间的…

    Linux干货 2016-08-08
  • shell脚本练习题

    1、编写脚本/root/bin/systeminfo.sh,显示当前主机系统信 息,包括主机名,IPv4地址,操作系统版本,内核版本, CPU型号,内存大小,硬盘大小。 #!/bin/bash ##编写脚本/root/bin/systeminfo.sh,显示当前主机系统信 息,包括主机名,IPv4地址,操作系统版本,内>核版本, C…

    Linux干货 2016-08-24
  • 高级文件系统管理2

    五、btrfs文件系统     技术预览版     Btrfs (B-tree, Butter FS, Better FS), GPL, Oracle,2007, CoW     核心特性:     …

    Linux干货 2016-09-09

评论列表(1条)

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

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