用户是什么?
用户是一个身份,是系统操作者的代称
为什么需要用户?
对Linux而言,没有用户也能正常运行,linux是多用户多任务的操作系统,这意味着会有很多人同时操作一个系统,这样就需要身份来识别操作者,进而对每一个或者某类用户进行权限划分
权限是什么?
对计算机而言,权限就是用户可执行操作的能力范围
为何需要权限?
系统安全是第一要素,划分权限能够有避免普通用户错误操作对系统的影响,能够使用管理员账号的人必须对系统有充分的了解,在执行操作之前明确自己在干什么,操作会产生的影响
进程也需要权限,管理系统,其实我们做的只是启动一个程序为进程帮我们管理,进程的权限就是启动进程用户权限
权限模型;
可读;r
可写;w
可执行;x
系统身份的划分
用户;user
组;group
文件所属;
属主;owner
属组:group
其他:other
文件所属3类中每一类都对应的人r,w,x权限模型
用户管理命令:
useradd;添加用户
useradd [OPTIONS] USERNAME
-u:指定用户uid
-g;指定用户gid(所指定的组需要事先存在)
-G;指定用户的附加组(所指定的组需要事先存在)
-s;指定默认shell
-r;创建系统用户
-d;指定用户家目录
-c;设置备注信息
groupadd;添加组
group [OPTIONS] GROUPNAME
-g;指定gid
usermod;用户信息修改
usermod [OPTIONS] USERNAME
-u;修改uid
-g;修改gid
-G;修改附加组(会覆盖原有附加组,添加则需加-a)
-d;修改家目录(同时使用-m选项一同把配置文件移过去)
-l;修改新的登陆名字
-s;修改默认shell
-e;修改密码的过期时间
-f;修改用户非活跃期限时间
-L;锁定用户
-U;解锁用户
关于用户密码的几个期限;
最长使用期限;密码的有效期
最短使用期限;密码再次修改的最短时间
密码过期提示时间;这个时间是在‘密码最长使用时间’前的一段时间,开始提示修改密码
用户非活跃期限;指的是密码过期后,登陆强制要求用户修改密码的时间,在这段时间内,只要用户登陆系统,则会被强制修改密码,否则不允许登陆
groupmod;组修改
groupmod [OPTIONS] GROUPNAME
-g;修改gid
-n;修改新组名
userdel;删除用户
userdel [OPTIONS] USERNAME
-r;一同删除家目录(默认不删除家目录)
groupdel;组删除
groupdel GROUPNAME
passwd;修改密码
passwd [OPTIONS] USERNAME
-l;锁定用户密码,无法登陆
-u;解锁用户密码
-e;直接使用户密码过期进入非活跃期限
gpasswd;组密码设置和管理
gpasswd [OPTIONS] GROUP
-a;添加一个用户进某个组
-d;把某个用户从某个组删除
-r;删除组密码
newgrp;登陆至新组(需要获得组密码)
newgrp GROUP
只对当前登陆的进程有效,登出后则恢复原基本组
chsh;改变默认shell
chsh [OPTIONS] [USERNAME]
-s;修改默认shell
-l;列出当前系统的shell
chfn;设置用户信息
chfn [-f full-name] [-o office] ,RB [ -p office-
phone] [-h home-phone] -u] [-v] [username]
su;切换用户
su [-] username
加-表示加载用户配置文件
例子;
1.添加用户hadoop,指定其家目录为/testhome,uid=1200 附加组为testgroup,默认shell为tcsh
2.修改用户hadoop,把家目录和用户配置文件一同移到/home/newhome,更改其默认shell为bash,添加一个附加组为newgroup
3.登陆到bash组
4.删除用户hadoop,一同删除家目录
权限管理命令;
chown;修改文件属主(也可同时修改属组)
chown [OPTIONS] OWNER[:GROUP] FILE...
chown [OPTIONs] --reference=RFILE FILE...
chgrp;修改文件属组
chgrp [OPTIONS] GROUP FILE...
chown [OPTIONS] --reference=RFILE FILE...
chmod;修改文件权限(三种赋权模式)
(1)chmod [OPTIONS] MODE[,MODE]... FILE...
u;user属组
g;group属组
o;other其他用户
a;all所有
基于u,g,o,a赋权,使用=,+,-来进行
=;指定用户类型的权限
+/-;用户的单个权限位
(2)chmod [OPTIONS] OCTAL-MODE FILE...
使用3位8进制数字权限模型来赋权
--- 0
--x 1
-w- 2
-wx 3
r-- 4
r-x 5
rw- 6
rwx 7
(3)chmod [OPTIONS] --reference=RFILE FILE...
参照其他文件权限来赋权当前的文件
umask;权限遮罩码
文件遮罩码;666
目录遮罩码;777
用户遮罩码;# umask
用户自己创建的文件默认不允许有执行权限,若文件遮罩码减去用户遮罩码,权限位出现执行,则在权限为结果上+1,是执行权限失效
例子;
1.将tmp/testfile的属主和属组修改为root
2.将/tmp/new_passwd的属组权限改为rwx,属组改为rw,其他用户没有权限
3.用八进制权限模型修改/tmp/passwd文件权限为属主为可读可执行,属组为可读可写,其他用户为可读
4.依照/tmp/rc.sysinit的权限模型修改/tmp/new_passwd文件权限
本文出自 “Rock blog” 博客,请务必保留此出处http://johnsonxu.blog.51cto.com/11214707/1750622
原文地址:http://johnsonxu.blog.51cto.com/11214707/1750622