第四周学习总结

写在最前

忙碌的一周又过去了,通过日夜兼程的追赶,也算基本上赶上了大部队的步伐。本周将继续对上一周的内容进行回顾加深,以达到对用户更加熟悉的管理,并讲讲三剑客中的老三。

知识详解

上一周我们说到了用户的管理,其中有像useradd、usermod、groupadd、passwd和userdel等非常重要的命令,每个用户都有自己特定的角色,在系统上完成不同的功能效用。root用户就是专门用于管理全局的超级用户,权利非常之大。除了root用户以外还有一些系统用户,他们主要是为了运行后台进程或服务类进程,系统创建出来专门运行此类进程的一类用户,并且他们不需要有登录权限。还有一类就是我们自己创建的普通用户,这类用户的权限一般都比较小,在需要更大的权限时,我们才通过root授权开放更大的权限。

Linux中,一切皆文件,因此对于用户的管理也不例外,他们在系统上也都有特定的文件用于管理用户的信息。首先是存储用户基本信息的/etc/passwd文件,首先我们来看一下它都有哪些内容:

401

通过观察,每一行都是由冒号隔开的七个字段组成,第一个字段是用户名,第二个字段是密码占位符,用户的真实密码不存放在这儿,而是由一个专门的文件存储的。第三个字段是用户ID号,第四个字段是组ID号,第五个字段是该用户的附加描述信息,第六个字段是用户的家目录位置,第七个则是用户默认的shell。对于这些信息我们可以通过命令行的方式生成,也可以直接在此文件中新增或修改得来。

用户生成后,要想用于访问或管理进程、文件,还需要有特定的权限,每个目录、文件都对三类用户分别设置了权限,对于属主有读、写、执行权限,对于属组也有读、写、执行权限,对于其他用户也设定了读、写、执行权限。并且对于文件和目录。相同的权限还代表不同的含义,对于目录来说:

  • 读权限:可使用ls命令查看目录中的文件名列表;
  • 写权限:可以在目录中创建或删除文件;
  • 执行权限则表示可以cd到此目录中,以及使用ls -l显示目录中文件的元数据信息;

但是对于文件来说,权限则代表不同的信息,

  • 读权限:可以查看文件的内容;
  • 写权限:可以修改文件的内容;
  • 执行权限:把此文件启动为一个运行的程序(进程);

因此文件想要被用户管理,还必须要有相应的权限才行。如果一个用户对文件有读权限,但是这个文件有数万行,如何才能快速的找到想要的内容呢?通过上次的讲解,我们知道有文件处理的一些工具,这里再讲解一个非常有名的工具。

Linux中有著名的三剑客,grep则被称为老三,是一个强大的文本搜索工具,通过全局查找,它的输入可以是一个文件,也可以是标准输入,将匹配到的内容输出到屏幕上,默认为将匹配到的整行输出。grep也有固定的格式:

grep [options]  pattern [file]

grep的选项主要用于调整执行查找或显示结果的方式,有如下的常用选项:

  • -E:扩展的正则表达式,也即是grep -E=egrep;
  • -i:不叫字符时忽略大小写的区别;
  • -v:取反,也即是输出匹配模式相反的内容;
  • -o:只显示匹配到的内容,而不是默认的一行内容;
  • -B:输出满足条件的前几行;
  • -A:输出满足条件的后几行;
  • -C:此选项相当于同时使用-A、-B,表示前后几行都输出;

此外grep为了让用户定义更精确的查找内容,还支持使用元字符,这类字符也是一种字符,但他们表达的含义不是字符本身的含义,而是用另外一层意思去解释。

  • ^:行首定位符,匹配以特定字符开头的行;
  • $:行尾定位符,匹配以特定字符结尾的行;
  • .:匹配单个字符;
  • *:匹配零个或多个前面的字符;
  • []:匹配指定字符集合内的任意一个字符;
  • [^]:匹配不在指定字符集合内的任一字符;
  • \<:词首定位符,相当于\b;
  • \>:词尾定位符,相当于\b;
  • x\{m\}:连续m次x;
  • x\{m,\}:至少连续m次x;
  • x\{m,n\}:至少m次,至多n次x;

实例展示

讲解毕竟是讲解,要想有提升,还必须要练习一番,那下面就是练习提升空间。

1、如何显示/proc/meminfo文件中以大写或小写S开头的行?

综合上面讲述的知识,抓住问题的关键字:开头、或,那么此问题也就迎刃而解了。

402

此外由于grep -E=egrep,因此这里还有第二种方法:

403

2、显示/etc/passwd文件中其默认shell为非/sbin/nologin的用户。

405

3、显示/etc/passwd文件中其默认shell为/bin/bash的用户。

406

4、找出/etc/passwd文件中的一位数或两位数。

407

5、显示/boot/grub/grub.conf中以至少一个空白字符开头的行。

此处需要注意的是,centos7版本以后没有此文件,因此建议在centos6及其以下版本中进行。408

6、显示/etc/rc.d/rc.sysinit文件中以#开头,后面至少跟一个空白字符,而后又有至少一个非空白字符的行。

说明:由于篇幅的原因,以下内容只截取了其中的一部分内容。

409

