1、Linux文件属性

用root用户登录linux后,执行 ls -al 命令查看文件。显示如下:

文件属性示意图如下:

第一列代表这个文件的类型和权限

第一个字符代表这个文件是:目录、文件或链接文件等。

  • 若是【d】则是目录;
  • 若是【-】则是文件;
  • 若是【l】则表示为连接文件;
  • 若是【b】则表示设备文件里的可供存储的接口设备;
  • 若是【c】则表示设备文件里的串行端口设备,如鼠标、键盘等。

后面的9个字符以3个位一组,均为rwx的组合。其中r代表可读,w代表可写,x代表可执行。注意3个权限的位置不会改变,如果没有权限,就会出现减号(-)。

  • 第一组  为  “文件所有者的权限”
  • 第二组  为  “用户组的权限”
  • 第三组  为  “其他非本用户组的权限”

第二列表示有多少文件名连接到此节点

每个文件都会将它的权限和属性记录到文件系统的i-node中,不过我们使用的目录树却是使用文件名来记录,因此每个文件名就会连接到一个i-node。这个属性记录了有多少不同的文件名连接到相同的一个i-node号码。

第三列表示这个文件的“所有者账号”

第四列表示这个文件的所属的用户组

第五列为这个文件的大小,默认单位是B

第六列为这个文件的创建文件日期或者是最近的修改日期。

第7列为该文件的文件名

如果文件名之前多了一个 “.” ,则说明这个文件为“隐藏文件”,隐藏文件的list列表时,加-a参数可以显示。ls -al。

2、如何改变文件的权限和属性

  • chgrp  :  改变文件所属用户组
  • chown :  改变文件所有者
  • chmod:  改变文件的权限

2.1、改变文件所属用户组

chgrp 【-R】 dirname/filename  ...

-R :  进行递归的持续更改,也连同子目录下的所有文件、目录都更新成为这个用户组之意。常常用在更改某一目录内所有文件的情况。

范例:

chgrp  hy install.log    :   将install.log文件的用户组改为hy用户组。注意hy用户组必须要在/etc/group 文件内存在才可以。

2.2、改变文件的所有者

chown [-R]  账号名称  文件或目录

chown [-R] 账号名称:组名  文件或目录

-R:也是递归子目录。

范例:

chown bin install.log

chown root:root install.log

改变文件所有者和用户组的这两个命令的应用场景:复制文件,由于复制行为会复制执行者的属性和权限,因此复制后需要改变文件所属用户、用户组等。

2.3、改变文件的权限

文件权限有两种设置方法:数字类型改变权限和符号改变权限。

首先说明各个权限对应的数字:

  • r:  4
  • w:  2
  • x:1
  • 每种身份各自的三个权限分数是需要累加的。
  • 例如:权限为(-rwxrwx---)分数分表是:
  • owner = rwx = 4+ 2 + 1 = 7
  • group = rwx = 4+ 2+ 1 = 7
  • others = --- = 0+0 +0 = 0
  • 所以在设置权限时,该文件的权限数字就是770.

1)、数字类型改变文件权限方式

命令:  chmod [-R]  xyz  文件或目录

xyz : 代表权限数字。如770.

-R  : 进行递归的持续更改。

范例:

chmod 777 .bashrc   : 将文件.bashrc这个文件的所有权限设置都启用。

2)、符号类型改变文件权限方式

使用u、g、o三个字母代表user、group、others 3中身份。此外a代表all,即所有身份。

范例:

chmod u=rwx,go=rx  .bashrc

也可以增加或去除某种权限。

chmod a+w .bashrc

chmod a-x  .bashrc

3、目录和文件权限的意义

3.1、权限对于文件的重要性

  • r(read):可读取此文件的实际内容
  • w(write):可以编辑、新增或修改文件的内容(但是不含删除该文件)
  • x(execute):该文件具有可以被系统执行的权限。

3.2、文件对目录的重要性

目录的主要内容是记录文件名列表,文件名与目录有强烈的关联。

r(read):表示具有读取目录结构列表的权限,当具有读取一个目录的权限时,表示你可以查询该目录下的文件名数据,可以用ls命令将目录内容显示出来。

w(write):对目录来说是很强大的。表示你具有更改该目录结构的权限。

  • 新建新的文件和目录
  • 删除已存在的文件与目录
  • 将已存在的文件或目录重新命名
  • 转移该目录内的文件、目录位置
  • 总之,目录的w权限与该目录下面的文件名变动有关就对了。

x(execute):目录的x权限代表用户是否能进入该目录成为工作目录的用途。

因此,要开放目录给任何人浏览时,应该至少也要给与r及x权限,但是w权限不可以随便给。

4、Linux文件的种类及扩展名

4.1、文件的种类

  • 普通文件:纯文本文件、二进制文件、数据格式文件
  • 目录
  • 连接文件
  • 设备与设备文件
  • 套接字:数据接口文件,通常被用在网络上的数据连接。第一个属性为s,通常在/var/run  这个目录中可以看到这种文件类型。
  • 管道(FIFO,pipe):它的主要目的在解决多个程序同时访问一个文件所造成的错误问题。第一个属性为p

4.2、Linux文件扩展名

