linux系统是在纯命令行下是实现对系统的管理的,命令的常见格式是:
COMMAND [OPTIONS] Paratemeter,选项修正命令,命令再作用与参数。
转入正题,对于计算机来说,用户只是以一个数字的形式存在于其中,用户的每一次登陆都需要认证(Authenticacion)以及之后授权(Authorization),这些机制的存在,都需要在计算机种维护特殊的数据库来实现,分别是/etc/passwd、/etc/shadow、/etc/group、/etc/gshadow。下面来具体说明一下用户管理及其权限的设置。
/etc/passwd:维护着用户的详细信息
/etc/shadow:维护着用户的密码信息
/etc/group: 维护着组的详细信息
/etc/gshadow:维护着组的密码信息
useradd -D:显示用户登陆的默认信息
useradd -D [OPTION] LOGIN:修改用户登陆的默认信息,具体参数可以参照useradd
useradd
useradd [OPTION] LOGIN
-u:指明用户的UID
-g:指明用户的GID
-r:创建系统用户,不做登陆使用,且没有家目录
-M:不创建用户的家目录
-G:指明用户的附加组
-d:指明用户的家目录
-c:标明注释信息
usermod:
userod [OPTION] LOGIN
-u:修改用户的UID
-g:修改用户的组ID
-s:修改用户的shell
-aG:追加新的附加组
-md:将用户的家目录转移至新的目录
-l:修改用户名
-L:锁定用户密码
-U:解锁用户密码
userdel
userdel [OPTION] LOGIN
-r:删除用户及其家目录
组是用户的集,实现了对一类用户的统一管理,下面说明组的基本命令
groupadd
groupadd [OPTION] group_name
-g:指明组ID
-r:创建系统组
groupdel
groupdel LOGIN
groupmod
groupmod [OPTION] GROUP_NAME
-g:修改组ID
-n:修改组名
实现了用户组的基本设置之后,了解一下用户的权限设置命令。对于任何一个linux上的文件来讲,对其有权限的用户有三类:属主、属组和其他用户,这三类用户对此文件有着不同的权限,而每一类用户的权限又分为读(r)、写(w)、执行(x)三种。遵循这样的规则:当系统的登陆用户是文件的属主时,对应权限的前三位,当登陆用户属于文件的属组时,对应权限的中三位,不是上述俩种情况时,对应权限的后三位。
chmod
赋值表示法
chmod [OPTION]... MODE[,MODE]... FILE...
数字表示法
chmod [OPTION]... OCTAL-MODE FILE...
常用的OPTION
-R:递归修改权限,修改目录下所有文件的权限
chown
chown [OPTION]... [OWNER][:[GROUP]] FILE...
常用的OPTION
-R:递归修改权限,修改目录下所有文件的权限
注意:用户能修改的权限的文件的属主必须是系统登陆的用户自己(root除外)
实现了权限管理之后,就是密码管理
passwd
passwd [OPTION] [--stdin] username
-l:锁定用户的密码
-u:解锁用户的密码
-d:删除用户密码
-n:修改用户密码的最短使用期限
-x:修改用户密码的最长使用期限
w:修改用户密码的警告期限
-i:修改用户密码的非活动期限
-e:修改用户密码的终止日期
设定用户密码有俩种方式
1、passwd USERNAME
2、echo "PASSWORD" | passwd --stdin USERNAME