《OpenBSD手册》ADDUSER命令

OpenBSD FAQ中文版、PF指南中文版、OpenBSD用户手册...
主题已锁定
头像
leo
帖子: 2465
注册时间: 2010-01-21 3:27

《OpenBSD手册》ADDUSER命令

帖子 leo » 2010-01-21 15:26

ADDUSER(8) OpenBSD系统管理员手册 ADDUSER(8)
名称
[INDENT][INDENT]adduser, rmuser - 在系统中添加和删除用户
[/INDENT][/INDENT]语法
[INDENT][INDENT]adduser
[-batch username [group[,group] ...] [fullname] [password]]
[-check_only] [-class login_class] [-config_create]
[-dotdir directory] [-e method | -encryption method]
[-group login_group] [-h | -help | -?] [-home partition]
[-message file] [-noconfig] [-shell shell]
[-s | -silent | -q | -quiet] [-uid_start uid] [-uid_end uid]
[-v | -verbose] [-unencrypted]
rmuser [username]
[/INDENT][/INDENT]描述
[INDENT][INDENT]adduser程序向系统添加新用户、rmuser程序删除系统上的用户。如果没有给它们传递参数, 这两者全以交互式的模式运行,并且显示所需的信息。
以下是参数:
-batch username [group[,group] ...] [fullname] [password]
[INDENT][INDENT]在命令行模式里用简洁的模式一次处理多个用户。默认情况下假定密码已经被加密。
[/INDENT][/INDENT]-check_only
[INDENT][INDENT]检查密码、组、shell数据库的一致性和问题,然后不进行其他操作直接退出。
[/INDENT][/INDENT]-class login_class
[INDENT][INDENT]用这个参数可以指定以某个登录级别作为默认的用户登录级别。
更多信息请参阅login.conf(5)。
[/INDENT][/INDENT]-config_create
[INDENT][INDENT]在常规交互式添加用户前创建和编辑默认的配置资料和信息文件。
[/INDENT][/INDENT]-dotdir directory
[INDENT][INDENT]将dot文件从目录directory里拷贝到新用户的HOME目录。格式为``dot.foo''的文件拷贝后将更名为``.foo''。默认情况下新用户可以对所有的文件执行读写操作。
[/INDENT][/INDENT]-encryption, -e method
[INDENT][INDENT]本地密码将用login.conf(5)里的设置的名为"method"的方式加密。这里如果method是``auto'', 加密类型将采用用户登录级别里的设置。
[/INDENT][/INDENT]-group login_group
[INDENT][INDENT]指定默认的登录组。如果这里的login_group是一个用户名,则表示用这个用户名作为一个登录组。
[/INDENT][/INDENT]-help, -h, -?
[INDENT][INDENT]在屏幕上打印一个选项简介并退出。
[/INDENT][/INDENT]-home partition
[INDENT][INDENT]指定默认的用户分区,所有新建用户的home目录将位于这个分区下。
[/INDENT][/INDENT]-message file
[INDENT][INDENT]信息文件,发送给新用户的欢迎信息来自这个文件file。如果这里用no取代file,
则不想新用户发生欢迎信息。
[/INDENT][/INDENT]-noconfig
[INDENT][INDENT]不读取默认的配置文件。
[/INDENT][/INDENT]-shell shell
[INDENT][INDENT]为新用户指定默认的shell。
[/INDENT][/INDENT]-silent, -s, -quiet, -q
[INDENT][INDENT]减少在屏幕上警示信息、问题和BUG报告的显示。
[/INDENT][/INDENT]-uid_start uid
[INDENT][INDENT]自动从uid开始生成新用户的UID.
[/INDENT][/INDENT]-uid_end uid
[INDENT][INDENT]指定新用户的UID值必须小于uid.
[/INDENT][/INDENT]-unencrypted
[INDENT][INDENT]告诉程序批处理模式给定的密码未必加密。这个密码在加入password文件前将先做加密处理。不推荐使用这个参数,因为用户名和明文的密码将出现在处理清单里,可以被用户看见。
[/INDENT][/INDENT]-verbose, -v
[INDENT][INDENT]这个选项会产生很多的警示信息及问题。推荐新手使用这个选项。
[/INDENT][/INDENT]adduser程序先对密码、组和shell数据库进行一致性检查。这包括检查是否有重名的用户或组,是否有非法或不可执行的shell。 一旦检查无误, adduser程序会对每个新用户执行如下的操作:
  1. 在password和group文件里增加适当的项目,并使用pwd_mkdb(8)重新生成密码数据库。
  2. 创建一个home目录并将主登录目录中(一般为 /etc/skel)的所有文件拷贝到home目录。在新的home目录中以 ``dot.foo'' 形式命名的文件将被改名为``.foo''。
  3. 根据帐号创建者选择决定是否想新用户发送欢迎信息。