基本上linux的文件是没有所谓的“扩展名”的。一个linux文件能不能被执行,与它的第一列的10个属性有关,与文件名根本没有一点关系。只要你的权限中有x的话,即代表可以被执行。但是可以被执行和可以执行成功是不一样的。能不能执行成功,需要看文件的内容。

虽然如此,我们还是希望可以通过扩展名来了解该文件是什么东西,还是会以适当的扩展名来表示该文件是什么种类的。

以下是几种常用的扩展名:

  • *.sh:脚本或批处理文件。
  • *Z、*.tar、*.tar.gz、*.zip、*.tgz:经过打包的压缩文件。
  • *.html、*.php:网页相关文件。
  • 注意:从网络上传送到linux系统中,文件的属性和权限确实会被改变。

linux系统下文件长度限制

使用默认的Ext2/Ext3文件系统时,针对文件的文件名长度的限制为:

单一文件或目录的最大容许文件名为255个字符;

包含完整路径名称及目录(/)的完整文件名为4096个字符

5、Linux目录配置标准:FHS

因为利用linux来开发产品的团队或公司、个人实在太多了。如果每个人都用自己的想法来配置文件放置的目录,那么将可能造成很多管理上的困扰。后来就有了所谓的Filesystem Hierarchy Standard (FHS) 标准了。

该标准指出,其目的主要是希望让用户可以了解到已安装的软件通常放置于哪个目录下。FHS的重点在于规范每个特定的目录下应该要放置什么样子的数据而已。

FHS依据文件系统使用的频繁与否和是否允许用户随意改动,而将目录定义为四种交互作用的形态。

FHS针对目录树架构仅定义出三层目录下面应该放置什么样的数据而已,分别是下面这三个目录:

  • / (root,根目录):与开机系统有关
  • /usr(UNIX software resource):与软件安装和执行有关
  • /var(variable):与系统运作过程有关。

Linux 的文件权限和目录配置的更多相关文章

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

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

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

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

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

    一.Linux用户分类 1.Linux用户分为:(文件|目录)所有者(OWN),(同组内的)用户组,其他人; 2.一个天神:root;,几乎能完成任何事.... 二.目录权限的意义 目录的权限和文件的 ...

  4. 第6章 linux的文件权限与目录配置

    6.1用户与用户组 用户,自己的抽屉 用户组,自己的家 其他人(others),外人 root,天神 /etc/passwd 所有的系统上的账号与一般身份用户,root的相关信息 /etc/shado ...

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

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

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

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

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

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

  8. 鸟哥的linux私房菜——第五章学习(Linux的文件权限与目录配置)

    ******************第五章学习****************** 1.[重要的三个概念] 1).文件拥有者(使用者):User,该文件/文件夹只能我来读写: 2).群组:Group, ...

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

    用户与用户组(Linux是一个多用户多任务的系统) 文件所有者   设置适当的权限,其他人无法看到自己的文件 用户组概念   属于同一个用户组的可以看到这个团体的公共信息,每个账户都可以有多个用户组的 ...

随机推荐

  1. 浅谈Java语言中ArrayList和HashSet的区别

    Java语言中ArrayList和HashSet的区别 2019-04-10   13:22:49 一.基本区别 首先一起看个实例,其代码如下: package com.MrZ_baby.com; i ...

  2. php 缓存 加速缓存

    PHP四大加速缓存器opcache,apc,xcache,eAccelerator eAccelerator,xcache,opcache,apc(偏数据库缓存,分系统和用户缓存)是PHP缓存扩展, ...

  3. C++函数返回值为类对象但未调用复制构造函数

    参考资料:https://blog.csdn.net/sxhelijian/article/details/50977946 不要迷信书本,要学会自己调试程序.

  4. Emgucv使用中常用函数总结

    Emgucv常用函数总结: 读取图片 Mat SCr = new Mat(Form1.Path, Emgu.CV.CvEnum.LoadImageType.AnyColor); //根据路径创建指定的 ...

  5. Interpreting NotifyCollectionChangedEventArgs zz

    If you’ve ever consumed INotifyCollectionChanged.CollectionChanged, then you’ve run into some inadeq ...

  6. Windows下编译jcef

    依赖软件参考 本文参考官方网站上的jcef编译过程 编译成功的环境如下: windows 10 64 bit JDK 1.8.0_121 64 bit Python 2.7.13 git versio ...

  7. vue项目中的相关插件

    所有安装都是cd到该项目目录中安装 -S代表将插件添加到项目中的package.json文件 1.iview 是一套基于 Vue.js 的开源 UI 组件库,主要服务于 PC 界面的中后台产品 cnp ...

  8. C. Neko does Maths

    time limit per test1 second memory limit per test256 megabytes inputstandard input outputstandard ou ...

  9. [Educational Round 59][Codeforces 1107G. Vasya and Maximum Profit]

    咸鱼了好久...出来冒个泡_(:з」∠)_ 题目连接:1107G - Vasya and Maximum Profit 题目大意:给出\(n,a\)以及长度为\(n\)的数组\(c_i\)和长度为\( ...

  10. 【技术分享】BurpSuite 代理设置的小技巧

    作者:三思之旅 预估稿费:300RMB 投稿方式:发送邮件至linwei#360.cn,或登陆网页版在线投稿 在Web渗透测试过程中,BurpSuite是不可或缺的神器之一.BurpSuite的核心是 ...