单元15 Linux文件系统深入了解

一、分区和文件系统

1. 磁盘驱动器分成分区

2. 使用文件系统格式化分区以便用户存储数据

默认文件系统:ext3(rhel5)、ext4(rhel6)、xfs(rhel7)

其他常见文件系统包括:ext2和msdos(通常用于软盘)、iso9660(通常用于CD)、GFS和GFS2(通常用于SAN)

二、索引节点

1. 索引节点表含有ext2或ext3文件系统中全部文件的列表

2. 索引节点(index node)是表格中的条目,含有文件信息(元数据),其中包括:

文件类型(普通文件、目录)

文件权限

链接数:与索引节点编号关联的文件名数

文件所有者的用户ID,以及相关联组的组ID号

时间戳,其中包括上次访问时间、上次修改时间、以及上次索引节点更改时间

硬盘上的数据位置

有关文件的其他元数据

三、目录

1. 计算机对文件的引用就是 索引节点编号

2. 人工引用文件的方式是通过文件名

3. 目录是人们用于引用文件的文件名filename和计算机用于引用文件的索引节点编号index node number间的映射

ls -i命令可以显示索引节点编号

[[email protected] ~]# ls -li

62453 -rw-------. 1 root root    4250 Jul  5 01:29 anaconda-ks.cfg

62887 -rw-r--r--. 1 root root 9908224 Jul  5 01:32 boot.iso

四、cp和索引节点

1. cp命令将:

分配未使用的索引节点编号,在索引节点表中添加一条新目录

在目录中创建一条目录项,将某一名称与此索引节点编号相关联

将数据复制到新文件

五、mv与索引节点

1. 如果mv命令的目标是与来源位于相同的文件系统,那么mv命令将:

以新文件名创建新目录条目

删除使用旧文件名的旧目录条目

2. 不会影响索引节点表(时间戳除外)或磁盘上的数据位置:不会移动任何数据!

3. 如果目标是其他文件系统,mv的作用是复制并删除

六、rm和索引节点

1. rm命令将:

减少链接数,以此释放可重复使用的索引节点编号

把数据块标识在空闲列表中

删除目录条目

2. 实际上并未删除数据,但是当其他文件使用此数据块时将覆盖数据

七、硬链接

1. 硬链接会增加额外目录项以引用单个文件

文件系统上的某个物理文件

每个目录均引用同一索引节点编号

增加链接数:rm命令可减少链接数,只要还有一个链接文件就会一直保存,链接数为0时文件将被删除

无法跨驱动器或分区进行操作

2. 语法: ln  filename  [filename]

八、符号链接(软链接)

1. 符号链接指向其他文件

ls -l 显示链接名称和所引用的文件

lrwxrwxrwx. 1 root root 11 Jul 26 20:58 test -> /etc/passwd

文件类型:l用于符号链接

符号链接的内容即其引用的文件的名称

2. 语法

ln -s filename  linkname

符号链接的大小就是路径名称的字符数,出现例外是因为路径名称中含有非ascii字符。

九、七种基本文件类型

- 常规文件

d 目录

l  符号链接

b  块特殊文件

c  字符特殊文件

p  命名管道

s  套接字

-常规文件:概括性术语,适用于不属于以下列出的任一类型的文件。术语“类型”并不是指文件的内容,而是指操作系统处理文件的方式。图像、文本文件、硬链接和可执行文件都是常规文件,因为操作系统与这些文件进行交互时不需要特殊的规则。

d目录:目录可以被认为是一种特殊的文本文件,内核会将其假定为文本文件,但远不止于此。目录的核心只是名称和索引节点编号的列表,但是OS使用目录组织磁盘上文件(否则文件的数量将相当骇人),造成用户“处于”shell当前焦点所在的任一目录的假象。

l符号链接:另一实际上为文本文件但受到操作系统特殊处理的文件类型,符号链接包含的文本说明了一个绝对或相对的路径。链接中的字节数与其指向的路径的字符数相同。

