linux 文件权限、类型、命名规则

时间:2021-09-27 23:17:47
文件权限

-rwxr-x--t        文件类型 用户权限 组权限 其他用户权限

umask是一个掩码,设置文件的默认权限,会屏蔽掉不想授予该安全级别的权限,从对象的全权权限中减掉;对文件全权权限是666,目录是777,因为目录有执行权限。系统启动时在/etc/profile中设置。

chmod    [ugoa]    [+-=]    [rwxXstugo]        只有文件的属主可以改变权限chmod    0xddd    file

-R 参数表示递归的改变文件权限

u 表示设置权限和属主一样,g和o类似s 运行时重新设置uid或gidt 保留文件或目录X 表示如果对象是目录或者已有执行权限,赋予执行权限

suid sgid 粘着位 构成另外一个八进制数在 umask 中(前),umask 有 4 个 8 进制数

r        对文件而言,具有读取文件内容的权限;对目录来说,具有浏览目录的权限w        对文件而言,具有新增、修改和删除文件的权限;对目录来说,具有删除、移动目录内文件的权限x        对文件而言,具有执行文件的权限;对目录了来说该用户具有进入目录的权限s(suid)    当文件被用户使用时,程序会以文件的属主权限运行,大写 s 表示用户的执行权限为空s(sgid)    对文件来说,文件会以文件属组的权限运行;对目录来说,目录中创建的权限会以目录的默认属组作为默认属组,常用于创建共享组共享文件(新建共享组后可能需要重启才能生效)t(sticky)    进程结束后仍保留在内存中;當使用者對於此目錄具有 w, x 權限,亦即具有寫入的權限時,使用者在該目錄下建立的檔案或目錄,僅有自己與 root 才有權力刪除該檔案

SUID 不用在目录上,而 t 不用在档案上。SUID 为 u+s ,而 SGID 为 g+s ,t 则是 o+t 

目录 r 权限表明可以使用ls命令列出内容(必须也有使用ls命令选项的执行权限), w 权限表明文件可以被添加或删除(目录必须也有执行权限), x 权限控制对目录的访问。用户可以cd到目录中,使用读访问列出其中的内容。文件可以使用写访问被移动或者拷贝到目录中;只有属主可以使用 chmod 操作目录,重命名目录。

檔案隱藏屬性

什麼?檔案還有隱藏屬性?光是那九個權限就快要瘋掉了,竟然還有隱藏屬性,真是要命~ 但是沒辦法,就是有檔案的隱藏屬性存在啊!不過,這些隱藏的屬性確實對於系統有很大的幫助的~ 尤其是在系統安全 (Security) 上面,重要的緊呢!不過要先強調的是,底下的chattr指令只能在Ext2/Ext3/Ext4的 Linux 傳統檔案系統上面完整生效, 其他的檔案系統可能就無法完整的支援這個指令了,例如 xfs 僅支援部份參數而已。底下我們就來談一談如何設定與檢查這些隱藏的屬性吧!

    chattr (設定檔案隱藏屬性)

[root@study ~]# chattr [+-=][ASacdistu] 檔案或目錄名稱選項與參數:+   :增加某一個特殊參數,其他原本存在參數則不動。-   :移除某一個特殊參數,其他原本存在參數則不動。=   :設定一定,且僅有後面接的參數

A  :當設定了 A 這個屬性時,若你有存取此檔案(或目錄)時,他的存取時間 atime 將不會被修改,     可避免 I/O 較慢的機器過度的存取磁碟。(目前建議使用檔案系統掛載參數處理這個項目)S  :一般檔案是非同步寫入磁碟的(原理請參考前一章sync的說明),如果加上 S 這個屬性時,     當你進行任何檔案的修改,該更動會『同步』寫入磁碟中。a  :當設定 a 之後,這個檔案將只能增加資料,而不能刪除也不能修改資料,只有root 才能設定這屬性c  :這個屬性設定之後,將會自動的將此檔案『壓縮』,在讀取的時候將會自動解壓縮,     但是在儲存的時候,將會先進行壓縮後再儲存(看來對於大檔案似乎蠻有用的!)d  :當 dump 程序被執行的時候,設定 d 屬性將可使該檔案(或目錄)不會被 dump 備份i  :這個 i 可就很厲害了!他可以讓一個檔案『不能被刪除、改名、設定連結也無法寫入或新增資料!』     對於系統安全性有相當大的助益!只有 root 能設定此屬性s  :當檔案設定了 s 屬性時,如果這個檔案被刪除,他將會被完全的移除出這個硬碟空間,     所以如果誤刪了,完全無法救回來了喔!u  :與 s 相反的,當使用 u 來設定檔案時,如果該檔案被刪除了,則資料內容其實還存在磁碟中,     可以使用來救援該檔案喔!注意1:屬性設定常見的是 a 與 i 的設定值,而且很多設定值必須要身為 root 才能設定注意2:xfs 檔案系統僅支援 AadiS 而已