类似adduser, 删除一个用户时, rmuser将对给定的用户名执行如下操作:
  1. 删除这个用户所有的crontab(1)项或at(1) jobs.
  2. 在密码数据中以及组数据库中删除该用户。如果这个组空了,并且这个组名和该用户名一致, 这个组也将被删除(这点补充了使用addusr命令时每个用户组的唯一性).
  3. 递归地删除用户home目录中的所有文件,并最后删除这个用户的home目录。rmuser在执行操作前会要求操作者确认。
  4. 如果该用户有来信也会删除.
不难理解, rmuser不会删除UID为0的用户(也就是root).
[/INDENT][/INDENT]限制
[INDENT][INDENT]username
[INDENT][INDENT]我们推荐登录名只包含小写字母和数字. 当然用户名也可以使用大写字母, 不在起始位置的连字符, 点, 下划线, 以及一个位于最后的`$'字符。
登录名不能超过31个字符. 如果你想用一个很长的email地址作为登录名, 你可以在/etc/mail/aliases中定义一个别名。
[/INDENT][/INDENT]fullname
[INDENT][INDENT]全名,这应该包含用户的姓氏和名字. 不允许包含`:'字符.
[/INDENT][/INDENT]login_class
[INDENT][INDENT]login_class指定的用户登录级别必须包含在 /etc/login.conf 文件内.
[/INDENT][/INDENT]shell
[INDENT][INDENT]这里指定的shell必须在shell数据库中定义过或者对应于sliplogin(8)和pppd(8)。
[/INDENT][/INDENT]uid_start
[INDENT][INDENT]这个参数定义用户UID的起始值。这个值必须小于uid_end。默认值是1000,
或者在配置文件中指定。
[/INDENT][/INDENT]uid_end
[INDENT][INDENT]这个参数定义用户UID的终止值。这个值必须大于uid_start。默认值是2147483647, 或者在配置文件中指定。
[/INDENT][/INDENT]gid/login group
[INDENT][INDENT]这个值可以自动产生, 但也可以由操作者指定。
[/INDENT][/INDENT]password
[INDENT][INDENT]如非空, 密码将根据login.conf(5)的设置被加密。 若为空,
这个帐号被自动禁用以防非法访问。
[/INDENT][/INDENT][/INDENT][/INDENT]配置
[INDENT][INDENT]adduser按照下列步骤提取其配置数据:
  1. 读取内部变量.
  2. 读取配置文件(/etc/adduser.conf).
  3. 分析命令行参数的语法。
adduser.conf文件的格式在这个文件中已经解释的很清楚了,读者应该很容易掌握。
[/INDENT][/INDENT]文件
[INDENT][INDENT]/etc/master.passwd 用户数据库
/etc/group 组数据库
/etc/shells shell数据库
/etc/ptmp 密码数据库的锁定文件
/etc/adduser.conf adduser的配置文件
/etc/adduser.message adduser的信息文件
/etc/skel 主登录目录
/var/log/adduser adduser的日志文件
[/INDENT][/INDENT]例子
[INDENT][INDENT]以交互模式运行adduser:

代码: 全选

# adduser 
创建用户``falken'' 和登录组``falken''。将用户``falken'' 加入``guest'', ``staff''和``beer''组。真实名称(fullname)是``Prof. Falken''。 密码是``joshua'' (别用这样的密码!). 向其发送欢迎信息:

代码: 全选

# adduser -batch falken guest,staff,beer 'Prof. Falken' joshua 
在``guest''登录组里创建一个用户``vehlefanz''。从5000起始UID.不加入其他组, 没有全名, 没有密码。也不发送欢迎信息:

代码: 全选

 # adduser -uid_start 5000 -group guest -message no -batch vehlefanz 
[/INDENT][/INDENT]也请参考
chpass(1), finger(1), passwd(1), setlogin(2), aliases(5), group(5), login.conf(5), passwd(5), shells(5), nologin(8), pwd_mkdb(8), vipw(8), yp(8)
OpenBSD 4.6 May 31, 2007 4

主题已锁定

在线用户

正浏览此版面之用户: 没有注册用户 和 0 访客