用户管理为了使用多用户的FreeBSD操作系统,必须是系统的登记用户 。用户信息保存在/etc目录下passwd文件中,在这个文件中定义的一个FreeBSD用户应具有以下属性:
用户名(Username):在系统中使用这个用户名来标识用户,每个用户名不超过8个字符,且是大小写敏感的 。习惯上用户名只使用小写字母,通常根据用户真实名字的缩写来选择合适的用户名 。
用户标识号(User ID):由于计算机中处理数字比处理字符串更容易,因而使用数字方式的用户标识号来区分不同用户更为适合 。事实上Unix系统就是使用唯一的用户标识号来区分用户的,在某些特定目的下,可以存在多个有不同用户名、但用户标识号相同的用户,这表示这些不同用户名的用户实际上是同一个用户 。
口令(passWord):系统用它来验证用户是否合法 。超级用户root可以使用系统程序passwd来更改每个用户的口令,用户也可以使用passwd来更改自己的口令 。较老的Unix系统中直接在passwd文件中保存口令的密文,由于passwd文件是系统中的每个用户都可以读取的,只通过加密来保证口令的安全性 。然而现代计算机的发展使得情形发生了变化,高速计算能力使得通过猜测的方式来破译口令成为可能 。因此现在Unix中口令均不再直接保存在passwd文件中了,而passwd文件中的口令域使用一个 “*” 来代替 。FreeBSD使用/etc/master.passwd作为真正的口令文件,保存包括个人口令在内的数据,但这个文件不能被普通用户读取 。
命令解释程序(shell):用户登录后启动这个程序来接收用户的输入并执行输入相应命令,标准的shell有sh和csh,更复杂易用的shell有bash和tcsh等,但它们不是基本系统的一部分,必须额外安装 。shell程序是一个标准的Unix程序,但系统在/etc/shells文件中定义了一些标准shell的名字,很多应用程序检查这个文件中内容和用户的shell来判断这个用户是普通用户,还是用于特定目的而创建的用户 。
个人目录(home Directory):由于FreeBSD是多用户系统,每个用户都要有自己的独立使用环境,不同用户的文件不能相互交叉存放,因此Unix中为每个用户配置了自己的个人目录,用户的文件都放置在各自的目录下,从而互不干扰 。习惯上FreeBSD下用户的个人目录位于/home目录下,使用用户名作为子目录名,多数shell中使用波浪符号~,来代表该用户的个人目录 。
组标识号(Group ID):具有相似属性的多个用户可以被分配到一个组内,每个组都有自己的组名,且以自己的组标识号相区分(组标识号和组的对应关系在/etc/group文件中给出),用户的组标识号保存在passwd文件中 。早期的Unix中,每个用户只能属于一个组,而现代Unix中每个用户可以同时属于多个组,除了在passwd文件中指定了其归属的基本组之外,还可以在文件/etc/group中,明确指定一个组包括某个用户,使得该用户能属于多个组 。
除此之外,用户还有其他属性,例如登录类别,这些信息记录在另一个口令文件:/etc/master.passwd中 。
增加用户
虽然可以使用系统安装程序/stand/sysinstall中的Add User选项来增加用户和组,但熟练的管理员并不喜欢这种全屏幕操作方式 。Unix下的习惯做法是使用命令行方式,如使用adduser命令来或pw命令添加用户 。
adduser命令使用配置文件/etc/adduser.conf来保存添加用户使用的缺省数据,如果没有这个配置文件,第一次执行adduser时会询问缺省设置,以自动生成这个设置文件 。这样对于很多基本一致的用户数据就设置了正确的缺省值,以减少输入的工作量 。
# adduser
Use option ``-silent"" if you don"t want see all warnings & questions.
推荐阅读
- FreeBSD 系统安装全过程
- FreeBSD网站平台建设全过程 第一步
- 84 FreeBSD连载:配置Apache服务器(1)
- 37 FreeBSD连载:DNS的体系结构
- FreeBSD中的物理内存管理
- 如何在FreeBSD4.9平台上安装Darwin Streaming Server 5.0
- 85 FreeBSD连载:配置Apache服务器(2)
- FreeBSD 6.2下安装监测软件MUNIN手记
- BIND 9 FREEBSD 5.2上安装配置DNS SERVER
- FreeBSD 5.2.1R Web Server架设实例过程
