用户与用户组

http://hi.baidu.com/bin71722/blog/item/10213bceaf6d650693457e10.html


UNIX系统每个用户都具有一个唯一的标识,以及其他若干属性以区别于其他用户。

一般UNIX系统中的用户可以分为三类:超级用户(root),管理用户和普通用户。

超级用户是一个用户标识号为0的特殊用户,拥有最高的访问权限。

管理用户用于运行一定的系统服务程序,维护相应的系统功能。这些用户的ID号处于1~99的范围之内。

除了超级用户和管理用户,其他访问系统的用户均为普通用户。

在安装UNIX系统之后,系统就已经事先创建了若干系统用户帐户,其中包含:超级用户root、管理用户bin,sys,和admin等。用于执行不同类型的系统管理和日常维护任务。

用户帐号信息是由/etc/passwd和/etc/shadow文件维护的。这两个文件中,每个 用户都有一个相应的记录。当利用控制台终端注册时,用户按照系统提供输入用户和密码之后,系统将会根据用户提供的用户名检查/etc/passwd文件, 然或根据用户提供的密码,利用同一加密算法加密后与/etc/shadow文件中的密码字段进行比较,同时检查其他诸如密码有效期等字段。如果通过验证, 按照passwd文件指定的主目录和命令解释程序,用户即可进入字节的主目录。

passwd文件的格式:
username:password:uid:gid:comment:home-dir:login-shell
username是注册的用户名。有1-8个字母和数字组成,第一个字符为字母。
password为用户密码,如果用户设有密码则该字段包含小写字母x,如果这个字段为空则说明用户没有设置密码。
uid用户标识,用户标识是系统或系统管理员分配给每个用户的一个唯一标识。范围为0-6002,其中0-99保留作为系统管理用户使用。
gid用户组ID,每个用户组除了有组名之外,也有一个用户组ID号,用户组ID号的范围0-6002,同样0-99保留作系统用户组使用。
comment是注释信息。
home-dir指定用户的主目录,是用户注册后使用的起始工作目录。
login-shell指定用户注册后使用的shell,即命令解释程序。


1增加用户
增加用户可是编辑/etc/passwd系统文件,也可以 使用useradd命令。useradd命令的语法格式:
useradd [-u uid] [-g group] [-d home_dir] [-s shell] [-c comment] [-m [-k skel_dir]] [-f inactive] [-e expire]
-u uid用于指定新增用户的ID号,默认是在当前分配的最大ID号加1。
-g group用于指定一个现有用户组的ID号或用户组号。
-d home_dir用于指定新增用户的主目录。默认情况下用户主目录为/home/username
-s shell指定用作命令解释程序的shell的完整路径名。默认使用 /bin/sh作为命令解释程序。
-c comment用于提供一个注解字段。
-m如果不存在,创建一个新的用户主目录。
-k skel_dir,指定一个含有用户初始化文件(.profile)的目录,以便useradd命令把其中文件复制到用户的主目录。默认系统将会提供一个标准的.profile。
-f inactive,指定相应的用户最多多少天不访问系统仍保证其注册帐户的有效。
-e expire,指定注册用户的有效期即截至日期。有效日期的格式以/etc/datemsk文件为准,如:10/06/08

2修改用户
修改用户可编辑/etc/passwd文件也可以使用usermod命令:
usermod [-u uid] [-g group] [-d home_dir] [-s shell] [-c command] [-f inacive] [-e expire] [-l new_logname] loginname
-l是指定一个新的注册用户名。

3删除用户
可以编辑/etc/passwd文件删除用户也可以使用userdel命令:
userdel [-r] loginname

4定期修改用户密码
普通用户使用不带任何选项和参数的passwd命令修改自己的密码,而超级用户则可以利用此命令的选项来维护系统中的帐号信息。
passwd -f user_id,强制指定的用户在下一次注册时更换密码。
passwd -l user_id,封锁指定用户的密码,拒绝用户在此注册。
passwd -u name,接触被封锁的用户注册帐号。

5id命令给出当前用户的user_id,group_id信息。

6设置用户初始化脚本
用户主目录中的.profile为用户初始化文件。用户初始化文件是一个Shell脚本,其中包含每次注册后用户希望执行的命令,在用户注册到系统之后,用户设置用户的工作环境。

shell环境
每个shell均维护一组由login程序、系统初始化文件和用户初始化文件定义各种变量。
环境变量:可用于shell調度的所有进程的比哪里称为环境变量。使用env或set命令可以查阅这些变量的情况。
shell本地变量:仅对当前shell有效的变量称为本地变量。在Bourne和Korn Shell中,Shell本地变量和环境变量均统一采用大写字母。

PATH变量
shell将利用给定的路径检索命令,按照PATH变量指定的目录顺序检索命令。

7增加和删除用户组
UNIX支持用户组的概念。每个用户都从属于某个用户组,同组用户具有相同的用户组访问权限。此外,每个用户还可以与一个或多个次用户组相关联,这样可以与其他用户组共享数据和组访问权限。

UNIX系统中,所有的用户组有关的信息通常均存储在/etc/group系统文件中,文件的每一行定义一个用户组,其语法格式:
groupname:password:groupid:user-list
groupname,用户组的名字,组名由1-8个字符组成。
password,通常为空或星号(*)。
groupid,用户的ID号。
user-list,用户列表其中包含一系列用户中间用逗号隔开,每个用户最多可以从属于15个次用户组。

为了在系统中编辑用户组可以在系统中编辑/etc/group 文件,也可以使用groupadd命令:
/usr/sbin/groupadd [-g gid] groupname
-g gid,用于指定用户组的ID号。用户组ID号必须是一个非负的整数,在100-6002之间,0-99保留作系统用户组使用。

8使用who命令
who(/usr/bin/who)命令输出当前已注册到系统中的所有用户列表。

who -a,读取并显示/var/adm/utmpx文件记录的所有用户的活动数据。

finger username,命令用于显示用于注册名及全名,所有终端的设备号,空闲时间,注册时间或远程主机名等。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值