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)
上一篇 2016-10-16 13:06
下一篇 2016-10-16 14:42

相关推荐

  • 马哥教育网络班21期-第七周课程练习

    1、创建一个10G分区,并格式为ext4文件系统;     #fdisk /dev/sdb (n;p;1;+10G;w)     #partx -a -n 1 /dev/sdb     (1…

    Linux干货 2016-08-22
  • 笔记三、如何在VMWare Workstation中安装CentOS 7

    一、准备工作     1.1 安装VMWare WorkStatrion     1.2 准备好CentOS 7 镜像包     http://www.centoscn.com/CentosSoft/iso/    CenOS7下载地址 二…

    2017-02-23
  • five

    1;显示当前系统上root, fedora或user1用户的默认shell。 #   grep "^\(root\|fedora\|user1\)" /etc/passwd #   grep -E "^(root|fedora|u…

    Linux干货 2017-01-16
  • LINUX-用户和组管理

    LINUX用户和组管理 linux用户分类:Username/UID      管理员:root,UID 0号,拥有最高权限;负责系统的启功、停止,安装新软件,               增加、删除用户,保证系统正常运转;     &nb…

    2017-05-30
  • 详解 /etc/inittab 文件

    当内核初始化后,就会启动第一个进程 init,init进程会进行一系列的系统初始化工作,init是根据什么来进行初始化的? init 会读取/etc/inittab文件(针对CentOS 5 系列),执行里面的内容来进行初始化工作,这个文件是一定的格式。 获取inittab文件的帮助,输入 man inittab 命令 过滤掉空白行和以#号开始的行,内容如下…

    Linux干货 2015-03-10
  • keepalived+varnish+haproxy+LNAMP

      nfs: 192.168.1.40 rp1: 192.168.1.41 rp2: 192.168.1.42 mariadb: 192.168.1.43 web1: 192.168.1.110 web2: 192.168.1.111 app1: 192.168.1.112 app2: 192.168.1.113 实验效果:用keepalived高…

    2018-02-18