利用文件系统的inode和block来分析文件(目录)的权限问题. 为什么读取一个文件还要看该文件路径所有目录的权限? 为什么目录的w权限具有删除文件的能力,而文件w权限不行. inode:记录文件的属性,一个文件占用一个inode,同时记录了文件数据所在的block号码.Ext3文件系统inode大小为128B,Ext4文件系统inode大小为256B. block:记录了文件的内容,若文件太大会占用多个bolck块.一般大小为1k.2k.4k. inode和block在文件系统里,均用号码标…
先说一下格式化:每种操作系统所设置的文件属性/权限并不相同,为了存放这些文件所需的数据,因此就需要将分区格式化,以成为操作系统能够利用的文件系统格式.linux的文件格式为Ext2/Ext3,现在好像已经到了Ext4.windows 操作系统为vfat或者NTFS. linux文件系统: 操作系统的文件数据除了文件实际内容外,还有非常多的属性,如文件权限(rwx)与文件属性(所有者.群组.时间参数等). 文件系统通常将这两部分数据存放在不同的块.权限属性放到 inode 中,实际数据放到 dat…
什么是 inode inode 的定义:Unix 文件系统中的一种数据结构,用来存储文件的元信息数据   文件在硬盘中的存储是以"块"(block)为单位的,常见的块大小是 4k 一个稍微大一点的文件则会存储在多个块中,那么如何快速访问到这些数据呢?答案就是 inode   在文件系统中,每个文件对象都对应着一个 inode,其中存储着常用的一些信息(所有者.创建时间.修改时间.文件权限.对应文件对象在系统中存储块的位置等等) 操作系统访问一个文件时分为三个步骤: 通过文件名找到对应的…
1. 为什么要有用户的概念? 多用户,多任务业务对系统资源的隔离产生需求 2. linux 用户的分类? 2.1. 管理员 拥有操作所有文件的权限 2.2. 普通用户 2.2.1. 普通登录用户 2.2.2. 系统用户 又称后台用户,为了能够让那些后台进程或服务进程能以非管理员的身份运行,通常需要为此创建的多个普通用户,这类用户从不登录系统 3. 如何实现系统资源的相互隔离? 3.1. Authentication :认证 用户是否有登录系统的权限 3.2. Authorization :授权…
SUID, SGID, Sticky 1 权限 r, w, x user, group, other 2 安全上下文 前提:进程有属主和属组:文件有属主和属组: (1) 任何一个可执行程序文件能不能启动为进程:取决发起者对程序文件是否拥有执行权限: (2) 启动为进程之后,其进程的属主为发起者:进程的属组为发起者所属的组: (3) 进程访问文件时的权限,取决于进程的发起者: (a) 进程的发起者,同文件的属主:则应用文件属主权限: (b) 进程的发起者,属于文件的属组:则应用文件属组权限: (c…
安全上下文 前提:进程有属主和属组,文件有属主和属组 任何一个可执行程序文件能不能启动为进程:取决发起者对程序文件是否拥有执行权限 启动为进程之后,其进程的属主为发起者:进程的属组为发起者所属的组 进程访问文件时的权限,取决于进程的发起者 进程的发起者,同文件属主,则应用文件属主权限 进程的发起者,属于文件的属组,则应用文件属组权限 应用文件“其它”权限  SUID 提权 打破了安全上下文规则 任何一个可执行程序文件能不能启动为进程:取决发起者对程序文件是否拥有执行权限 启动为进程之后,其进程的…
linux文件系统(inode block superblock)   先说一下格式化:每种操作系统所设置的文件属性/权限并不相同,为了存放这些文件所需的数据,因此就需要将分区格式化,以成为操作系统能够利用的文件系统格式.linux的文件格式为Ext2/Ext3,现在好像已经到了Ext4.windows 操作系统为vfat或者NTFS.   linux文件系统:   操作系统的文件数据除了文件实际内容外,还有非常多的属性,如文件权限(rwx)与文件属性(所有者.群组.时间参数等).   文件系统…
1. 硬盘物理结构 硬盘物理上主要分为: 盘片 磁道 扇区 机械臂 磁头 主轴 磁道: 当硬盘盘片旋转时,磁头若固定在一个位置上,则磁头会在盘片表面划出一个圆形轨迹,这些圆形轨迹就叫做磁道.以盘片中心为圆心,由此可以划分出很多磁道来, 这些磁道用肉眼是根本看不到的,因为它们仅 是盘面上以特殊方式磁化了的一些磁化区,硬盘上的信息便是沿着这样的轨道存放的,盘片上的磁道由外向内依次从“0”开始进行编号. 柱面: 由于硬盘可以由很多盘片组成,不同盘片的相同磁道就组成了柱面(cylinder),如第一个图…
前言 说到 linux 的文件系统,好多人第一印象是 ext2/ext3/ext4 等具体的文件系统,本文不涉及这些,因为研究具体的文件系统难免会陷入细节,甚至拉大段的源码做分析,反而不能从宏观的角度把握文件系统要解决的问题.一个通用的 linux 文件系统都包含哪些概念?接口如何使用?设计层面需要考虑什么问题?这都在本文的讨论范围.当然了,内容都是从 apue 搬运过来的,经过了一点点梳理加工,原书还是基于比较老的 UFS (Unix File System) 进行说明的,有些东西可能已经过时…
内容源于<鸟哥的Linux私房菜> 认识 EXT2 文件系统 文件系统的特殊观察与操作 文件系统 superblock,inode,block superblock,inode,block数据简略说明: superblock:记录此 filesystem 的整体信息,包括inode/block的总量.使用量.剩余量, 以及文件系统的格式与相关信息等: inode:记录文件的权限与属性,一个文件占用一个inode,同时记录此文件的数据所在的 block 号码: block:实际记录文件的内容,若…