範例:請嘗試到/tmp底下建立檔案,並加入 i 的參數,嘗試刪除看看。[root@study ~]# cd /tmp[root@study tmp]# touch attrtest     <==建立一個空檔案[root@study tmp]# chattr +i attrtest <==給予 i 的屬性[root@study tmp]# rm attrtest        <==嘗試刪除看看rm: remove regular empty file `attrtest'? yrm: cannot remove `attrtest': Operation not permitted# 看到了嗎?呼呼!連 root 也沒有辦法將這個檔案刪除呢!趕緊解除設定!

範例:請將該檔案的 i 屬性取消![root@study tmp]# chattr -i attrtest

這個指令是很重要的,尤其是在系統的資料安全上面!由於這些屬性是隱藏的性質,所以需要以 lsattr 才能看到該屬性呦!其中,個人認為最重要的當屬 +i 與 +a 這個屬性了。+i 可以讓一個檔案無法被更動,對於需要強烈的系統安全的人來說, 真是相當的重要的!裡頭還有相當多的屬性是需要 root 才能設定的呢!

此外,如果是 log file 這種的登錄檔,就更需要 +a 這個可以增加,但是不能修改舊有的資料與刪除的參數了!怎樣?很棒吧! 未來提到登錄檔 (十八章) 的認知時,我們再來聊一聊如何設定他吧!

文件类型

普通文件 - 、目录文件 d 、字符设备文件 c 、块设备文件 b 、符号链接文件 l 、套接口文件 s 、先进先出文件 f 

文件的命名规则

最大长度:文件或目录名最大长度为255个数字字母字符,包含完整路径名称及目录 (/) 之完整档名为 4096 个字符非数字字母字符:一些非数字字母字符或者元字符是可用的:“ _ - . ”;允许但不推荐的符号:“ * ? ~ [ ] & | " $ ”;不允许的符号:“ ; < > ”。文件名扩展:文件名可以包含零个或多个扩展名。扩展名常被一个应用追加到文件的末端。扩展名通常是1个到3个字符,追加到文件名的末端,之前有一个句点。目录名的扩展名:目录名一般不包含扩展名,但是也没有规则反对这一点。大小写敏感:Linux文件和目录名是大小写敏感的,一般规则都是使用小写字母。