c字符特殊文件:Linux的一条核心设计理念就是:一切都是文件,硬件也不例外。引用硬件的文件不是常规文件;它们属于两个特殊文件之一。字符特殊文件用于与硬件一次通信一个字符。

b块特殊文件:用于与硬件一次通信一个数据块:512字节、1024字节、2048字节;只要适合此类型的硬件即可。块和字符特殊文件通常位于/dev目录中。

p命名管道:在进程间传输数据的文件。它本身并不存储数据,但是在将数据写入命名管道的进程和从命名管道读取数据的另一进程之间传输数据。可以使用mknod命令创建命名管道:

[[email protected] tmp]# mknod mypipe p

[[email protected] tmp]# ll

prw-r--r--. 1 root root 0 Jul 27 08:57 mypipe

s套接字:用于内部进程通信的程序化机制。用户(甚至管理员)明确地创建套接字这种情况极为少见。

十、检查可用空间

1. baobab按目录创建图形使用报告

应用程序--->系统工具--->Disk Usage Analyzer

2. du按目录创建文本使用报告(以千字节为单位)

列出所有子目录中每个文件的默认大小:

-h(1024进制)和-H(1000进制)以更易读取的单位显示大小

-s概括了子目录

-i index node

3. df按文件系统创建文本使用报告(以千字节为单位)

同样使用-h和-H选项

-T包含了系统文件类型

十一、存档(打包)文件和压缩存档

1. 存档会将多个文件放置到同一目标文件中

易于备份、存储和传输

tar  - 标准Linux存档命令

2. 存档通常都会经过压缩

压缩文件所采用的算法

通过解压缩还原原始文件

tar 天生即可支持使用gzip和gunzip(仅解压缩)或bzip2和bunzip2(仅解压缩)的压缩

十二、基本tar选项

1. 操作(必须其中一项)

-c  创建一个存档

-t  列出一个存档

-x  从存档中取出文件

2. 通常必须

-f  archivename  文档存档名称

3. 可选

-z  使用gzip压缩

-j  使用bzip2压缩

-v  提供详细信息

--xattrs  存储SELinux和ACL属性

tar  [选项]  指定目录及备份的名称(目标) 需要备份的目录/文件(源)

选项顺序:打包压缩,解压解包

tar  -xvf 文件名 -C 解包到指定目录

时间: 2024-10-13 00:55:47

单元15 Linux文件系统深入了解的相关文章

新一代 Linux 文件系统 btrfs 简介 【转载】

Btrfs 被称为是下一代 Linux 文件系统.近年来 ext2/3 遇到越来越多的扩展性问题,在期待 ext4 的同时,人们发现了 btrfs,据说它采用了很多先进的文件系统设计,不仅解决了 ext2/3 的扩展性问题,还让人们看到了下一代文件系统所具有的许多其他特性.这一切都让人不禁心生好奇,btrfs 究竟提供了哪些特性?它是如何实现的?本文便围绕这些问题展开探讨,首先研究了 btrfs 所提供的新特性,并简要介绍了 btrfs 内部实现这些特性的原理:然后演示了 btrfs 的常用命令

磁盘、分区及Linux文件系统

1.磁盘基础知识 1.1 物理结构 硬盘的物理结构一般由磁头与碟片.电动机.主控芯片与排线等部件组成:当主电动机带动碟片旋转时,副电动机带动一组(磁头)到相对应的碟片上并确定读取正面还是反面的碟面,磁头悬浮在碟面上画出一个与碟片同心的圆形轨道(磁轨或称柱面),这时由磁头的磁感线圈感应碟面上的磁性与使用硬盘厂商指定的读取时间或数据间隔定位扇区,从而得到该扇区的数据内容.所有的盘片都固定在一个旋转轴上,这个轴即盘片主轴.而所有盘片之间是绝对平行的,在每个盘片的存储面上都有一个磁头,磁头与盘片之间的距

<资料收集>新一代 Linux 文件系统 btrfs 简介

