使用Linux时,需要以一个用户的身份登陆,从而限制一个使用者能够访问的资源;而组则是用来方便组织管理用户。
用户与组
•每个用户拥有一个UserID
•每个用户属于一个主组,属于一个或多个附属组
•每个组拥有一个GroupID
•每个进程以一个用户身份运行,并受该用户可访问的资源限制
•每个可登陆用户有一个指定的SHELL
系统中的文件都有一个所属用户及所属组,用户、组信息保存在以下三个文件中:
/etc/passwd 用户信息
/etc/shadow 用户密码
/edc/group 组信息
命令id用以显示当前用户的信息,命令passwd可以修改当前用户的密码;以下命令可以显示登陆用户信息:
whoami 显示当前用户
who 显示当前登陆的用户信息
w 显示登陆用户的详细信息
命令useradd添加一个用户:
useradd 用户名
-d 指定用户家目录
-s 指定用户登陆shell
-u 指定用户uid
-g 指定用户所属主组
-G 指定用户所属附属组
命令usermod修改一个用户的信息:
usermod 参数 用户名
-l 修改用户名
-u 修改uid
-g 修改用户主组
-G 修改用户附属组
-L 锁定用户
-U 解锁用户
例1:
# useradd -d /usr/sam -m sam
此命令创建了一个用户sam,其中-d和-m选项用来为登录名sam产生一个主目录/usr/sam(/usr为默认的用户主目录所在的父目录)。
例2:
# useradd -s /bin/sh -g group -G adm,root gem
此命令新建了一个用户gem,该用户的登录Shell是/bin/sh,他属于group用户组,同时又属于adm和root用户组,其中group用户组是其主组。
这里可能新建组:groupadd group 及 groupadd adm
增加用户账号就是在/etc/passwd文件中为新用户增加一条记录,同时更新其他系统文件,如/etc/shadow,/etc/group等。
Linux提供了集成的系统管理工具userconf,他能用来对用户账号进行统一管理。
注:
用户帐户本身在 /etc/passwd 中定义。Linux 系统包含一个 /etc/passwd 的同伴文件,叫做 /etc/shadow。该文件不像 /etc/passwd,只有对于 root 用户来说是可读的,并且包含加密的密码信息
命令userdel用户删除一个用户:
userdel 用户名
userdel -l 用户名 删除用户的同时删除该用户家目录
命令groupadd、groupmod用以创建、修改一个组:
groupadd 组名
groupmod -n 新组名 旧组名
groupmod -g 新组ID 旧组ID
例如:
# userdel -r sam
此命令删除用户sam在系统文件(主要是/etc/passwd,/etc/shadow,/etc/group等)中的记录,同时删除用户的主目录。
删除一个组
同样的,我们有时会需要删除一个组,命令groupde用以删除一个组