linux+系统优化基础,Linux入门基础(三):Linux用户及权限基础

用户基础

用户和组

每个用户都拥有一个userid

每个用户都属于一个主组,属于一个或多个附属组

每个组拥有一个groupid

每个进程以一个用户身份运行,受该用户可访问资源限制

每个可登陆用户拥有一个指定的shell

用户

userid为32位,从0开始,为了和老式系统兼容,用户id限制在60000以下

用户分为三种

-root用户(id为0的用户)

-系统用户(id为1~499的用户)

-普通用户(500以上)

系统中的文件都有一个所属用户及所属组

使用id命令可以显示当前用户的信息

使用passwd命令可以修改当前用户密码

相关文件

/etc/passwd 保存用户信息

/etc/shadow 保存用户密码(加密的)

/etc/group 保存组信息

查看登录的用户

命令whoami显示当前用户

命令who显示有哪些用户已经登陆系统

命令w显示有哪些用户已经登陆并且在干什么

创建一个用户

命令useradd用来创建一个用户

-d 家目录

-s 登陆shell

-u userid

-g 主组

-G 附属组(最多31个,用逗号分隔)

例如

useradd -u 600 -g group1 user1

这个命令会执行以下操作 :

在/etc/passwd中添加用户信息

如果使用passwd命令创建密码,则将密码加密保存在/etc/shadow中

为用户建立以个新的家目录/home/用户名

将/etc/skel中的文件复制到用户家目录中

建立一个与用户用户名相同的组,新建用户默认属于这个同名组

修改用户信息

命令usermod用来修改用户信息 -l 新用户名

-u 新userid

-d 用户家目录位置

-g 用户所属主组

-G 用户所属附属组

-L 锁定用户使其不能登录

-U 解除锁定

例如

usermod -u 700 user1

删除用户信息

命令userdel用以删除指定用户:

例如

#删除指定用户,保留用户家目录

userdel user1

#删除指定用户,同时删除用户家目录

userdel -r user1

几乎所有操作系统都有组的概念,通过组,我们可以更加方便的归类,管理用户

一般来件,我们使用部门,职能或地域的分类方式来创建使用组

每个组都有一个组id

组信息保存在/etc/group中

每个用户都拥有一个主组,同时还可以拥有最多31个附属组

创建组

命令groupadd用来创建组

例如

groupadd group1

修改组

命令groupmod用来修改组

例如

#修改组名

groupmod -n group2 group1

#修改组id

groupmod -g 601 600

删除组

命令groupdel用来删除组

例如

groupdel group2

权限机制

权限是操作系统用来限制对资源访问的机制

每个进程都以某个用户的身份运行,所以进程的权限和该用户的权限一样

文件权限

文件拥有三种权限 :

权限

对文件的影响

对目录的影响

r (读取)

可读取文件内容

可列出目录内容

w (写入)

可修改文件内容

可在目录中创建删除文件

x (执行)

可以作为命令执行

可访问目录内容

目录不许拥有x (执行权限) , 否则无法查看其内容

UGO模型

Linux权限基于UGO模型进行控制

U代表User , G代表Group , O代表Other

每一个文件的权限基于UGO进行设置

权限三个一组(rwx),对应UGO分别进行设置,总共9个 例如 rwxrwxrwx

每一个文件拥有一个所属用户和所属组,对应UG,不属于该文件的所属用户或组的使用O权限

修改文件所属用户和所属组

命令chown用以改变文件的所属用户

例如

#chown 用户名 文件名/文件夹

chown user1 /var/www/aaa

#-R 递归修改目录下所有文件

命令chgrp用以修改文件的所属组

例如

#chgrp 组名 文件名/文件夹

chgrp group1 /var/www/aaa

#-R 递归修改目录下所有文件

修改权限

命令chmod用以修改文件的权限 chmod 模式 文件

模式为如下格式 :

u,g,o分别代表用户,组和其他

a可以代指ugo

+,- 代表假如或删除对应的权限

r,w,x 代表三种权限

模式示例 :

#所属用户加入读写权限

chmod u+rw fileName

#所属组删除执行权限

chmod g-x fileName

#所属组和其他加入执行权限

chmod go+x fileName

#ugo都删除执行权限

chmod a-x fileName

chmod 也支持数字方式修改权限,分别由三个数字表示 -r = 4 (2^2) -w = 2 (2^1) -x = 1 (2^0) 使用数字表示权限时,每组权限分别对应数字之和 rw=4+2=6 rwx=4+2+1=7 r-x=4+1=5 所以,使用数字表示ugo权限使用如下方式表示: chmod 660 fileName == rw-rw---- chmod 775 fileName == rwxrwxr-x

扩展权限

默认权限

每一个终端都拥有一个umask属性,来确定新建文件 , 文件夹的默认权限

目录的默认权限:777-umask

文件的默认权限:666-umask

一般对于普通用户默认的umask是002,root用户的默认是022

新建文件的权限是:666-002=664

新建目录的权限是:777-002=775

命令umask用以查看 , 设置umask值

#查看

umask

#设置

umask 022

特殊权限

除普通权限外,还有三个特殊权限:

权限

对文件的影响

对目录的影响

suid

以文件的所属用户身份执行

sgid

以文件的所属组身份执行

在该目录中创建的任意新文件的所属组与该目录的所属组相同

sticky

对目录拥有写入权限的用户可仅可以删除其拥有的文件,无法删除其他用户所拥有的文件

设置特殊权限

设置suid:

chmod u+s fileName

即rwsrwxrwx

设置sgid:

chmod g+s fileName

即rwxrwsrwx

设置sticky:

chmod o+t fileName

即rwxrwxrwt

与普通权限一样,特殊权限也可以使用数字方式表示

- SUID = 4

- SGID = 2

- Sticky = 1

所以可以通过一下命令 设置

chmod 4755 fileName

即rwsrwxrwx

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值