【Linux基础】作业三

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

[root@lanin ~]# who    #显示当前用户登录信息

root     tty1         2016-08-15 15:58

root     pts/0        2016-08-15 16:07 (192.168.1.118)

[root@lanin ~]# who | cut -d‘ ‘ -f1    #取出当前用户登录信息的用户名

root

root

[root@lanin ~]# who | cut -d‘ ‘ -f1|uniq    #对当前用户登录信息的用户名去重

root

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

[root@lanin ~]# who |tail -n 1    #取当前用户最后登录的信息的一行数据

root     pts/0        2016-08-15 16:07 (192.168.1.118)

[root@lanin ~]# who |tail -n 1|cut -d‘ ‘ -f1    #取出用户名

root

[root@lanin ~]# who |tail -n 1|cut -d‘ ‘ -f1|id    #查询用户相关信息

uid=0(root) gid=0(root) 组=0(root) 环境=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023

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

[root@lanin ~]# cut -d: -f7 /etc/passwd|uniq -c|sort -n

##取出用户默认shell相同的用户数量及其相应shell,并顺序排序

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

##取出最后一行即为默认shell用户最多的shell

 

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

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

 

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

[root@lanin ~]# ifconfig

eth0      Link encap:Ethernet  HWaddr 00:50:56:BF:26:20  
          inet addr:192.168.120.204  Bcast:192.168.120.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:8700857 errors:0 dropped:0 overruns:0 frame:0
          TX packets:31533 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:596390239 (568.7 MiB)  TX bytes:2886956 (2.7 MiB)

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:68 errors:0 dropped:0 overruns:0 frame:0
          TX packets:68 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:2856 (2.7 KiB)  TX bytes:2856 (2.7 KiB)

[root@lanin ~]# ifconfig|grep inet addr |head -1|cut -d  -f2|cut -d: -f2

192.168.120.204

 

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

[root@lanin ~]# mkdir /tmp/etc

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

[root@lanin ~]# more /tmp/etc/conf

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

[root@lanin /]# ls /var |wc -l

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

[root@lanin /]# cat /etc/group|sort -n  -t: -k3|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:

[root@lanin /]# cat /etc/group|sort -n  -t: -k3|head -n 10|cut -d: -f1

root

bin

daemon

sys

adm

tty

disk

lp

mem

kmem

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

[root@lanin /]# cat /etc/fstab /etc/issue >>/tmp/etc/test

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

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

[root@lanin /]# groupadd distro -g 2016

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

[root@lanin /]# useradd mandriva -u 1005 -g distro

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

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

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

[root@lanin /]# echo mageedu|passwd --stdin mageia

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

[root@lanin /]userdel mandriva

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

[root@lanin /]#groupadd peguin

[root@lanin /]# useradd slackware -u 2002 -g distro -G peguin

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

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

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

[root@lanin /]#groupadd admins

[root@lanin /]#usermod slackware -a -G admins

(9)、为slackware添加密码,且要求密码最短使用期限为3天,最长为180天,警告为3天;

[root@lanin /]#echo "654321" |passwd --stdin slackware && chage -W 3 -E 180 -I 3 slackware

(10)、添加用户openstack,其ID号为3003, 基本组为clouds,附加组为peguin和nova;

[root@lanin /]# useradd openstack -u 3003 -g clouds -G peguin,nova

(11)、添加系统用户mysql,要求其shell为/sbin/nologin;

[root@lanin /]# useradd mysql -u 499 -s /sbin/nologin

(12)、使用echo命令,非交互式为openstack添加密码。

[root@lanin/]# echo "openstack"|passwd --stdin openstack

时间: 2024-10-28 15:30:56

【Linux基础】作业三的相关文章

linux基础命令作业三

作业一: 1)              将用户信息数据库文件和组信息数据库文件纵向合并为一个文件/1.txt(覆盖) 2)              将用户信息数据库文件和用户密码数据库文件纵向合并为一个文件/2.txt(追加) 3)              将/1.txt./2.txt两个文件打包为/1.tar 4)              使用gzip命令压缩1.txt文件名为1.txt.gz 5)              解压缩1.txt.gz 6)              使用

Linux基础知识三

1.列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可. 查看系统用户的命令为: (1)getent passwd 查看系统上的所有用户信息 (2)w 查看登录用户正在使用的进程信息,该命令所使用的信息来源于/var/run/utmp文件 w命令输出的信息包括: -用户名称 -用户的机器名称或tty号 -远程主机地址 -用户登录系统的时间 -空闲时间(作用不大) -附加到tty(终端)的进程所用的时间(JCPU时间) -当前进程所用时间(PCPU时间) -用户当

