行文结构如下:

  1. 用户和用户组
  2. Linux文件权限概念
  3. Linux目录配置
  4. 重点回顾

1、用户与用户组

Linux是个多用户、多任务的系统,可能有多人同时使用这台机器进行工作,为了考虑每个人的隐私和工作环境,“文件所有者”角色既用户角色显得相当重要。另外,如果有2个组同时在一台机器上开发,但是这2个组有竞争关系。需要相互隔离对方,杜绝访问自己的资源,但是自己组成员可以访问本组资源。这就引出了用户与用户组的概念。

在Linux系统中,每一个文件都有用户(User)、用户组(Group)、其他人(Others)3中个别权限。当然,从角色角度来看,还有一个终极Boss,那就是root,Root权限可以去系统中任意想去的地方。所以在使用root操作时,要小心误操作。

Linux系统中账号都记录在/etc/passwd文件内,个人密码记录在/etc/shadow,组名记录在/etc/group内,不要随便删除这3个文件。

2、Linux文件权限概念

2.1、Linux文件属性

文件属性表示该文件的类型,是否可读、可写、可执行。比如下图:

是Linux根目录下的文件

  1. dr-xr-xr-x. 24 root root 4096 Sep 22 16:06 .
  2. dr-xr-xr-x. 24 root root 4096 Sep 22 16:06 ..
  3. -rw-r--r-- 1 root root 0 Sep 11 12:53 .autofsck
  4. -rw-r--r-- 1 root root 0 Nov 9 2016 .autorelabel
  5. dr-xr-xr-x. 2 root root 4096 Nov 9 2016 bin
  6. dr-xr-xr-x. 4 root root 4096 Nov 10 2016 boot
  7. drwxr-xr-x 2 root root 4096 Nov 9 2016 data

上面的前十位表示该文件的权限内容,第一个[d]表示这是一个目录[-]表示这是一个文件,后面的三个三个一组,从左到右分别表示用户的权限用户组的权限其他人的权限[r]表示可读[w]表示可写[x]表示可执行[-]表示此项权限不存在

紧接着的数字表示连接数,之后的root,root表示文件所属的用户和文件所属的用户组的名称。之后的数字表示这个文件的大小。再后面是文件的最后修改时间,最后是文件的名称。

TIPS:

  1. 如果文件前面有.,代表这个文件为隐藏文件
  2.  
  3. 如果目录的[x]为空,表示只可访问到该目录,不能进入到目录中访问其子文件

2.2、如何改变文件属性与权限

  1. chgrp:改变文件所属用户组
  2. chown:改变文件所有者
  3. chmod:改变文件权限

  

使用chgrp和chown的后,temp文件的用户和用户组从root,root变成了bin,users。

另外在[cp]命令复制文件的时候,也会相应复制其用户和用户权限

cp的命令格式为:

  1. cp 源文件 目标文件

 接上面图片,改变temp目录的文件权限

发现,修改temp文件的权限为:用户可读可写可执行(4+2+1),用户组可读可写(4+2),其他人可读可写(4+2)

TIPS:

  1. 目录权限:
  2. 系统有user用户,该用户不支持root用户组,则user用户可以查询此目录下的文件列表,但是没有x权限,所以user用户不能切换到此目录内部。

2.3 、Linux文件种类和扩展名

文件种类:

普通文件分为:二进制文件、纯文本文件、数据格式文件;

目录:在Linux中,一切皆文件,目录也不例外;

连接文件:类似于Windows中的快捷方式文件;

设备与设备文件:分为Block块设备文件、character字符设备文件,通常在/dev目录下;

套接字文件:网络传输数据的文件;

管道文件:FIFO文件,用于解决多个程序同时访问一个文件所造成的错误问题。

3、Linux目录配置

3.1、Linux目录配置标准:FHS(FileSystem Hierarchy Standard)

我理解:主要是定义一套标准,让不同用户在使用时,按照这套标准新建,删除,放置目录和文件等操作,而不是随意新建,删除,放置文件和目录,造成系统混乱的局面。

