Linux用户及权限基础

用户和组的概念
用户:每一个使用Linux的人都必须以一个用户的身份登入,每一个进程也必须以一个用户的身份运行。
说明:
    每个用户拥有一个userID,被操作系统识别和使用;
    每个用户属于一个主组,可属于最多31个附属组;
    每个可登陆的用户拥有一个指定的shell;

组:用来方便组织和管理用户。
说明:
    每个组拥有一个groupID;

用户的分类
    root用户:userID为0的用户
    系统用户:userID通常为1-499,没有指定shell
    普通用户:userID通常为500及以上

userID:32位,从0开始,但是为了和老式系统兼容,通常限制在60000以下。

用户和组相关的文件
/etc/passwd:保存用户信息
/ect/shadow:保存用户密码(加密的)
/etc/group:保存组信息

用户相关命令
查看信息类:
    id:显示当前用户的信息;
    whoami:显当前用户名;
    who:显示当前已登录的用户;
    w:显示当前已经登录的用户及这些用户正干什么;
    last:查看当前登陆和过去登陆的信息,信息来源于/var/log/wtmp,是一个二进制文件;
    lastlog:查看所有用户的最后一次登录的信息,信息来源于/var/log/lastlog,是一个二进制文件;

创建用户:
    useradd 参数 用户名
    参数:
    -d:指定家目录
    -s:指定登录shell
    -u:指定userID
    -g:指定登录主族
    -G:指定附属组,用“,”分割
    命令解析:使用useradd命令后会执行的操作
    在/etc/passwd中添加用户信息
    为用户创建一个家目录
    将/etc/skel中的文件复制到用户的家目录中(通常为隐藏文件)
    建议一个与用户名相同的组,是新建用户默认的主组

修改用户信息:
    usermod 参数 用户名
    参数:
    -l:用户名
    -u:userID
    -d:家目录
    -g:主组
    -G:附属组
    -L:锁定用户不能登录
    -U:接触锁定

修改密码:passwd 用户名

删除用户:
    userdel 用户名:删除用户,但保留家目录
    userdel –r 用户名:删除用户及其家目录

组相关命令
创建组:groupadd 组名

修改组信息:
    groupmod –n 新组名 组名:修改组名
    groupmod –g 新组id 组id:修改组id

删除组:groupdel 组名

Linux权限机制
权限:系统限制限制用户对资源访问的机制;

UGO
说明:Linux权限基于UGO模型进行控制(U:user,G:group,O:other)
    每个文件的权限基于UGO进行设置;
    针对每个对象,权限三个一组(rwx);
    查看文件和目录的详细权限:ls –l】
 
文件和目录的权限区别
权限    文件    目录
r    读取文件内容    读取下一级列表
d    修改文件内容    在目录中创建、删除文件
x    作为命令执行    是否可访问目录

权限相关命令
修改文件(目录)所属用户、组:
    chown 用户 文件(目录):修改文件(目录)所属用户(-R参数可在修改目录时进行递归修改)
    chgrp 组 文件(目录):修改文件(目录)所属组(-R参数可在修改目录时进行递归修改)

修改文件(目录)权限:
    命令:chmod 模式 文件(目录)
    模式1:
    u、g、o代表用户、组、其它(可用a统一指代);
    +、-表示增加或删除权限;
    r、w、x代表权限;
    模式2:
    r:4
    w:2
    x:1
    权限=r+w+x
    示例:
    模式1:chmod ug+rwx 文件(目录)
    模式2:chmod 777 文件(目录)

Linux默认、特殊权限
默认权限
umask:每个终端?都拥有一个umask属性,用来确定新建文件和目录的默认权限;

目录默认权限:777-umask
文件默认权限:666-umask
默认umask:普通用户002,root用户022

umask命令:
    umask:查看当前uamsk值
    umask 数字:设置当前umask

ACL权限
ACL权限:当文件或目录的UGO权限不能满足要求时使用。

查看分区的ACL权限是否开启:dunpe2fs –h partition,然后查看default mount options中是否有acl,如果没有则需重新挂载并启用acl


ACL相关命令:
    查看acl权限:getfacl file
    设定acl权限:setfacl option file
    -m:设定acl权限,setfacl –m u/g/:username/groupname:aclpermission file
    -x:删除指定用户或组的acl权限,setfacl –x u/g:user/group file
    -b:删除所有用户和组的acl权限,setfacl –b file
    d:设定默认的acl权限,针对目录生效,setfacl –m d:u/g:user/group:aclpermission file
    -k:删除目录所有的默认acl权限
    -R:递归设定acl权限
    mask权限:最大有效权限,查看acl权限会显示,mask与acl权限相与才是真正的acl权限,set –m m:aclpermission file

sudo权限(使用时需小心,防止赋予权限过大)
sduo权限:可以把root才能执行的命令赋予普通用户执行权限。

设置sudo:visudo:实际是编辑/etc/sudoers,添加记录
 

普通用户使用sufo命令:
    查看可用的sufo命令:sudo –l
    执行sudo命令:sudo command(建议使用绝对路径)

特殊权限
权限    文件    目录
Suid    以文件所属用户的身份执行,前提是命令执行者有执行权限    无
Guid    以文件是所属组的身份执行,前提是命令执行者有执行权限    普通用户在此组中的有有效组会变成目录的属组,前提是命令执行者有r和x权限
在该目录下创建新的文件或目录时,所属组与当前目录相同,前提是命令执行者有w权限
Sticky    无    对目录拥有写入权限的用户,只能删除所属用户是自己的文件或目录

特殊权限的设置:
    模式1:
    chmod u+s 文件:设置suid
    chmod g+s 文件(目录):设置guid
    chmod o+t 目录:设备sticky
    模式2:chmod 4位数权限(十进制) 文件(目录)
    suid=4
    guid=2
    sticky=1

chattr权限

 
 
 
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值