实训5  Linux系统用户和组的管理及权限设定
一.  实验目的:
1. 掌握在Linux系统下利用命令方式实现用户和组的管理;
2.了解和掌握Linux操作系统的权限概念;
3.掌握Linux权限相关命令的基本使用;
二.    实验内容:
1.  用户和组的建立和管理;
2. Red Hat Linux 9.0系统下目录的建立;
3. Red Hat Linux 9.0系统下权限操作命令的使用;
三.    实验步骤:
1.        用户的管理
1) 创建一个新用户user01,设置其主目录为/home/user01:
#useradd -d  /home/user01  -m  user01
#useradd -m -u 2046 -g 1000 -d /tmp/hdf -s /bin/tcsh -c friend hdf
2) 查看文件/etc/passwd和文件/etc/shadow的最后一行,看看是如何记录的。
#more /etc/passwd
#more /etc/shadow
#more /etc/group
3) 给用户user01设置密码:
#passwd user01
4) 再次查看文件/etc/passwd和文件/etc/shadow的最后一行,看看有什么变化。
#more /etc/passwd
# more /etc/shadow
5) 使用Putty连接主机,在终端上用user01用户登录系统,看能否登录成功。
登录成功后显示user01的当前工作目录:
$pwd
6) 锁定用户user01,在主机上使用:
#passwd  -l  user01
7) 查看文件/etc/shadow文件的最后一行,看看有什么变化。
# more /etc/shadow
8) 再次使用Putty连接主机,在终端上用user01用户登录系统,看能否登录成功。
9) 解除对用户user01的锁定:
#passwd  -u user01
10) 查看usermod命令的联机手册:
#man usermod
11) 使用usermoduser01加上注释:this is a test user,如何操作,给出操作命令,并查看文件/etc/passwd的最后一行,看看有什么变化:
#less  /etc/passwd
12) 使用usermod更改用户user01的帐户名为user03,如何操作,给出操作命令,并查看文件/etc/passwd的最后一行,看看有什么变化:
#less  /etc/passwd
2.        组的管理
1) 创建一个新组stuff,gid为10000:
#groupadd  -g  10000  送生日礼物stuff
2) 查看/etc/group文件的最后一行,看看是如何设置的。
# cat  /etc/group
3) 创建一个新帐户user02,并把他的起始组和附属组都设为stuff:
#useradd –g stuff –G stuff user02
4) 查看/etc/group文件的最后一行,看看有什么变化。
# cat  /etc/group
5) 将用户user01增加到组stuff中:
#usermod G 10000 user01
6)   再次查看/etc/group文件中的最后一行,看看有什么变化。
#cat  /etc/group
7)在组stuff中删除用户user02:
#gpasswd –d user02 stuff
8)再次查看/etc/group文件中的最后一行,看看有什么变化。
#cat  /etc/group
    3.        谢贤 cocoRed Hat Linux 9.0权限命令
1)用user01用户登录系统
2)使用pwd命令,显示用户工作目录,即当前目录,应为’/home/ user01’。
化妆学校排名3)使用echo $PATH命令,显示搜索路径。
4) 使用/sbin/kernelversion命令,显示内核版本。
5) 使用uname -a命令,显示内核版本。
6) 使用如下系列命令建立目录
      $ cd
      $ pwd
      $ mkdir project谢霆锋张柏芝
      $ ls F
      $ cd project
      $ pwd
李小璐出了轨男人叫什么名字      $ mkdir Source Doc Script
      $ ls l
7) Source、Doc、Script三个目录的权限值是多少?(分别用FAP和8进制表达)
8)写出Source、Doc、Script三个目录的用户和同组用户。
9)将Source、Doc、Script三个目录的权限值分别改为:550、550和660,如何操作?
写出命令。
10)将project目录的拥有者改为user02,组拥有者改为stuff,如何操作?写出命令。
4. 项目练习:
项目1:
Geecy软件开发公司即将开始在Linux系统上进行两个项目的开发。开发人员DavidPeter组成一个小组,负责A项目的开发;开发人员JackMike组成另一个小组,负责B项目的开发。系统管理员Ray需要为这四名开发人员分别建立用户帐号,并满足以下要求:
    (1)建立目录/project_a,该目录里面的文件只能由David和Peter两人读取、增加、删除、修改以及执行,其他用户不能对该目录进行任何的访问操作;
    (2)建立目录/project_b,该目录里面的文件只能由Jack和Mike两人读取、增加、删除、修改以及执行,其他用户不能对该目录进行任何的访问操作;
    (3)建立目录/project,该目录里面的文件只能由David、Peter、Jack和Mike四人读取、增加、删除、修改以及执行,其他用户只可以对该目录进行只读的访问操作。
解决方案参考:
增加用户组:
谢娜张杰个人资料# groupadd -g 2000 prj
# groupadd -g 2001 prj_a
# groupadd -g 2002 prj_b
增加用户:
# useradd -m -u 3001 -g 2001 -G 2000 david
# useradd -m -u 3002 -g 2001 -G 2000 peter
# useradd -m -u 3003 -g 2002 -G 2000 jack
# useradd -m -u 3004 -g 2002 -G 2000 mike
修改用户密码:
# passwd david
# passwd peter
# passwd jack
# passwd mike
建立目录:
# mkdir /project
# mkdir /project_a
# mkdir /project_b
修改目录的组拥有者:
# chgrp prj  /project
# chgrp prj_a  /project_a
# chgrp prj_b  /project_b
修改目录的FAP
# chmod 574  /project
# chmod 570  /project_a
# chmod 570  /project_b
项目2:
某软件开发公司即将开始在Linux系统上进行项目的开发。要实现的环境是,公司有软件开发网络和技术支持3个部门,对应建立3个用户组为soft,network,support。
三个部门里各有2个用户,分别为soft01,soft02network01network02;support 01,support 02
就公司的具体情况建立相应的目录及访问权限
1首先服务器采用用户验证的方式,每个用户可以访问自己的主目录,并且只有该用户能访问主目录,并具有完全的权限,而其用户无任何权限。
2建立一个soft的文件夹,只能由soft组的用户读取、增加、删除、修改以及执行,其他用户不能对该目录进行任何的访问操作;