7、打出netstat -tan命令执行结果中以“LISTEN”,后或跟空白字符结尾的行。410

8、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其他用户均没有任何访问权限。

使用cp -r /etc/skel/ /home/tuser1 && chmod -R 700 /home/tuser1即可,结果如下:

411

9、手动编辑/etc/group文件,添加组hadoop。

412

10、手动编辑/etc/passwd文件新增一行,添加用户hadoop,其基本组ID为hadoop组的id号,其家目录为/home/hadoop。

413

11、复制/etc/ske1目录为/home/hadoop,要求修改hadoop目录的属组和其他用户没有任何访问权限。

使用cp -r /etc/skel/ /home/hadoop && chmod -R 700 /home/hadoopp即可,结果如下:

414

12、修改/home/hadoop目录及其内部所有文件的属主为hadoop。属组为hadoop。

使用chown修改文件的属主属组,则为: chown -R hadoop:hadoop hadoop/  ,结果如下:

415

13、添加用户bash,testbash,basher,nologin(此一个用户的shell为/sbin/nologin),而后找出当前系统上其用户名和默认shell相同的用户的信息。

416

417

写在最后

今天的总结分享基本就是以上内容,当然很多知识不够全面,因为每个人理解得不一样,我觉得吧,学习还是要找一条属于自己的路,别人的路你可以参考,因为站在巨人的肩膀上才能看的更远,但是自己那一条人生路一定要有自己的特色,一定要属于你。这样才能走得更好,走得更远。

 

 

 

 

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/90534

(0)
上一篇 2017-12-24 10:52
下一篇 2017-12-24 14:49

相关推荐

  • N28-第三周

    1. 列出當前系統上所有已經登入的用戶的用戶名,注意:同一個用戶登入多次,則只顯示一次即可。
    2. 取出最後登入到當前系統的用戶的相關信息。
    3. 取出當前系統上被用戶當做其默認shell的最多的那個shell。
    4. 將/etc/passwd中的第三個字段數值最大的後10個用戶的信息全部改為大寫後保存至/tmp/maxusers.txt文件中。
    5. 取出當前主機的IP地址,提示:對ifconfig命令的結果進行切分。
    6. 列出/etc目錄下所有以.conf結尾的文件的文件名,並將其名字轉換為大寫後保存至/tmp/etc.conf文件中。
    7. 顯示/var目錄下一級子目錄或文件的總各數。
    8. 取出/etc/group文件中第三個字段數值最小的10個組的名字。
    9. 將/etc/fstab和/etc/issue文件的內容合併為同一個內容後保存至/tmp/etc.test文件中。
    10. 請總結描述用戶和組管理類命令的使用方法並完成以下練習:
    (1) 創建組distro,其GID為2016。
    (2) 創建用戶mandriva,其ID號為1005,基本組為distro。
    (3) 創建用戶mageia,其ID號為1100,家目錄為/home/linux。
    (4) 給用戶mageia添加密碼,密碼為mageedu。
    (5) 刪除mandriva,但保留其家目錄。
    (6) 創建用戶slackware,其ID號為2002,基本組為distro,附加組peguin。
    (7) 修改slackware的默認shell為/bin/tcsh。
    (8) 為用戶slackware新增附加組admins。

    2017-12-19
  • 计算机组成及各部分功能

    计算机组成及各部分功能 计算机组成 区别于利用机械原理对数据进行处理的机械计算机,计算机现在一般都指电子计算机,即电脑。计算机是一种利用电子学原理,根据一些列指令对数据进行处理的工具。 不管是机械计算机还是电子计算机其主要目的还是代替人来完成一系列的数据计算。1941年夏天诞生的阿塔纳索夫-贝瑞计算机是世界上第一部电子计算机,使用了真空管计算器,二进制数值,…

    Linux干货 2016-10-27
  • 常用linux命令小计(1)

    关于linux那些事儿—常用命令小结(1) 系统相关信息 Uname –m显示处理器的架构 Uname –r显示正在使用的内核版本 cat /proc/cpuinfo显示cpu的具体信息 cat /proc/version显示内核的版本 cat /proc/swaps显示哪些分区被使用 data显示系统日期 cal –y显示当年的日历 date 021920…

    Linux干货 2017-02-19
  • 8月5号 练习+作业

    1,找出ifconfig 命令结果中本机的所有IPv4 地址 [root@localhost ~]# ifconfig |tr -cs '[:digit:].' '\n' |sort -t. -k3 |tail&nbsp…

    Linux干货 2016-08-07
  • 内核编译之增加ntfs文件系统

    内核编译 内核编译 单内核体系设计,但充分借鉴了微内核设计体系的优点,为内核引入模块化机制。 内核组成部分:     Kernel,内核核心,一般为bzImage,通常在/boot目录下,名称为vmlinuz-WERSION- RELEASE;     Kernel object…

    Linux干货 2016-09-13
  • 20160803作业-用户组和权限管理

    http://note.youdao.com/yws/public/redirect/share?id=46f06331b737c6d08a0e8c9c3d49ac9e&type=false

    Linux干货 2016-08-08

评论列表(1条)

  • 马哥教育
    马哥教育 2018-01-07 17:58

    赞~前后有自己的总结,期待来一篇比较全面的文本三剑客的博文~加油~