Linux系统用户账号的管理
在系统中创建一个新账号,然后为新账号分配用户号、用户组、主目录和登录Shell等资源。刚添加的账号是被锁定的,无法使用。
- 添加:useradd 选项 用户名
其中各选项代码含义如下::
-c comment 指定一段注释性描述。
-d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。
-g 用户组 指定用户所属的用户组。
-G 用户组 指定用户所属的附加组。
-s Shell文件 指定用户的登录Shell。
-u 用户号 指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。
例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等。
-
删除: userdel 选项 用户名
常用的选项是-r,它的作用是把用户的主目录一起删除。
userdel sam
此命令删除用户sam在系统文件中(主要是/etc/passwd, /etc/shadow, /etc/group等)的记录,同时删除用户的主目录。 -
修改: usermod 选项 用户名
#常用的选项包括-c, -d, -m, -g, -G, -s, -u以及-o等,这些选项的意义与useradd命令中的选项一样,可以为用户指定新的资源值。另外,有些系统可以使用如下选项:
代码: -l 新用户名
#这个选项指定一个新的账号,即将原来的用户名改为新的用户名。
usermod -s /bin/ksh -d /home/z –g developer sam
#此命令将用户sam的登录Shell修改为ksh,主目录改为/home/z,用户组改为developer。 -
用户账号口令的管理
账号刚创建时没有口令,被系统锁定,无法使用,必须为其指定口令后才可使用,即使是指定空口令。指定和修改用户口令的命令是passwd。超级用户可为自己和其他用户指定口令,普通用户只能用它修改自己的口令。命令的格式为:
passwd 选项 用户名
可用选项:
-l 锁定口令,即禁用账号,不能登录。
-u 口令解锁。
-d 使账号无口令,登录时,系统不需口令及登录。
-f 强迫用户下次登录时修改口令。
注意:如果不输入用户名,即默认用户名,则修改当前用户的口令。如下面的命令修改该用户自己的口令:passwd
Old password:******
New password:*******
Re-enter new password:*******
超级用户,可以用下列形式指定修改用户sam的口令:passwd sam
New password:*******
Re-enter new password:*******
注意:
普通用户修改自己口令,会询原口令,验证后再输入两遍新口令,一致则将该口令更新给用户;而超级用户为用户指定口令时,不需要输入原口令。为安全起见,口令最好使用8位长口令,口令中包含有大写、小写字母和数字,并与姓名、生日等不同。passwd -d sam
#为用户用户sam指定空口令,下一次登录时,系统就不再询问口令。
passwd命令还可以用-l(lock)选项锁定某一用户,使其不能登录,例如:passwd -l sam
通过cat /etc/passwd 可以查看用户的pass
cat /etc/shadow 可以查看用户名
cat /etc/group 可以查看 组
2 Linux系统用户组的管理
每个用户都有一个用户组,系统可对一个用户组中的所有用户进行集中管理。不同Linux 系统对用户组的规定有所不同,如Linux下的用户属于与它同名的用户组,这个用户组在创建用户时同时创建。
用户组的管理涉及用户组的添加、删除和修改。实际是对/etc/group文件的更新。
添加用户组: groupadd 选项 用户组
可用选项:
-g GID 指定新用户组的组标识号(GID)。
-o 一般与-g选项同时使用,表示新用户组的GID可以与系统已有用户组的GID相同。
# groupadd -g 101 group2
向系统中增加一个新组group2,同时指定新组的组标识号是101。
- 删除用户组: groupdel 用户组
- 修改用户组属性:groupmod 选项 用户组
常用选项:
-g GID 为用户组指定新的组标识号。
-o 与-g选项同时使用,用户组的新GID可以与系统已有用户组的GID相同。
-n新用户组 将用户组的名字改为新名字
groupmod -g 102 group2
#此命令将组group2的组标识号修改为102。
groupmod –g 10000 -n group3 group2 # 将组group2的标识号改为10000,组名修改为group3。
- 切换用户组:一个用户同时属于多个用户组,那么登录后,可在用户组之间切换,以便具有其他用户组的权限。使用命令newgrp切换到其他用户组。例如:
newgrp root # 将当前用户切换到root用户组,前提条件是root用户组确实是该用户的主组或附加组。
权限分配
chown -R hadoop:hadoop /usr/hadoop/
让普通用户拥有root的权限
1.root登录
2.修改/etc/passwd即可,把普通用户名的ID和ID组修改成0。******
3 linux用户用户组相关配置
/etc/group:储存当前系统中所有用户组信息
group: x:123:abx,def,xyz
组名称:组密码占位符:组编号:组中用户列表
1.在linux中,root用户组的编号一定是0
2.组号1~499是系统预留的组编号,一般是预留给安装在这个操作系统中的软件或服务的,比如在服务器上安装了MySQL数据库,那么就会自动的带用户组的列表中创建一个叫做mysql的用户组,并且在1~499中拿一个编号来用,越早安装分配的组号越小
3.用户手动创建的用户组的组号是从500开始的
/etc/gshadow:存储当前系统中用户组的密码信息
group:*::abx,def,xyz
组名称: 组密:组管理: 组中用户列表
/etc/passwd:存储当前系统中所有用户的信息
root: x:0:0:root:/root:/bin/bash
1-用户名:2-密码占位符:3-用户编号:4-用户组编号:5-用户注释信息:6-用户主目录:7-shell类型
root的用户编号一定是0
/etc/shadow:存储用户密码的文件(一般密码是被一种单向加密方法加密的,所以看到的不是原始的密码)
user: vf;/Zushs… ::::::
用户:名密::::::