从相应的 /etc 文件或 NIS 映射创建 NIS+ 表。
nisaddent [ -D defaults ] [ -P ] [ -a ] [ -r ] [ -v ] [ -t table ] type [ nisdomain ]
nisaddent [ -D defaults ] [ -P ] [ -a ] [ -p ] [ -r ] [ -m ] [ -v ] -f file [ -t table ] type [ nisdomain ]
nisaddent [ -D defaults ] [ -P ] [ -a ] [ -r ] [ -m ] [ -v ] [ -t table ] -y ypdomain [ -Y map ] type [ nisdomain ]
nisaddent -d [ -A ] [ -M ] [ -q ] [ -t table ] type [ nisdomain ]
nisaddent 命令从它们相应的 /etc 文件和 NIS 映射在 NIS+ 表中创建项。为系统管理中使用的每一个标准表定制该操作。type 参数指定被处理的数据类型。该类型的合法值是以下值之一:aliases,bootparams,ethers,group,hosts,netid,netmasks,networks,passwd,protocols,publickey,rpc,services,shadow,或者是标准表的 timezone 或通用两栏(关键字、值)表的 key-value。针对不是 key-value 类型的位置特定表,您可使用 nistbladm 来管理它。
NIS+ 表应该已由 nistbladm、nissetup 或 nisserver 创建。
使用 nispopulate 而不是 nisaddent 来填充系统表更为简单。
缺省情况下,nisaddent 从标准输入读取数据,将其添加到与命令行上指定的 type 相关的 NIS+ 表中。备用 NIS+ 表可由 -t 标志指定。针对类型 key-value,必须指定表。
注:data 类型可与表名不同(-t)。例如,自动安装程序表将 key-value 作为表类型。
尽管有 shadow 数据类型,但却没有相应的 shadow 表。加密密码和密码数据存贮于 passwd 表中。
使用 -f 标志可处理文件,使用 -y 标志可处理 NIS V2(YP)映射。当从标准输入读取数据时,-m 标志是不可用的。
当已指定 ypdomain 时,nisaddent 命令从 dbm 文件获取输入,作为适当的 NIS 映射(mail.aliases,bootparams,ethers.byaddr,group.byname,hosts.byaddr,netid.byname,netmasks.byaddr,networks.byname,passwd.byname,protocols.byname,publickey.byname,rpc.bynumber,services.byname 或 timezone.byname)。一个备用 NIS 映射可使用 -Y 标志指定。针对类型 key-value,必须指定映射。映射必须在本地机器上的 /var/yp/ypdomain 目录中。
注: ypdomain 是区分大小写的。ypxfr 命令可用于获取 NIS 映射。
如果已指定 nisdomain,nisaddent 操作 NIS+ 域的 NIS+ 表,否则使用缺省域。
就性能而言,通过 dbm 文件装入表是最快的(y)。
-a | 在不删除任意现有的项的情况下,添加文件或映射到 NIS+ 表。此标志是缺省的。这种方式仅传播增加和修改,不传播删除。 |
-A | 指定返回表中的数据和在初始表的串联路径上的表中的所有数据。 |
-d | 以适当的格式为给定的 type 将 NIS+ 表转储到标准输出。对于 key-value 类型的表,使用 niscat 代替。要转储凭证表,转储 publickey 和 netid 类型。 |
-D defaults | 指定在此操作过程中使用的不同的缺省值集合。defaults 字符串是一系列被冒号分隔的标记。这些标记表示通用对象属性使用的缺省值。所有合法标记描述如下: |
-f file | 指定 file 应作为输入源(而不是标准输入)使用。 |
-m | 用 NIS+ 表合并文件或映射。当只有少数更改时,这是用文件或 NIS 映射更新 NIS+ 表的最有效途径。 此标志添加那些不在数据库中的项,修改那些已存在的项(如果已更改),并且删除那些不在源中的项。无论何时,只要数据库足够大且已被复制,装入的映射仅在很少的项有所不同,则使用 -m 标志。该标志减少必须发送到副本的更新信息的数目。同时请参考 -r 标志。 |
-M | 指定查询应该发送到主控服务器。这确保大部分最新信息在以可能导致主控服务器忙或者由该操作导致服务器忙为代价的情况下可以被看到。 |
-p | 当从一个文件中装入密码信息时,处理密码字段。缺省情况下,密码字段被忽略,因为它通常是无效的(真实密码显示在加密密码文件中)。 |
-P | 如果初始搜索失败,指定查询应该跟随表的串联路径。 |
-q | 以“quick” 方式转储表。转储表的缺省方法单独处理每一个项。对一些表(例如,主机),多个项必须组合为一行,因此必须对服务器生成额外请求。在“quick”方式下,表的全部项在对服务器的一次调用中都被检索到,所以表能更快地转储。然而,对于大的表,进程有可能耗尽虚拟内存且不能转储表。 |
-r | 通过首先删除任意现有的项,然后从源(/etc 文件或 NIS+ 映射)添加项来在现有的 NIS+ 表中替换文件或者映射。该标志和 -m 标志有相同的作用。由于对性能的负面影响,除非有大量的更改,否则不推荐使用该标志。 |
-t table | 为该操作指定 table 是 NIS+ 表。如果指定了该标志,这就应该是被比作为您的缺省域或 domainname 的相对名称。 |
-v | 设置详细方式。 |
-y ypdomain | 从 NIS 域 ypdomain,将相应 NIS 映射的 dbm 文件用作输入源。期望那些文件位于本地机器的 /var/yp/ypdomain 目录中。如果机器不是 NIS 服务器,则使用 ypxfr 命令为相应映射获取 dbm 文件的副本。 |
-Y map | 将 map 的 dbm 文件用为输入源。 |
NIS_DEFAULTS | 该变量包含覆盖 NIS+ 标准缺省值的缺省字符串。如果使用 -D 标志,那些值将覆盖 NIS_DEFAULTS 变量和标准缺省值。为避免安全性意外事件,对于 passwd 表,忽略 NIS_DEFAULTS 变量中的访问权,而使用 -D 标志指定的访问权。 |
NIS_PATH | 如果已设置该变量,且 nisdomain 和 table 均未被全限定,则要搜索 NIS_PATH 中指定的每一个目录,直到查找到该表(参阅 nisdefaults 命令)。 |
这个命令返回如下的出口值:
0 | 成功 |
1 | 由错误而并非分析造成的故障。 |
2 | 在某项中发生分析错误。分析错误不会导致终止;忽略无效项即可。 |
cat /etc/passwd | nisaddent passwd
cat /etc/shadow | nisaddent shadow
即使真实信息存储在 passwd 表中,该表的类型是加密密码,而不是密码。
nisaddent -rv -f /etc/hosts hosts
nisaddent -mv -y myypdomain passwd nisdomain
该示例假定 /var/yp/myypdomain 目录包含 yppasswd 映射。
nisaddent -m -y myypdomain -Y auto.master -t auto_master.org_dir key-value
nisaddent -d hosts
niscat 命令、nischmod 命令、nisdefaults 命令、nispopulate 命令、nisserver 命令、nissetup 命令、nistbladm 命令、passwd 命令、ypxfr 命令。