来自: http://www.ibm.com/developerworks/cn/linux/l-cn-btrfs/ Btrfs 简介 文件系统似乎是内核中比较稳定的部分,多年来,人们一直使用 ext2/3,ext 文件系统以其卓越的稳定性成为了事实上的 Linux 标准文件系统.近年来 ext2/3 暴露出了一些扩展性问题,于是便催生了 ext4 .在 2008 年发布的 Linux2.6.19 内核中集成了 ext4 的 dev 版本. 2.6.28 内核发布时,ext4 结束了开发版,开始

Linux/Centos7系统管理之深入理解Linux文件系统与日志分析

前言: inode(文件节点)与block(数据块) 硬链接与软连接 恢复误删除的文件 (即rm-rf 的操作,可以先进行备份的操作,然后可以进行恢复ext4和xfs文件系统皆可) 日志文件的分类 用户日志与程序日志 一 :inode和block概述 1.1 概述 文件数据包括元信息与实际数据 文件存储在硬盘上,硬盘最小存储单位是"扇区",每个扇区储存512字节 block(块) 连续的八个扇区组成一个block,一个block单位是4k 是文件存取的最小单位 inode(索引节点)

操作系统——linux文件系统初实现

简述: 0.ext2格式. 1.包括权限管理,精确到角色. 2.数据块采用连续分配(离散分配大家来弄吧). 3.为实现间接索引,相信实现了目录,简介索引也不是问题吧.. 4.删除目录不支持递归删除.自己写去吧. 5.整体结构: 6.主要数据结构: //超级块 struct SuperBlock { int s_block_count;//block总个数 int s_block_size;//block块的大小 int s_inode_count;//inode总个数 int s_datablo

linux 文件系统的管理 (硬盘) 工作原理

一.系统在初始化时如何识别硬盘 1.系统初始时根据MBR的信息来识别硬盘,其中包括了一些执行文件就来载入系统,这些执行文件就是MBR里前面446bytes里的boot loader 程式,而后面的16X4的空间就是存储分区表信息的位置:如下图 2.在分区表中,主要储存了以下信息:(1)分区号,常见的分区号有以下几种:其它编号可以使用fdisk指令,再执行 l (小写L) 查看 0x5 (or 0xf) 扩展分区 0x82 Linux swap 0x83 Linux 0x8e Linux LVM

分析Linux 文件系统访问控制列表

1.What is FACL? FACL,文件系统访问控制列表,即Filesystem Access Control List.根据以前对LINUX权限模型的了解,大概如下: 假设有这么一个场景: 用户TOM创建的文件file,希望用户LUCY可以访问和编辑. 分析: 第一,可否TOM用户临时改变file的owner为LUCY,这样就可以达到目的. 显然,这并不可行.因为普通用户根本就没有chown的权限. 第二,可否设置LUCY在file的属组并属组权限有rw或者file的other权限有rw

linux文件系统---10

进入 Linux 根目录(即“/”, Linux 文件系统的入口, 也是处于最高一级的目录),运行“ls –l”命令,可以看到 Linux 系统包含以下目录. 1./bin 包含基本命令,如 ls.cp.mkdir 等,这个目录中的文件都是可执行的. 2./boot Linux 系统的内核及引导系统程序所需要的文件,如 vmlinuz.initrd.img 文件都位于这个目录中. 3./dev 设备文件存储目录,应用程序通过对这些文件的读写和控制就可以访问实际的设备. 4./etc 系统配置文件

Linux文件系统之inode与软硬连接

一.inode是什么? 理解inode,要从文件储存说起. 文件储存在硬盘上,硬盘的最小存储单位叫做"扇区"(Sector).每个扇区储存512字节(相当于0.5KB). 操作系统读取硬盘的时候,不会一个个扇区地读取,这样效率太低,而是一次性连续读取多个扇区,即一次性读取一个"块"(block).这种由多个扇区组成的"块",是文件存取的最小单位."块"的大小,最常见的是4KB,即连续八个 sector组成一个 block. 文