Chinaunix首页 | 论坛 | 博客
  • 博客访问: 103725128
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类: LINUX

2008-04-26 18:18:02

作者: Alf Wachsmann 出处:51CTO.com 
 
NIS组映射

NIS组映射的典型用法是允许在多个用户之间共享文件,这可以用于本地文件也可以用于NFS文件,这里将介绍如何实现它,我们假设你有两个用户(这个技术可以应用与任何数量的用户),它们的passwd映射条目如下:
jane:*:1234:42:Jane:/home/jane:/bin/bash
joe:*:5678:57:Joe:/home/joe:/bin/bash

它定义了jane的主组ID是42,joe的主组ID是57。

使用NIS组映射,你可以给账号添加额外的组成员。组条目:
projectX:*:127:jane,joe

它定义一个新组projectX,没有密码(*),组ID是127,有两个成员。在group文件中不能有注释。

如果你现在为组projectX创建一个目录,并设置了读/写/执行权限:
# mkdir /projects/X/
# chgrp projectX /projects/X/
# chmod g+wrx /projects/X/

在projectX组中每个成员在这个文件空间内都有读/写/执行权限,用户可能首先需要执行newgrp projectX命令。

无论什么时候,你要往组映射中添加或要从中移除账号时,在你的主NIS服务器上编辑 /etc/NIS/group文件后,执行下面的命令:
% cd /var/yp
% sudo make group

这就产生一个新的组映射,这让所有客户端可以立即收到改动信息,不需要接触任何客户端。现在任何事情都集中在你的主NIS服务器上进行。

NIS 网络组

网络组是与组不同,网络组分两种,用户网络组和主机网络组。两种网络组都可以包含网络组作为成员,因此网络组定义可以是分层的,两种网络组都定义在相同的netgroup文件中,这个文件是允许使用注释信息的。

主机网络组在/etc/NIS/netgroup文件中的定义象下面这样子:

# Group of project groups:
projects \
      projectA \
      projectB \
      projectX

# Group of hosts for Project X
projectX \
        (host1.example.com,-,) \
        (host2.example.com,-,) \
        (host3.example.com,-,)

现在这些主机网络组定义允许你导出NFS空间到你机器的子集,在你NFS服务器上的/etc/exports文件中,你可以使用象下面的结构:

# export the /projects directory to all machines
# in the "projects" netgroup
/projects    @projects(rw,root_squash)

# export Project X' space only to machines
# in the "projectX" netgroup
/projects/X           @projectX(rw,root_squash)

再说一次,添加或移除主机,添加/删除网络组只需要编辑主NIS服务器上的/etc/NIS/netgroup文件即可。执行cd /var/yp;sudo make netgroup更新NIS映射,改动就会立即生效。

阅读(467) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~