Linux基本权限学习
概念
权限就是用户对资源所能进行的操作 -- 这里涉及到三个重要的概念:用户、资源、操作。
首先,Linux中用户分为:u、g、o,就是用户、用户组、其他用户。--这里的用户是指拥有者!!!务必记住!
其次,Linux中一切皆文件,所以Linux中的资源就是文件。(姑且这么说吧)
最后,Linux中文件的权限分三种:r、w、x,就是读、写、执行。
另外,二进制权限,r、w、x分别对应4、2、1,所以权限可以使用数字表示或者赋予。例如,读权限对应4;读写权限对应6;读执行权限对应5;读写执行权限对应7。
Linux中文件的默认权限为666,即可读写,但不能执行,但还有一个umask值,所以实际的默认权限是由二者结合而成。
部分资料认为是666-umask,这不对,因为umask可能含有666没有含有的值。举个例子,666-0033=633,这不对,因为默认不能含有x权限!如果非要相减,需要将umask-0011才可以,就是去掉可执行权限。
最直接的计算方法是,将666和umask转成rwx形式,然后相减即可。
Linux中目录的默认权限为777,可读写可执行,同样需要结合umask才能得出实际的默认权限!!!
umask 可以临时修改值,永久更改需要在环境变量中设置:/etc/profile
查看
通过 ls -l 命令就可以查看某个文件的权限信息:
[root@localhost ~]# ls -l
总用量
-rw-------. root root 12月 : anaconda-ks.cfg
-rw-r--r--. root root 12月 : install.log
-rw-r--r--. root root 12月 : install.log.syslog
解析
以上面的 install.log 文件的信息为例,其权限部分 -rw-r--r--. 。长度12,可以这样划分 1 + 3 + 3 + 3 + 1。
第一位代表文件类型:-代表文件,d代表目录,l代表连接,等等。
之后的三组三位分别对应用户、用户组、其他用户的读写执行权限;
最后一位与ACL有关,暂略。
更改权限
chmod命令
有多种形式:
chmod u+rwx,g+r,o+r file
chmod u=rwx,g=r,o=r file
chmod a=rx file chmod file
熟练之后推荐使用数字形式!
另外,-r 选项表示递归,用于设定目录下面的所有文件的权限。
特殊
对于文件(与目录相对)来说,读写执行权限很好理解;但对于目录来说,则不那么容易理解。
举个例子,假定有一个目录 ~/dir/,给你的权限是w写权限,那么你无法删除该目录、以及目录下的文件!
原因涉及到底层知识,暂略。
总之,Linux中,对文件来说最重要的是x权限,但对目录来说,最重要的是w权限。
就是说,对目录来说,只有0、5(rx)、7(rwx)才有效。
Linux基本权限学习的更多相关文章
- Linux文件权限学习总结
一.用户对文件或目录都有哪些权限? 四种:读.写.执行.没有权限 二.如何表示这四种权限? 如果用十进制数字表示,分别为:4.2.1.0:如果用字符表示,分别为:r.w.x.-.个人觉得,使用chmo ...
- Linux文件权限学习笔记
文件权限共10个字符,第一个字符表示该文件是[文件夹]或[文件]——如果是字符“d"则表示该文件是文件夹:如果是字符“-”则表示是文件. 后九个字符,三个一组,共三组,分别表示[所有者权限] ...
- Linux用户、用户组、文件权限学习笔记
最近打算更仔细学习一下linux操作系统.先是恶补了一下用户.用户组.文件权限这三样比较重要的知识.学习这几样东西,得先掌握linux的权限系统相关知识.linux的权限系统主要是由用户.用户组和权限 ...
- linux用户权限相关内容查看
linux用户权限相关内容查看 1 用户信息 创建用户一个名为 webuser 的账号,并填写相应的信息: root@iZ94fabhqhuZ:~# adduser webuser Adding ...
- 20135231 —— Linux 基础入门学习
20135231 何佳 学习计时:共12小时 读书:5 代码:2 作业:2 博客:3 一.学习目标 1. 能够独立安装Linux操作系统 2. 能够熟练使用Linux系统的基本命令 3. 熟练使用Li ...
- Linux文件权限;ACL;Setuid、Setgid、Stick bit特殊权限;sudo提权
相关学习资料 http://blog.sina.com.cn/s/blog_4e2e6d6a0100g47o.html http://blog.csdn.net/aegoose/article/det ...
- Linux系统新手学习的11点建议
随着Linux应用的扩展许多朋友开始接触Linux,根据学习Windwos的经验往往有一些茫然的感觉:不知从何处开始学起.这里介绍学习Linux的一些建议. 一.从基础开始:常常有些朋友在Linux论 ...
- Linux进程间通信IPC学习笔记之有名管道
基础知识: 有名管道,FIFO先进先出,它是一个单向(半双工)的数据流,不同于管道的是:是最初的Unix IPC形式,可追溯到1973年的Unix第3版.使用其应注意两点: 1)有一个与路径名关联的名 ...
- Linux 文件权限总结
在 Linux 中最基本的任务之一就是设置文件权限.理解它们是如何实现的是你进入 Linux 世界的第一步.如您所料,这一基本操作在类 UNIX 操作系统中大同小异.实际上,Linux 文件权限系统就 ...
随机推荐
- Geometry Stage in Rendering pipeline (读书笔记2 --- Real-Time rendering)
Geometry Stage一般包含下面几个阶段 1. Model & View Transform(模型和视图变换) --- 模型空间--> 世界空间 模型变换:每个模型经过模型变换来 ...
- 常量函数、常量引用参数、常量引用返回值[C++]
1. 关于常量引用正像在C语言中使用指针一样,C++中通常使用引用 有一个函数... foo()并且这个函数返回一个引用...... & foo()...., 一个指向位图(Bitmap)的引 ...
- jfinal相关
1:jfinal工具类 1):密码加密工具 HashKit.md5(String password);2):数据缓存工具类 chacheKit3):获取项目路径工具类: PathKit 4):读取文件 ...
- 稳定灵活的 HTML 列式布局
主要特点: 所有列轻松实现相同高度 兼容性极高 ------------------------------------------------ 代码 ------------------------ ...
- python几个重要的模块备忘
一:模块使用方法 二:时间模块time 三:系统接口模块os和sys 四:数据保存的几个模块json,pickle,xml,configparse 五:数据复制移动模块shutil 六:日志模块log ...
- curl post方法
* [curl_post curl post方式请求接口] * @param [type] $url [接口的url] * @param [type] $data [传递的参数] * @return ...
- linux 获取线程号
#include <sys/types.h> pid_t gettid(void); 如果系统库里没有,则可以这样做: #include <sys/syscall.h> pid ...
- ycm添加自定义补全路径
修改~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp/ycm/.ycm_extra_conf.py的flags变量 未改前如下: flags = [ ...
- ORM即 对象-关系映射(转自:微冷的雨)
ORM即 对象-关系映射: 将数据库中的数据关系表,映射为实体对象. 灵动思绪EF(Entity FrameWork) 作者: 微冷的雨 来源: 博客园 发布时间: 2013-01-22 16:2 ...
- 如何使用Javascript判断浏览器终端设备
WEB开发中如何通过Javascript来判断终端为PC.IOS(iphone).Android呢? 可以通过判断浏览器的userAgent,用正则来判断手机是否是ios和Android客户端 var ...