其中所有文件的根文件时"/",任何其他文件都是在它基础上挂载的,下面介绍下部分文件名称及其作用:

  1. /:根目录,与开机、还原、系统修复有关,FHS标准要求:/所在的分区应该越小越好,且应用程序安装的软件最好不要和根目录放在你同一个分区,保持根目录越小越好。
  2. /bin:这个文件下存放的是一些系统常用命令,如catlschmoddatamkdirMVcp等。
  3. /boot:这个目录主要放置开机时会使用到的文件,包括内核文件和开机的配置文件等
  4. /dev:任何设备和设备接口都是以文件形式存在这个目录中的。
  5. /etc:系统的主要的配置文件都放在这个文件中,比如人员的账号,密码。各种服务的起始文件等。
  6. /home:系统默认的用户主文件夹,在你创建一个一般用户账号时,默认的用户主文件夹都会规范到这里来。文件夹中有两种代号:~:代表目前用户的主文件夹,~dmtsai:代表dmtsai的主文件夹。
  7. /lib:系统加载所需要的函数库都在这个目录下了。
  8. /opt:这是给第三方软件放置的目录【我本来以为第三方软件指的是jdktomcat这种,后来查看这个目录下没有,感觉这个是针对系统的第三方软件,比如像桌面程序?大概jdktomcat这种是叫应用软件吧?有大神知道,
    还请指导下】
  9. /usrusr目录不是user的简称!!!而是UNIX Software Resource的简称,也就是UNIX操作系统软件资源所放置的目录,并不是用户的数据。类似于Windows下的C:/Windows和C:/Program Files两个目录的综合体,
  10. 我们安装的jdktomcat等应用软件,就是安装在/usr/local下。
  11. /var:如果说/usr是在软件安装的过程中占用硬盘容量的话,那么/var就是在系统运行后逐渐占用硬盘用量的,其里面是针对常态性变动的文件,比如缓存,登录文件以及运行时产生的文件。

  

3.2、目录树(directory tree)

3.3、绝对路径和相对路径

绝对路径:由根目录/开始写起的文件名活目录名称,例如:/home/temp

相对路径:相对于目前路径的文件名写法。例如“./home/dmstai”,反正开头不是/就是相对路径的写法。

所以当你cd ..的时候,就是相对于当前目录的上一级目录,而如果现在由 /home/helloworld和/home/20170920temp这两个目录,通过cd ../helloworld/就可以进入到同级目录下的helloworld下。这就是相对路劲

同样 ./run.sh 表示执行当前目录下的run.sh的脚本。

4、重点回顾:

  • Linux下权限依次分用户、用户组、其他人三种身份。
  • ls -al 显示所有文件的详细信息,包括:10位长度的权限,文件连接数,文件容量,文件最后修改日期,文件名。
  • 如果文件名前多一个".",代表这个文件时隐藏文件
  • 对文件来说,权限分为:r:可读,w:可写,x:可执行文件(类似windows的exe),
  • 对目录来说,权限分为:r:可读目录中的内容,w:可修改目录中的内容,x:可访问这个目录,但是不能访问目录内的内容
  • FHS定义的三层主目录为:/,/usr, /var

参考书籍:《鸟哥的Linux私房菜基础篇第三版》

