linux权限

一、权限概念

linux最优秀的地方之一,就在于他的多人多任务环境,为了让各个使用者具有保密的档案数据,因此档案的权限就变得很重要了。

Linux将档案身份分为owner \ grop \other 且这三个身份都有 read \write \ execute权限

linux下存在俩种用户:

超级用户(root):可以在linux下做任何事情,不受约束

普通用户:做有限的事情

命令:

su-用户名 :退出当前用户 登入新用户 当前路径不发生改变

su 用户名 :切换用户 当前路径为root路径

二、linux文件属性

ls -l指令查看文件的属性

1.文件的类型和访问属性

1)类型

在第一个标记中 d rwxrwxr-x

首位是d 代表文件类型 在linux下不以后缀区别文件类型

d:目录

-:普通文件

l:软链接,类似快捷方式

b:块设备文件 (硬盘、驱动)

p:管道文件

c:字符设备文件(键盘)

2)访问权限

rwx

对应:read \write \ execute 权限

r: 对于普通文件来说,可以查看文件的内容

对于目录,可以浏览该目录信息

一个内容为空的文件占内存吗?

占内存。文件数据=内容+属性 属性不存在不占内存

w:对于普通文件,具有修改文件内容和属性 文件的权限

对于目录,具有删除 创建目录目录内的权限

x:对普通文件,执行文件的权限

对目录来说,具有进入目录的权限

-:不具有该权限

三、文件访问权限设置方法

1.chmod

设置文件访问权限 格式:chmod 参数 权限 文件名

只有root和拥有者才能改变访问权限

用户符号;

u--user 拥有者

g--grop所属组

o--其它用户

例如:test1文件的访问权限是所有者可读可写不可执行 所属组是可读可写不可执行

修改所有者 为不可读不可写不可执行

输入指令 chmod u-rw test1.txt

修改所有者可读可写可执行

输入 chmod u+rwx text1.txt

利用二进制位修改

rwx 用二进制表示111换成八进制位7

rwx rwx rwx 分成三组用二进制表示位 111 111 111 换成八进制位 7 7 7

rw- rw- r-- 二进制表示 6 6 5

举例 修改test1.txt 为 rwx rwx rwx

输入指令 chmod 777 test1.txt

2.chowm chgrp

修改文件的所有者和所属组

chowm (-R递归修改)参数用户名 文件名

chgrp (-R递归修改)参数所属组 文件名

四、文件掩码umask

新建文件的权限应该是0666 实际是0664

新建的目录权限应该是0777 实际是0775

但是新建后往往不是这样 原因在于受到文件掩码的影响

实际创建的文件权限:mask&(~umask)

umask //查看权限掩码

umask 775 //修改权限掩码为775

计算方式

例如权限掩码为0002对于二进制位 000 000 010

一个新建文件的权限应该为 rw- rw- rw- 110 110 110

对权限掩码取反 111 111 101

& 110 110 110


110 110 100 ------ 6 6 4

五、粘滞位

在一个共享群组中,为了防止被文件被误删、错误删除,引入粘滞位 ,目录下文件只能创建不能删除

chmod 参数t 文件名

例如设置test位粘滞位

chmod +t test

总结:

linux下用户分为超级用户root和普通用户,root用户不受权限约束,一般在普通用户下进行操作。

一个普通文件和目录拥有读写执行权限,通过chmod可以修改文件权限,修改文件权限的方式有chmod 【参数】u/g/o rwx 也可以用8进制修改。

权限掩码umask 的修改方式

最后粘滞位的提供确保共享文件不被删除

相关推荐
七牛云行业应用15 分钟前
Ollama 本地部署 DeepSeek 完全指南:macOS / Windows / Linux 三端安装 + GPU 配置 + API 调用
linux·windows·macos
LedgerNinja16 分钟前
WEEX API 稳定性实战:限频、重试与风控的工程化清单
运维·区块链
ZJH__GO20 分钟前
网络编程v2--多客户端互通
java·运维·服务器·开发语言·计算机网络
Meya112737 分钟前
实时采集 + 全域可视化,打造跨站点机房一体化U位管理方案
大数据·运维·人工智能
Gofarlic_OMS1 小时前
NX浮动许可调度黑名单机制,对比两款谁更合理
java·大数据·运维·开源·制造
三言老师1 小时前
CentOS7.9:Redis服务器部署结构化实战教程
linux·运维·服务器·数据库
味悲1 小时前
Linux提权
linux·服务器·安全
无足鸟ICT2 小时前
【RHCA+】替换变量
linux
尘似鹤2 小时前
rk3506的uboot源码分析(三)
linux·uboot
闲猫2 小时前
Agent工程实践:从WorkFlow到多Agent协作的落地笔记
java·服务器·前端