转发地址: http://hi.baidu.com/odba/blog/item/a1a88f519b11038e8d543047.html
linux用户和组帐户管理
2007-05-23 11:07
这是学习linux的基础了,往往我们忽视了他们,在此记录一下:
一、帐户概述
1、帐户实质
Linux操作系统是一个多用户的操作系统,它允许多个用户同时登陆到系统上,使用系统资源。系统根据帐户来区 分每个用户的文件、进程、任务,给每个用户提供特定的工作环境(如用户的工作目录、Shell版本以及X-Window环境的配置等),使每个用户的工作 都能独立不受干扰地进行。
2、用户和组
从广义上讲,Linux帐户包括用户帐户和组帐户。
l 用户帐户
Linux上的用户帐户有两种:普通用户帐户和超级用户帐户(root)。
Ø 普通用户帐户
普通用户帐户在系统上的任务是进行普通工作,
Ø 超级用户帐户
管理员在系统上的任务是对普通用户和整个系统进行管理。管理员帐户对系统具有绝对的控制权,能够对系统进行一切操作。
l 组帐户
组是用户的集合,在系统中组有两种:私有组和标准组,当创建用户的时候,没有为其制定属于哪个组,Linux就 会建立一个和用户同名的私有组,此私有组中只含有该用户。若使用标准组,在创建新用户时,为其制定属于哪个组。当一个用户属于多个组时,其登陆后所属的组 称为主组,其他的组称为附加组。
二、Linux环境下的帐户系统文件
Linux环境下的帐户系统文件主要有/etc/passwd、/etc/shadow、/etc/group、/etc/gshadow四个文件。
1、/etc/passwd
/etc/passwd每行定义一个用户帐户,此文件对所有用户可读。一行又划分为多个字段定义用户帐号的不同属性,名字段间用“:”分隔。
表:/etc/passwd文件中各字段的含义
2、/etc/shadow
/etc/passwd文件对任何用户均可读,为了增加系统的安全性,用户的口令通常用shadow passwords保护。/etc/shadow只对root用户可读
表:/etc/shadow文件中各字段的含义
3、/etc/group
将用户进行分组是Linux对用户进行管理及控制访问权限的一种手段。一个组中可以有多个用户,一个用户也可以属于多个组。该文件对所有用户可读。
表:/etc/group文件中各字段的含义
4、/etc/gshadow
该文件用于定义用户组口令、组管理员等信息,该文件只有root用户可读。
表:/etc/gshadow文件中各字段的含义
三、在图形界面下管理帐户
1、创建用户帐户
打开‘主菜单’-‘系统设置’-‘用户和组群’-‘用户’,在该界面下输入:
Ø 用户名
Ø 全称
Ø 口令
Ø 登陆Shell
Ø 宿主目录
Ø 用户ID
Ø 私有组
2、创建组帐户
打开‘主菜单’-‘系统设置’-‘用户和组群’-‘组’,在该界面下输入:
Ø 组名
Ø 组的ID号
Ø 组成员
3、修改用户帐户和组帐户
四、使用命令行工具管理帐户
1、用户帐户维护命令
useradd (用户名) 创建默认新用户
useradd –g(组名)(用户名) 创建用户帐户时加入某个组
useradd -s(shell名)(用户名) 创建用户帐户时指定shell
useradd -d(用户目录)(用户名) 创建用户帐户时指定用户目录
useradd -u(UID号)(用户名) 创建用户帐户时指定UID号
useradd -p(口令)(用户名) 创建用户帐户时指定口令
usermod –g(组名)(用户名) 修改用户加入某个组
usermod -s(shell名)(用户名) 修改用户shell
usermod -d(用户目录)(用户名) 修改用户目录
usermod -u(新UID号)(用户名) 修改用户UID号
usermod -p(口令)(用户名) 修改用户口令
usermod -l(新登陆名)(旧登陆名) 修改用户登陆名
usermod -L(用户名) 锁定用户帐号
usermod -U(用户名) 解锁用户帐号
userdel(用户名) 删除用户帐号
userdel -r(用户名) 删除用户帐号时删除用户目录
2、组帐户维护命令
groupadd(组帐户名) 创建新组帐户
groupadd -r(系统组帐户名) 创建系统组帐户
groupmod -g(新GID)(组帐户名) 更改组的GID号
groupmod -n(新的组名)(旧的组名) 更改组帐户名
groupdel(组帐户名) 删除指定的组帐户
3、口令维护命令
passwd(用户帐户名) 设置用户口令
gpasswd -a(用户帐户名)(组帐户名) 将用户添加到指定组
gpasswd -d(用户帐户名)(组帐户名)将用户从指定组中删除
gpasswd -A(用户帐户名)(组帐户名)将用户指定为组的管理员
4、用户和组状态命令
su(用户名) 切换用户帐户
id(用户名) 显示用户的UID、GID
whoami 显示当前用户的名称
groups(用户名) 显示用户所属的组
newgrp(用户所属的组帐号) 转换用户的当前组到制定的组
|