linux 文件权限、类型、命名规则的更多相关文章

  1. 修改linux文件权限

    Linux系统中的每个文件和目录都有访问许可权限,用它来确定谁可以通过何种方式对文件和目录进行访问和操作. 文件或目录的访问权限分为只读,只写和可执行三种.以文件为例,只读权限表示只允许读其内容,而禁 ...

  2. Linux&colon;文件权限

    Linux:文件权限 1.文件权限 ☆文件所有者 ☆用户组 ☆其他人 ☆ROOT 说明: Linux系统中默认所有系统上的账号与一般身份用户,还有那个root的相关信息记录在/etc/passwd文件 ...

  3. 修改linux文件权限命令:chmod 【转载】

    Linux系统中的每个文件和目录都有访问许可权限,用它来确定谁可以通过何种方式对文件和目录进行访问和操作. chmod  命令可以改变所有子目录的权限,下面有2种方法 改变一个文件的权限: chmod ...

  4. linux文件权限总结&lpar;创建root不可以删除文件、只可追加的日志文件等&rpar;

    文件类型 对于文件和目录的访问权力是根据读访问,写访问,和执行访问来定义的. 我们来看一下 ls 命令的输出结果 [root@iZ28dr6w0qvZ test]# ls -l 总用量 72 -rw- ...

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

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

  6. Linux文件权限与属性详解 之 一般权限

    目录 一般属性 1. iNode: 3152621 2. 文件类型 3.文件访问权限 4. 链接数目: 5. 文件所有者 6. 文件所属组 7. 文件大小 8. 修改时间 9. 文件名称 Linux文 ...

  7. Linux文件权限与属性详解 之 ACL

    Linux文件权限与属性详解 之 一般权限 Linux文件权限与属性详解 之 ACL Linux文件权限与属性详解 之 SUID.SGID & SBIT Linux文件权限与属性详解 之 ch ...

  8. Linux文件权限设置

    基本概念 https://linux.cn/article-7418-1.html#3_8880 用户管理 文件权限设置 -添加用户账户08% -理解 /etc/passwd 中的内容12% -理解 ...

  9. linux文件权限目录配置笔记

    ###linux 文件权限目录配置笔记 ---------- 多人多任务环境 linux 一般将文件可存取的身份分为三个类别:owner group others Permission deny ls ...

  10. linux文件权限多一个&plus;啥意思

    linux文件权限显示多了一个+,说明添加了acl权限 使用getfacl filename 能查看到 ower group other  还多了一个php 用户有rwx权限. acl详解 转: ht ...

随机推荐

  1. Android控件之SlidingDrawer(滑动式抽屉)详解与实例

    SlidingDrawer效果想必大家也见到过,它就是1.5模拟器上进入应用程序列表的效果.下面是截图 一.简介 SlidingDrawer隐藏屏外的内容,并允许用户通过handle以显示隐藏内容.它 ...

  2. Hibernate常见面试题

    1.什么是Hibernate的并发机制?怎么去处理并发问题? Hibernate并发机制: a.Hibernate的Session对象是非线程安全的,对于单个请求,单个会话,单个的工作单元(即单个事务 ...

  3. java web从零单排第十六期《struts2》控制标签&lpar;2&rpar;

    1.s:subset标签概述: s:subset标签功能是从一个集合中取出部分元素合并成一个新的集合,新生成的这个集合是原来集合的子集.属性和意义如下: 属性名 是否必需 默认值 类型 说明介绍 co ...

  4. 【luogu2161】【SHOI2009】Booking会场预约

    原题传送门 题意简析:你需要写一个数据结构,维护一个时间轴,支持如下操作: 1)插入1个新区间,删除所有时间轴上与它有交的区间并输出个数. 2)查询当前时间轴上的区间个数. 解题思路:裸的无旋trea ...

  5. Syntax error&comma; insert &quot&semi;&rcub;&quot&semi; to complete ClassBody错误解决

    Syntax error, insert "}" to complete ClassBody 报该错误是因为我从网页上粘贴了别人的代码,并没有发现什么异常但还是编译器报红叉. 解决 ...

  6. springcloud第二步:发布服务提供者

    创建项目service-member Maven依赖 <parent> <groupId>org.springframework.boot</groupId> &l ...

  7. 前端面试题目汇总摘录(JS 基础篇)

    JS 基础 JavaScript 的 typeof 返回那些数据类型 object number function boolean undefined string typeof null; // o ...

  8. SharePoint 2016 installation error The program can not start because api-ms-win-crt-runtime-l1-1-0&period;dll is missing

    In this post we will discuss how we can resolve the issue The program can not start because api-ms-w ...

  9. 在vue项目中引入jquery

    在vue项目中引入jquerycnpm install jquery --save在main.js中引入,加入下面这行代码:import 'jquery'注:有些项目是按需加载的,在main.js里面 ...

  10. 支持自定义协议的虚拟仪器【winform版】

    首先,这个程序的由来,额,工作以来,做的最久的就是上位机,对市面上的大部分组态软件都感到不满,不好用,LabView虽然用起来不错,但是入门还是不够简单,刚好现在工作比较闲(已经不再做上位机了),所以 ...