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 08:49
下一篇 2016-08-29 08:52

相关推荐

  • 位置变量;if;for循环

    向脚本传递参数就是用位置参数变量实现 传递给命令的参数称为位置参数  ls  /etc/var Myscript.sh  argu1 argu2 ….${10}  ${11}…   引用方式 :$1就是引用整个脚本位置参数的第一个,第一个会自动保存在$1中  &nb…

    Linux干货 2016-08-15
  • centos启动流程

    linux系统启动流程 内核的设计结构单内核:linux(线程–lwp轻量级进程)微内核:windows(支持真正意义上的多线程) 单内核:很多功能驱动都集成在一起 微内核:内核很小,功能单一。模块化 linux为了适应众多用户的不同硬件需求,linux内核在设计上采用模块化设计。可以动态加载模块。核心模块:ko 内核所独有的。共享对象:so 红…

    Linux干货 2016-09-09
  • N22-℡浮生.若夢 ╮第八周作业

    1、请描述网桥、集线器、二层交换机、三层交换机、路由器的功能、使用场景与区别。 集线器:集线器的主要功能是对接收到的信号进行再生整形放大,以扩大网络的传输距离 网桥:是早期的两端口二层网络设备,用来连接不同网段。网桥的两个端口分别有一条独立的交换信道,       不是共享一条背板总线,可隔离冲突域…

    Linux干货 2016-11-28
  • 文本处理三剑客-grep及正则表达式初

    什么是正则表达式 基本正则表达式的元字符 扩展正则表达式 grep的基本理解 grep的基本选项 grep的应用实例 什么是正则表达式   正则表达式,又称正规表示法、常规表示法。(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表通常被用来检索、替换那些符合某个模式的文本。(…

    Linux干货 2016-08-07
  • linux发展编年史

    1965年,Bell实验室、MIT、GE(通用电气公司)准备开发Multics系统    1969年,Ken Thompson(B->C语言)利用汇编语言开发了FIle Server System(Unics,即Unix的原型)     为游戏开发出最多…

    Linux干货 2016-10-18
  • 软件包管理器之一——RPM介绍及应用

    一、前言:     在没有软件包管理器前,用户都是通过源代码的方式来安装软件。但是我们很容易发现,在每次安装软件时都必须对操作系统的境、编译的参数进行对应的编译,并且操作过程很是复杂,这对于不熟悉操作系统的朋友来说真心困难,那么有没有一款软件能让用户能很简单的安装所需的软件呢?    &n…

    Linux干货 2015-07-20

评论列表(1条)

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

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