Linux基础知识(四)

  • 本文主要讲述:Linux上用户和组的基本管理,具体包括一下内容

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

  • 2、编辑/etc/group文件,添加组hadoop。

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

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

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

  • 6、显示/proc/meminfo文件中以大写或小写S开头的行;用两种方式;

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

  • 8、显示/etc/passwd文件中其默认shell为/bin/bash的用户;

  • 9、找出/etc/passwd文件中的一位数或两位数;

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

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

  • 12、打出netstat -tan命令执行结果中以‘LISTEN’,后或跟空白字符结尾的行;

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

1.复制/etc/skel目录到/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限:

cp -r /etc/skel /home/tuser1
chmod -R go= /home/tuser1

2.编辑/etc/group文件,添加组hadoop:

 首先需要知道/etc/group文件的格式,是由四个冒号分隔的字段,用其中第一行作为示例:

  root:x:0: 

 四个字段分别表示:组名,密码,组id,此组内的用户列表(省略表示此组内只有一个与组名同名的用户)

 于是添加组hadoop的方式为:

hadoop:x:500:

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

要想手动添加用户,就要弄清楚/etc/passwd文件中内容的组织格式

该文件组织形式是以冒号分隔的7个字段,以该文件中的第一行为例:

 root:x:0:0:root:/root:/bin/bash

 第一个字段 root:用户名。

 第二个字段 x  :用户密码字段,这里是显示为x表示密码加密存放,x表示占位符。

 第三个字段 0  :用户id

 第四个字段 0  :属组id 

 第五个子字段:root:注释信息 

 第六个字段 /root:用户的家目录,普通用户默认为/home/username

 第七个子字段:用户的默认使用的shell

所以添加的内容为:

hadoop:x:500:500:my own group:/home/hadoop:/bin/bash

4.复制/etc/skel目录为/home/hadoop,要求修改hadoop目录的属组和其它用户没有任何访问权限

        

 cp -r /etc/skel /home/hadoop

 chmod -R go= /home/hadoop

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

chown -R hadoop:hadoop /home/hadoop

6.显示/proc/meminfo文件中以大写或小写S开头的行;用两种方式:

方法一:cat /proc/meminfo | grep -o "^[sS].*"

方法二:cat /proc/meminfo | grep -i "^s"

7.显示/etc/passwd文件中其默认shell为非/sbin/nologin的用户;

awk -F : '{if($NF!="/sbin/nologin") print $1}' /etc/passwd

8.显示/etc/passwd文件中其默认shell为/bin/bash的用户;

 awk -F : '{if($NF=="/bin/bash") print $1}' /etc/passwd

9.找出/etc/passwd文件中的一位数或两位数:

grep -o "\<[0-9]\{1,2\}\>" /etc/passwd

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

grep "^[[:space:]]\+" /boot/grub/grub.conf

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

grep "^[#][[:space:]]\+[^[:space:]]\+" /etc/rc.d/rc.sysinit

12.打出netstat -tan命令执行结果中以‘LISTEN’后或跟空白字符结尾的行;

netstat -tan | grep "\<LISTEN\>[[:space:]]$\?"

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

  grep  "^\([[:alpha:]]\+\>\).*\1$" /etc/passwd

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

(0)
zhangbaozhangbao
上一篇 2016-10-16
下一篇 2016-10-16

相关推荐

  • RPM简述

    RPM 是 Red Hat Package Manager 的缩写,本意是Red Hat 软件包管理,顾名思义是Red Hat 贡献出来的软件包管理;在Fedora 、Redhat、Mandriva、SuSE、YellowDog等主流发行版本,以及在这些版本基础上二次开发出来的发行版采用。 RPM包里面都包含什么?里面包含可执行的二进制程序,这个程序和Win…

    Linux干货 2017-08-12
  • openssl&openssh

    安全和加密 不加密流量的易受攻击性       密码/数据嗅探       数据操作       验证操作       相当于邮寄明信片 不安全的传统协议       telnet、FTP、POP3等等;不安全…

    Linux干货 2016-09-26
  • 进程和优先级

         什么是进程?我们先来了解一下进程的概念:我们知道操作系统最核心的概念就是进程。进程简单来说就是在操作系统中运行的程序,它是操作系统资源管理的最小单位。但是进程是一个动态的实体,它是程序的一次执行过程。进程和程序的区别在于:进程是动态的,程序是静态的,进程是运行中的程序,而程序是一些保存在硬盘上的可执行代码。    当多个任务要执行时怎么办呢?先执行…

    2017-09-09
  • 编译安装apache

    编译安装apache可简单分为3步: 第一步:下载apache软件包解决依赖关系并生成Makefile 1.首先准备开发环境,可以通过yum安装开发包组:yum groupinstall Development Tools 2.准备apache软件包,可以通过http://httpd.apache.org下载到本地。随后解包tar -xf httpd-2.4…

    Linux干货 2017-12-03
  • Linux系统中硬链接和软链接

    使用对象:linux初学者。   一、硬链接和软链接的概念 硬链接是给已经存在的数据文件另外创建一个名字,通过该名字也可以访问该数据文件。就好像给张三起个绰号叫“小二黑”,通过“张三”这个名字能找到这个人,通过“小二黑”这个名字也能找到这个人。        软链接是给文件名在其…

    Linux干货 2016-10-20
  • 02Linux上终端的类型

    一、终端的概念 所谓终端就是在一个连接主机的端子上面接入鼠标、键盘、显示器等所组成的一个组合。终端用于用户与主机之间的交互。早期的时候,在大型主机上,想使用主机的用户很多,但是主机却只有一个,也不能实现人手一台。于是为了让一台主机给多个用户使用,便产生了多个终端和多个用户,这样每个用户只要有一个终端变可以与主机交互了。 二、终端的种类 终端的类型有四类:物理…

    Linux干货 2016-10-14