一、Linux文件权限与目录配置的更多相关文章

  1. Linux 文件权限于目录配置

    用户与用户组 我們以王三毛為例,王三毛這個『檔案』的擁有者為王三毛,他屬於王大毛這個群組, 而張小豬相對於王三毛,則只是一個『其他人(others)』而已. 不過,這裡有個特殊的人物要來介紹的,那就是 ...

  2. Linux文件权限与目录配置

    一.linux文件属性 用户组概念:假如主机有两个团体,第一个团体名为projecta,里面有class1,class2,class3:第二个团体名为projecb,里面有class4,class5, ...

  3. (转)Linux的文件权限与目录配置

    ref:https://www.cnblogs.com/ysocean/p/7712412.html#_label1_0 (转)Linux文件权限和目录配置 1.Linux命令的普遍语法格式 命令格式 ...

  4. 第六章、Linux 的文件权限与目录配置

    第六章.Linux 的文件权限与目录配置 1. 使用者与群组 2. Linux文件权限概念 2.1 Linux文件属性 2.2 如何改变文件属性与权限: chgrp, chown, chmod 2.3 ...

  5. 鸟哥的Linux私房菜学习笔记——文件权限与目录配置

    Linux的文件权限和目录配置 在linux中的每个用户必需属于一个组,不能独立于组外.在linux中每个文件有所有者.所在组.其它组的概念. (1)所有者 一般为文件的创建者,谁创建了该文件,就是天 ...

  6. 【转】第六章、Linux 的文件权限与目录配置

    原文网址:http://vbird.dic.ksu.edu.tw/linux_basic/0210filepermission.php 最近更新日期:2009/08/18 Linux最优秀的地方之一, ...

  7. Linux 的文件权限与目录配置

    用户和用户组 文件所有者 (owner) 用户组概念 (group) 其他人概念 (others) Linux文件权限概念 1. Linux文件属性 要了解Linux文件属性,那么有个重要的命令必须提 ...

  8. linux——(2)文件权限与目录配置

    概念一:用户与用户组 对linux下的每一个文件或者目录来说,访问者都有三种身份:所有者,用户组,其他人.这三种人对于同一个文件的权限是可以分开设定的. 概念二:linux文件权限 文件和目录都有3种 ...

  9. 鸟哥的linux私房菜 - 第5/6/7/9章(在线求助 man page、Linux档案权限与目录配置、Linux档案与目录管理、压缩与打包)

    第五章.在线求助 man page X window与文本模式的切换 Ctrl+Alt+F1~F6:文字接口登入tty1~tty6终端机: Ctrl+Alt+F7:图形接口桌面. 注销当前用户:exi ...

随机推荐

  1. vscode调试单个PHP脚本文件

    1.安装完vscode里的debug插件后, 在WorkSpace setting:添加上php的可执行文件路径: 2.下载适合自己PHP版本的Xdebug 3.在PHP目录下的php.ini配置文件 ...

  2. P1036 选数(DFS)

    题目 https://www.luogu.org/problemnew/show/P1036 思路 搜索,使用递归实现dfs,所有数字遍历一遍,当取遍所有数组的index(扫了一遍,并非一定是选取了) ...

  3. 电子笔记本的思考(1)(ver0.2)

    章节:电子笔记本的思考(1)   陶哲轩在<解题·成长·快乐——陶哲轩教你学数学>中着重强调,用纸笔来“缓存”思维对于数学解题的重要性: 用选定的符号表达你所知道的信息,并画一个示意图.把 ...

  4. UVA - 11214 Guarding the Chessboard(迭代加深搜索)

    题目: 输入一个n*m的棋盘(n,m<10),某些格子有标记,用最少的皇后守卫(即占据或攻击)所有的标记的格子.输出皇后的个数. 思路: 一开始没有想到用迭代加深搜索,直接dfs结果还没写完就发 ...

  5. Java 十二周总结

  6. Django DTL模板语法中的过滤器

    template_filter_demo 过滤器相关: 一.形式:小写{{ name | lower }} 二.串联:先转义文本到HTML,再转换每行到 <p> 标签{{ my_text| ...

  7. 洛谷 2471 BZOJ 1067 [SCOI2007]降雨量

    [题解] 用线段树维护区间最大值(因为没有修改,St表也可以),然后由于x,y可能是降雨量未知的年份,需要进行分类讨论. #include<cstdio> #include<algo ...

  8. 洛谷 2344 奶牛抗议 Generic Cow Protests, 2011 Feb

    [题解] 我们可以轻松想到朴素的状态转移方程,但直接这样做是n^2的.所以我们考虑采用树状数组优化.写法跟求逆序对很相似,即对前缀和离散化之后开一个权值树状数组,每次f[i]+=query(sum[i ...

  9. hdu 1867 kmp匹配

    #include<stdio.h> #include<string.h> #define N 100100 void getnext(int next[],char s[]) ...

  10. 深入解析Microsoft Sql server 2008

    http://blog.csdn.net/downmoon/article/details/5256548