Linux基础(三)——交互接口

一.什么是交互式接口 交互式接口就是系统和用户之间进行交互和信息交换的媒介,它实现信息的内部形式与人类可以接受形式之间的转换.换句话说,即在启动终端后,在终端设备附加一个交互式应用程序,就叫交互式接口.通常指软件接口,一般有命令行接口.图形接口.程序接口三种.命令行接口命令行接口(command line interface,CLI)是计算机操作系统或应用程序为用户提供的可视提示接口,使用CLI,可以在特定的行中输入命令,从操作系统接收回应等.常见的如:shell程序:sh (bourn 史蒂夫

Linux基础篇三——链接文件知多少

As is known to all,在windows环境下我们早已经见过链接文件,机我们平时所使用的快捷方式. 其实,在linux里我们可以见到以下两种类型的链接文件 a.硬链接文件 创建命令:ln [源文件] [目标文件] 硬链接即实际链接. 记得我们讲过什么叫做inode,那么我们来根据下图理解一    这样做的意义是:安全.如果你不慎删除了其中一个文件名那么你还可以通过其他文件来找到这个源文件 并且你修改一个文件其他的文件也会跟着被修改 *上图中能看到,这两个文件的信息是一模一样的 实际

linux基础指令三

chmod 功能:改变文件的权限. 语法:chmod [-R] xyz 文件或目录(数字类型改变文件权限) xyz:就是刚刚提到的数字类型的权限属性,为rwx属性数值的相加. -R:进行递归的持续改进,即连同子目录下的所有文件都会改变. 范例:chmod -R 777 testfile 修改目录testfile及其目录下所有的用户具有全部权限. 语法:chmod u     + (加入)       r g     -  (除去)       w          文件或目录 o     = (

Linux基础(三)

一.系统监控 1.top:实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器. 1. 第一行是任务队列信息 12:38:33 当前时间 up 50days 系统运行时间,格式为时:分 1 user 当前登录用户数 load average: 0.06, 0.60, 0.48 系统负载. 三个数值分别为  1分钟.5分钟.15分钟前到现在的平均值. 2. 第二.三行为进程和CPU的信息 Tasks: 29 total 进程总数 1 running 正在运行的进程数 28 sle

Linux基础(三)常用命令2

一.文件搜索命令 (一)文件搜索命令find 1.find 1)概述 功能:文件搜索 语法:find[搜索范围][匹配条件] -name:根据文件名 -size:文件大小 -user:所有者 -group:所属组 时间属性 -amin:访问时间 access -cmin:文件属性 change -mmin:文件内容 modify -a:两个条件同时满足 -o:满足一个即可 -exec/-ok 命令 {} \; :对搜索结果执行操作 -ok:会提示 -type:文件类型 f-文件,d-目录,l-软

Linux基础(三)——文件权限管理&光盘、镜像挂载

Linux文件权限管理 更改文档归属 ls -ld 文档... 查看文件归属 chown -R(目录) 属主 文档... chown -R :属组 文档... chown -R 属主:属组 文档... 同时修改属主.属组 访问权限 读取 -read 写入 -write 可执行 -excute '如果用户对一个文件有 r.w.x权限:' r,查看文件内容(cat.vim看.less.--) w,修改文件内容(vim) x,能够运行程序文件 '如果用户对一个目录有 r.w.x权限:' r,查看目录内

Linux基础(三)—yum软件安装&服务器搭建

Yum工作机制 基于红帽RPM封装包构建的软件更新机制 基于C/S架构 自动解决软件依赖关系 所有软件包集中在yum软件仓库提供 默认在/etc/yum.repos.d/CentoS*.repop记录软件来源 软件仓库 包含大量软件包+配套的档案数据 Packages (软件包)+repodate (仓库档案) 默认由CentoS官方提供 软件管理命令 Yum list 软件名 列出某个软件的安装信息 Yum info 软件名 Yum provides 程序或文件 Yum list instal

Linux 基础知识(三)

一.定义一个对所有用户都生效的命令别名alias td='tcpdump -i ens192 -nnv not port 65022' 二.显示/etc/passwd文件中不以/bin/bash结尾的行grep -v "/bin/bash$" /etc/passwd 三.找出/etc/passwd文件中,包含二位数字或者三位数字的行grep "\<[0-9]{2,3}\>" /etc/passwd grep "\<[[:digit:]]{