Linux文件权限

一、文件为什么需要权限?

  • 保证系统安全。防止阿猫阿狗都可以使用root权限重启、删除用户和文件等操作。
  • 团队开发软件和数据共享

这里我想从系统安全和隐私角度说一下文件权限的重要性。虽然我们都在一台主机上工作,但是我不希望任何人看到我的日记之类的文件(私人权限);在团队开发过程中,隶属于一个团队的开发人员,可以访问、使用具有团队权限的文件(小组权限);此时有个来自其他小组的人员,这时候在阐述的就是非小组成员权限(其他权限)。当然Linux中有更加专业的名称,依次是所有者权限、小组其他人权限和其他组成员权限。这里有个非常bug的人员叫做root,就算是私人文件也没法保密。

二、一个例子理解文件属性

当我们在终端输入 ls -al可以看到如下的打印:
在这里插入图片描述
从左到右分别是:[权限][链接][所有者][用户组][文件大小(字节)][修改日期][文件名]

-rw-r--r-- 1 junw junw 3771 Dec 27 16:44 .bashrc这一行告诉我们文件的:

  • 权限 -rw-r--r--:一共十个字符,第一个代表文件类型。-文件,d目录、l连接、b可存储设备、c串行设备(鼠标键盘),之后的九个字符分为了三组,分别表示rwx可执行或者可进入,如果该项没有权限,则会用-占位;
  • 链接 1表示多少文件名链接到这个文件
  • 所有者 junw,文件的拥有者是junw
  • 用户组 junw,文件属于用户组junw
  • 文件大小(byte,B)3371,字节大小是3771
  • 修改日期 Dec 27 16:44 文件最近于十二月二十七日16点44分被修改
  • 文件名 .bashrc,文件名是.bashrc

三、如何改变文件权限?

我们通过三组命令来修改文件权限,分别时chgrp chown chmod,-R选项递归应用此规则。

chgrp users .bashrc  # 把.bashrc的组别改为users
chown bin .bashrc # 把文件的所有者改为bin

chmod有两种方式:数字设置或者字母。

  • 字母方式
    u g o a说明权限作用身份及其组合,user、group、other或all,权限是加入+ 去除- 还是设置=,设置的结果及其组合r w x
chmod go=rw u=x .bashrc # go 读写权 u 执行权
chmod a-x .bashrc #去除所有可执行权限
chmod a+x .bashrc # 所有的都增加可执行权

Tips:不写u g o a也可以,a是其默认值,最简单的应用就是给一个刚编好的脚本赋予可执行权限chmod +x eee.sh

  • 数字
    数字相对没有那么直观,但是如果你熟悉十六进制的话,相当好理解。权限一共就九个字符,假设有效为1,无效为0,那么这九个字符就可以转换成二进制,如rwxrwx-w-,对应的二进制为111111010换成十六进制则为772,使用命令完成权限设置:
chmod 772 .bashrc

因为三位二进制只能表示0-7的十六进制,So,所有权限开启的命令为chmod 777 .bashrc

四、目录的r w x

一个文件r w x权限表示可读、可写、可执行,对应目录则需要额外说明一下:

  • r 读取文件结构列表权限
  • w 修改文件结构列表权限
  • x 切换到此目录的权限

w权限体现在:

  • 新建文件和目录
  • 删除已存在的文件和目录
  • 重命名已存在的文件和目录
  • 转移目录内的文件、目录位置

[1] 鸟哥. 鸟哥的Linux私房菜,基础学习篇[M]. 人民邮电出版社, 2010.

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值