搜档网
当前位置:搜档网 › Linux文件系统

Linux文件系统

Linux文件系统

?文件系统的功能和特性

?嵌入式文件系统概述

?Linux支持的文件系统

?虚拟文件系统(VFS)

?/proc文件系统

?Flash存储设备的技术特点?基于MTD驱动程序的文件系统?制作嵌入式文件系统

嵌入式文件系统?嵌入式文件系统概述

?文件是有组织、有次序地存储在某种介质上的一组信息的集合,

是用来存储信息的一种基本结构。

?文件系统决定了信息和数据在存储设备上的组织形式。

?文件系统为操作系统提供了必要的用于创建文件、删除文件、读

文件和写文件相应的系统调用。

?嵌入式文件系统功能和特性

文件系统应具备以下功能:

?提供用户或程序对数据管理的接口,如数据的存储和操作等;

?提供数据和目录的分层组织形式支持;

?提供文件和创建和删除功能支持;

?尽可能保证文件中数据的有效性;

?提供对不同存储设备的I/O支持。

嵌入式文件系统是用来管理嵌入式操作系统中文件的输入、输出和操作等的功能模块,除了具有一般文件系统的功能外,还具有以下特性。

?存储介质的特殊性

?安全可靠

?对多任务的支持

?接口的开放性和可移植性

?支持多种文件类型

Linux支持的文件系统

支持多种类型文件系统是Linux操作系统的重要特点。Linux操作系统支持的文件系统如下:

?1MINIX

?MINIX文件系统是Linux最早的文件系统,也是最可靠的,但其文

件系统最大只能达到64MB。

?2EXT2/EXT3

?EXT2文件系统是Linux系统的标准文件系统,具有存取性能好、设

计功能强大、兼容性好等特点。EXT3文件系统在EXT2文件系统的

格式上增加了目志功能,是EXT2文件系统的改进版本。

?3FAT

?FAT文件系统是MSDOS和Windows使用的文件系统,可以分为FATl6

和FAT32两种文件系统,FAT32比FAT16性能更强,并且支持长文件名。

?4NTFS

?NTFS文件系统是Windows NT使用的文件系统,并且可以在Windows

2000/XP上使用。NTFS文件系统比Windows以前版本使用的FAT文件系统拥有更好的稳定性、更高的磁盘利用率及更好的性能。

?5UMSDOS

?UMSDOS文件系统是将FATl6文件系统驱动程序在Linux下进行扩

展,使普通的FATl6文件系统可以不必建立单独的分区就能用于

Linux,并且支持长文件名、连接和设备文件等。

?6IS09660

?IS09660文件系统是基于CDROM的文件系统,并且经过扩展后支持

长文件名。UDF是CDROM磁盘的新标准,并有可能代替1S09660标

准,现在UDF支持DVD。

?7UDF

?UDF文件系统是一种较新的基于CDROM的文件系统,并且可以支持

DVD文件格式。

?8JFFS/JFFS2

?JFFS文件系统针对Flash设备的特性而设计的文件系统,可以直接

读/写Flash设备。JFFS2文件系统是JFFS文件系统的下一代版本。

?9YAFFS

?YAFFS文件系统也是专门为Flash设计的文件系统,类似于JFFS文

件系统,但是去除了一些功能而换来了更快的速度和更少的内存

占用。

?10CRAMFS

?CRAMFS文件系统同样是针对Flash存储设备设计的文件系统。这种

文件系统的特点是在存取文件时采用了压缩的方法,是一种压缩

的文件系统。

?11NFS

?NFS文件系统是基于网络的文件系统,它提供了网络上多台计算机之

间的文件系统共享,使这些计算机可以相互存取文件。

?12HPFS

?HPFS文件系统是IBM OS/2使用的仅有只读模式的文件系统。

?13SYSV

?SYSV文件系统是SystemV/386.Coherent和Xenix使用的文件系统。

?14ROMFS

?ROMFS文件系统是一种只读文件系统,具有节省资源和空间的特点。

虚拟文件系统(VFS)

?虚拟文件系统(VFS)

虚拟文件系统是Linux内核中的一个软件层,用于给用户空间的程序提供文件系统接口。它也提供了内核中的一个抽象功能,允许不同的文件系统共存。

虚拟文件系统的主要设计思想是两个层次:

?在对多个文件系统的共同特性进行抽象基础上,形成一个与具体

文件系统实现无关的虚拟层,并在此层次上定义与用户的一致性

接口;

?文件系统具体实现层使用类似于开关表的技术进行文件系统转

接,实现各文件系统的具体细节,每个文件系统是自包含的,包

含文件系统实现的各种设施。

?Ext2文件系统

?Ext2(第二扩充文件系统)是一种功能强大、易扩充、性能上进行了全

面的优化的文件系统,也是当前Linux文件系统实际上的标准。

Ext2有如下几方面的特点:

?它的节点中使用了15个数据块指针,这样它最大可支持4TB的磁盘

分区。

?它使用变长的目录项,这样既可以不浪费磁盘空间,又能支持最

长255个字符的文件名。

?使用位图来管理数据块和节点的使用情况,解决了Ext出现的问题。

?最重要的一点是,它在磁盘上的布局做了改进,即使用了块组的

概念,从而使数据的读和写更快、更有效,也便系统变得更安全

可靠。

?易于扩展。

?基本概念

逻辑块

?具体文件系统管理的是一个逻辑空间,这个逻辑空间就像一个大

的数组,数组的每个元素就是文件系统操作的基本单位——逻辑

块,逻辑块是从0开始编号的,而且,逻辑块是连续的。

物理块

?是数据在磁盘上的存取单位,也就是每进行一次I/O操作,最小传

输的数据大小。

片(fragment)

?片也是一个逻辑空间中的概念,其大小在1KB至4KB之间,但片的

大小总是不大于逻辑块。

Ext2的磁盘布局

?Ext2中的数据结构

?Ext2超级块

?超级块是用来描述Ext2文件系统整体信息的数据结构,是ext2的核

心所在,描述了整个文件系统的信息。

?索引节点(inode节点)

?与UNIX的文件系统一样,使用索引节点来记录文件信息。

?组描述符

?块组中,紧跟在超级块后面的是组描述符表,其每一项称为组描

述符,共32字节。它是用来描述某个块组的整体信息的。

?位图

?在Ext2中,是采用位图来描述数据块和索引节点的使用情况的,

每个块组中都有两个块,一个用来描述该组中数据块的使用情

况,另一个描述该组中索引节点的使用情况。

?索引节点表

?在两个位图块后面,就是索引节点表了,每个块组中的索引节点

都存储在各自的索引节点表中,并且按索引节点号依次存储。

?/proc文件系统

?/proc文件系统是一个虚拟文件系统,通过它可以使用一种新的方法

在Linux内核空间和用户空间之间进行通信。

?在/proc文件系统中,可以将对虚拟文件的读写作为与内核中实体

进行通信的一种手段,但是与普通文件不同的是,这些虚拟文件的内容都是动态创建的。

Flash存储技术

?Flash存储芯片是一种非易失存储器(Non-Volatile Memory),具有安

全、快速、体积小、容量大、掉电不丢失数据等许多优点。

?Flash的类型

?Flash存储器根据结构和实现的不同可分为AND、NAND、UltraNAND、

NOR和DINOR等几种,目前又以NOR和NAND的应用最为广泛。

?NOR Flash随机读取快、稳定性高、工作电压低、功耗低。因其所具

有的稳定性,NOR Flash大多数情况下应用于存储少量代码或更加复杂的一些系统存储。

?NAND回写速度快、芯片小、容量大。因此NAND Flash更适用于数据的

存储。

?Flash的技术特点

NOR和NAND Flash存储器都具有如下区别于其他存储介质的技术特点。

?区块存储单元

?Flash在物理结构上分成若干个被称为区块的存储单元,每个区块

几KB~几十KB,不同区块之间相互独立。

?先擦后写

?由于Flash的写操作只能在空或已擦除的区块内进行,所以一般在

进行写入操作之前必须先执行擦除操作。

?位交换

?Flash在读/写数据过程中,由于其固有的特性,有些时候一个比

特位会发生反转或被报告反转,这就是位交换。

?区块损坏

?Flash的使用过程中,可能某些区块会被损坏。

Flash存储管理系统解决Flash物理

结构与大部分文件系统的矛盾和平

衡各个区块之间的擦写次数并管理

损坏的区块,以便更合理地对Flash 进行操作。

右图:Flash存储管理系统在嵌入式文

件系统中的位置

LINUX文件系统制作详细

Linux文件系统制作流程 关键词:ARM Linux yaffs文件系统移植 Linux文件系统简介 Linux支持多种文件系统,包括ext2、ext3、vfat、ntfs、iso9660、jffs、romfs和nfs等,为了对各类文件系统进行统一管理,Linux引入了虚拟文件系统VFS(Virtual File System),为各类文件系统提供一个统一的操作界面和应用编程接口。 Linux下的文件系统结构如下: Linux启动时,第一个必须挂载的是根文件系统;若系统不能从指定设备上挂载根文件系统,则系统会出错而退出启动。之后可以自动或手动挂载其他的文件系统。因此,一个系统中可以同时存在不同的文件系统。 不同的文件系统类型有不同的特点,因而根据存储设备的硬件特性、系统需求等有不同的应用场合。在嵌入式Linux应用中,主要的存储设备为RAM(DRAM,

SDRAM)和ROM(常采用FLASH存储器),常用的基于存储设备的文件系统类型包括:jffs2,yaffs,cramfs,romfs,ramdisk,ramfs/tmpfs等。 >基于FLASH的文件系统 Flash(闪存)作为嵌入式系统的主要存储媒介,有其自身的特性。Flash的写入操作只能把对应位置的1修改为0,而不能把0修改为1(擦除Flash就是把对应存储块的内容恢复为1),因此,一般情况下,向Flash写入内容时,需要先擦除对应的存储区间,这种擦除是以块(block)为单位进行的。 闪存主要有NOR和NAND两种技术(简单比较见附录)。Flash存储器的擦写次数是有限的,NAND闪存还有特殊的硬件接口和读写时序。因此,必须针对Flash 的硬件特性设计符合应用要求的文件系统;传统的文件系统如ext2等,用作Flash的文件系统会有诸多弊端。 在嵌入式Linux下,MTD(Memory Technology Device,存储技术设备)为底层硬件(闪存)和上层(文件系统)之间提供一个统一的抽象接口,即Flash的文件系统都是基于MTD驱动层的(参见上面的Linux下的文件系统结构图)。使用MTD 驱动程序的主要优点在于,它是专门针对各种非易失性存储器(以闪存为主)而设计的,因而它对Flash有更好的支持、管理和基于扇区的擦除、读/写操作接口。 顺便一提,一块Flash芯片可以被划分为多个分区,各分区可以采用不同的文件系统;两块Flash芯片也可以合并为一个分区使用,采用一个文件系统。即文件系统是针对于存储器分区而言的,而非存储芯片。 1.jffs2 JFFS文件系统最早是由瑞典Axis Communications公司基于Linux2.0的内核为嵌入式系统开发的文件系统。JFFS2是RedHat公司基于JFFS开发的闪存文件系统,最初是针对RedHat公司的嵌入式产品eCos开发的嵌入式文件系统,所以JFFS2也可以用在Linux,uCLinux中。 Jffs2:日志闪存文件系统版本2(Journalling Flash FileSystem v2) 主要用于NOR型闪存,基于MTD驱动层,特点是:可读写的、支持数据压缩的、基于哈希表的日志型文件系统,并提供了崩溃/掉电安全保护,提供“写平衡”支持等。缺点主要是当文件系统已满或接近满时,因为垃圾收集的关系而使jffs2的运行速度大大放慢。 目前jffs3正在开发中。关于jffs系列文件系统的使用详细文档,可参考MTD补丁包中mtd-jffs-HOWTO.txt。 jffsx不适合用于NAND闪存主要是因为NAND闪存的容量一般较大,这样导致jffs为维护日志节点所占用的内存空间迅速增大,另外,jffsx文件系统在

Linux文件系统分析

Linux文件系统分析 一、什么是文件系统 . 文件系统是包括在一个磁盘(包括光盘、软盘、闪盘及其它存储设备)或分区的目录结构;一个可应用的磁盘设备可以包含一个或多个文件系统;如果您想进入一个文件系统,首先您要做的是挂载(mount)文件系统;为了挂载(mount)文件系统,您必须指定一个挂载点;一旦文件系统被挂载。文件系统是在一个磁盘(包括光盘、软盘、闪盘及其它存储设备)或分区组织文件的方法,如NTFS或FAT;文件系统涉及两个非常独特的事情,目录树或在磁盘或分区上文件的排列;文件系统是基于操作系统的,建立在磁盘媒质上的可见体系结构,例如这种结构对于一个Unix用户来说可以用ls 或其它工具可以看到;文件系统是基于被划分的存储设备上的逻辑上单位上的一种定义文件的命名、存储、组织及取出的方法;在计算机业,一个文件系统是有组织存储文件或数据的方法,目的是易于查询和存取。文件系统是基于一个存储设备,比如硬盘或光盘,并且包含文件文件物理位置的维护;也可以说文件系统也是虚拟数据或网络数据存储的方法。 二、常见的文件系统 Linux系统核心支持十多种文件系统类型:jfs、 ReiserFS、ext、ext2、ext3、iso9660、xfs、 minx、msdos、umsdos、Vfat、NTFS、Hpfs、Nfs、smb、sysv、proc等。这里我们对最常用的几个文件系统的发展情况和优缺点作详细介绍:ext、ext2、ext3、jsf、、xfs、ReiserFS。一、 ext ext是第一个专门为Linux的文件系统类型,叫做扩展文件系统。它在1992年4月完成的。它为Linux的发展取得了重要作用。但是在性能和兼容性上存在许多缺陷。现在已经很少使用了。二、 ext2 ext2是为解决ext文件系统的缺陷而设计的可扩展的高性能的文件系统。又被称为二级扩展文件系统。它是在1993年发布的,设计者是Rey Card。ext2是Linux文件系统类型中使用最多的格式。并且在速度和CPU利用率上较突出,是 GNU/Linux 系统中标准的文件系统,其特点为存取文件的性能极好,对于中小型的文件更显示出优势,这主要得利于其簇快取层的优良设计。Ext2 可以支持256字节的长文件名,其单一文件大小与文件系统本身的容量上限与文件系统本身的簇大小有关,在一般常见的Intel x86兼容处理器的系统中,簇最大为 4KB, 则单一文件大小上限为 2048GB, 而文件系统的容量上限为 6384GB。尽管Linux可以支持种类繁多的文件系统,但是2000年以前几乎所有的Linux发行版都用ext2作为默认的文件系统。 ext2的缺点:ext2的设计者主要考虑的是文件系统性能方面的问题。ext2在写入文件内容的同时并没有同时写入文件的meta-data (和文件有关的信息,例如:权限、所有者以及创建和访问时间)。换句话说,Linux先写入文件的内容,然后等到有空的时候才写入文件的meta- data。这样若出现写入文件内容之后但在写入文件的meta-data之前系统突然断电,就可能造成在文件系统就会处于不一致的状态。在一个有大量文件操作的系统中出现这种情况会导致很严重的后果。另外但由于目前核心 2.4 所能使用的单一分割区最大只有 2048GB,尽管文件系统的容量上限为 6384G但是实际上能使用的文件系统容量最多也只有 2048GB。三、 ext3 ext3是由开放资源社区开发的日志文件系统,主要开发人员是Stephen tweedie。ext3被设计成是ext2的升级版本,尽可能地方便用户从ext2fs向ext3fs迁移。ext3在ext2的基础上加入了记录元数据的日志功能,努力保持向前和向后的兼容性。这个文件系统被称为ext2

Linux文件系统剖析

2007 年12 月03 日 在文件系统方面,Linux? 可以算得上操作系统中的“瑞士军刀”。Linux 支持许多种文件系统,从日志型文件系统到集群文件系统和加密文件系统。对于使用标准的和比较奇特的文件系统以及开发文件系统来说,Linux 是极好的平台。本文讨论Linux 内核中的虚拟文件系统(VFS,有时候称为虚拟文件系统交换器),然后介绍将文件系统连接在一起的主要结构。 基本的文件系统体系结构 Linux 文件系统体系结构是一个对复杂系统进行抽象化的有趣例子。通过使用一组通用的API 函数,Linux 可以在许多种存储设备上支持许多种文件系统。例如,read 函数调用可以从指定的文件描述符读取一定数量的字节。read 函数不了解文件系统的类型,比如ext3 或NFS。它也不了解文件系统所在的存储媒体,比如AT Attachment Packet Interface(ATAPI)磁盘、Serial-Attached SCSI(SAS)磁盘或Serial Advanced Technology Attachment(SATA)磁盘。但是,当通过调用read 函数读取一个文件时,数据会正常返回。本文讲解这个机制的实现方法并介绍Linux 文件系统层的主要结构。 什么是文件系统? 首先回答最常见的问题,“什么是文件系统”。文件系统是对一个存储设备上的数据和元数据进行组织的机制。由于定义如此宽泛,支持它的代码会很有意思。正如前面提到的,有许多种文件系统和媒体。由于存在这么多类型,可以预料到Linux 文件系统接口实现为分层的体系结构,从而将用户接口层、文件系统实现和操作存储设备的驱动程序分隔开。

(完整版)linux文件系统管理-权限管理实验4报告

实验报告 课程Linux系统应用与开发教程实验名称linux文件系统管理-权限管理(高级设置) 一、实验目的 1、掌握Linux文件系统权限的设置 2、掌握linux用户帐号与组管理 3、掌握linux 文件共享的设置方法 4、掌握linux 文件共享的权限设置方法 二、实验内容 1、使用root帐号通过系统提供的6个虚拟控制台登陆到linux,或在x-windows开启一个终端。 2、完成以下的实验内容 (1)、假设你是系统管理员:现要在公司linux服务器系统中新增一些用户与一个用户组。 ?使用groupadd account 添加一个名为account的组 ?使用useradd -G account acc-user1,(该命令将添加一个用户名为acc-user1的用户, 同时会建立一个与用户名同名的私有组(该私有组为用户的默认组,这个组中只有一个用户名),并把该用户将加入account的标准组,同时,按同样的方法建立acc-user2、acc-user3、acc-user4。 ?建立用户后,请使用x-window中的用户与组管理工具查看用户与组建立情况,检查用户与组的归属情况。 (2)、开启多个控制台,分别使用acc-user1、acc-user2、acc-user3登陆系统(可以在控制台分别登陆,也可以在X-windows中多开几个终端程序,默认使用root登陆,然后使用su命令通过切换用户的方式登陆,其语法为“su - user-name”,提示可以在登陆成功后运行命令“id”查看当前登陆的用户属于哪些组,当前的默认组是什么?) (3)、为account组建立一个公共共享目录/home/account-share,满足以下的权限设定要求,以及设置何种的umask: ?该目录的拥有者为acc-user1,所属组为account。 ?在该目录下建立一个/home/account-share/full-share的子目录,修改该目录的权限,使得account组的成员均能在对该目录有完全控制权限,account组外的其他用户没有任何权限,即account组的成员都可以在该目录下建立文件,同时在该子目录full-share下建立的文件,只有文件建立者有权限删除,并且每个用户在该子目录full-share下建立的文件也能自动与该account组成员可读共享。 ?在/home/account-share/为每个用户建立一个与用户名同名的子目录(如/home/account-share/acc-user1为用户acc-user1的目录,其拥有者为acc-user1,所在的组为account),配置该子目录的拥有者有完全控制权限,而同组用户只能读取,同时在用户在该目录下建立的文件,可供同组用户读。 (4)、考虑完成以上的共享目录权限设置,应注意哪些设置。包括目录的权限,目录的拥有者,目录所在的组,具体文件的权限,umask设置等。 (5)、实验报告应体现出使用不同身份的用户对所配置目录的访问测试过程。 三、实验环境 安装有vmware或visual pc软件的window主机,系统中有提供turbolinux或redhat的硬盘

Linux 0.1.1文件系统的源码阅读

Linux 0.11文件系统的源码阅读总结 1.minix文件系统 对于linux 0.11内核的文件系统的开发,Linus主要参考了Andrew S.Tanenbaum 所写的《MINIX操作系统设计与实现》,使用的是其中的1.0版本的MINIX文件系统。而高速缓冲区的工作原理参见M.J.Bach的《UNIX操作系统设计》第三章内容。 通过对源代码的分析,我们可以将minix文件系统分为四个部分,如下如1-1。 ●高速缓冲区的管理程序。主要实现了对硬盘等块设备进行数据高速存取的函数。 ●文件系统的底层通用函数。包括文件索引节点的管理、磁盘数据块的分配和释放 以及文件名与i节点的转换算法。 ●有关对文件中的数据进行读写操作的函数。包括字符设备、块设备、管道、常规 文件的读写操作,由read_write.c函数进行总调度。 ●涉及到文件的系统调用接口的实现,这里主要涉及文件的打开、关闭、创建以及 文件目录等系统调用,分布在namei和inode等文件中。 图1-1 文件系统四部分之间关系图

1.1超级块 首先我们了解一下MINIX文件系统的组成,主要包括六部分。对于一个360K软盘,其各部分的分布如下图1-2所示: 图 1-2 建有MINIX文件系统的一个360K软盘中文件系统各部分的布局示意图 注释1:硬盘的一个扇区是512B,而文件系统的数据块正好是两个扇区。 注释2:引导块是计算机自动加电启动时可由ROM BIOS自动读入得执行代码和数据。 注释3:逻辑块一般是数据块的2幂次方倍数。MINIX文件系统的逻辑块和数据块同等大小 对于硬盘块设备,通常会划分几个分区,每个分区所存放的不同的文件系统。硬盘的第一个扇区是主引导扇区,其中存放着硬盘引导程序和分区表信息。分区表中得信息指明了硬盘上每个分区的类型、在硬盘中其实位置参数和结束位置参数以及占用的扇区总数。其结构如下图1-3所示。 图1-3 硬盘设备上的分区和文件系统 对于可以建立不同的多个文件系统的硬盘设备来说,minix文件系统引入超级块进行管理硬盘的文件系统结构信息。其结构如下图1-4所示。其中,s_ninodes表示设备上得i节点总数,s_nzones表示设备上的逻辑块为单位的总逻辑块数。s_imap_blocks 和s_zmap_blocks分别表示i节点位图和逻辑块位图所占用的磁盘块数。 s_firstdatazone表示设备上数据区开始处占用的第一个逻辑块块号。s_log_zone_size 是使用2为底的对数表示的每个逻辑块包含的磁盘块数。对于MINIX1.0文件系统该值为0,因此其逻辑块的大小就等于磁盘块大小。s_magic是文件系统魔幻数,用以指明文件系统的类型。对于MINIX1.0文件系统,它的魔幻数是0x137f。

Linux文件系统实验

实验编号与实验名称: 文件系统实验 实验目的: 熟悉文件和目录的基本操作;了解Linux的/proc文件系统 实验内容及要求(详见实验讲义与实验指导书): 内容: 1)在/usr目录下创建一个目录usr_test和文本文件test,并建立一个test文件的链接 test02。通过修改test文件中的内容查看test和test02中内容的情况,并分析原因。 2)编写程序,从/proc文件中抽取内核参数(任意的2个参数即可,如CPU时钟速度信 息等) 3)实现文件的拷贝,即把一个文件内容复制到另一个文件 要求: 对于内容1),给出操作步骤和结果分析,需回顾第二次实验中练习过的Shell命令和教材中的文件和目录操作系统调用 对于内容2)和3)给出完整C语言代码或者代码截图和代码执行结果,可参考本文件“实验预读”中相关内容和教材P.149/266图4-5相关代码 实验用到的软件(:) VMware 实验内容及关键步骤(代码)Q2(60分) 1)在/usr目录下创建一个目录usr_test和文本文件test,并建立一个test文件的链接 test02。通过修改test文件中的内容查看test和test02中内容的情况,并分析原因。

分析:在linux系统中通过link连接就可以通过第三方的查询,通过link函数后test01被绑定给test02中,所以可以通过test02去查询。 2.编写程序,从/proc文件中抽取内核参数(任意的2个参数即可,如CPU时钟速度信息等)

3.实现文件的拷贝,即把一个文件内容复制到另一个文件

实验过程中遇到的问题解决办法与实验体会Q3(10分)得分: 评阅教师特殊评语: 评阅教师: 日期:

linux总结

1软件通常分为系统软件、应用软件、支撑软件 2 操作系统是用户与计算机硬件之间的界面,它是控制、管理计算机系统内各种硬件和软件资源,有效的组织多道程序运行的系统软件。 3 Linux系统吧计算机系统中的硬件资源和软件资源有机地结合在一起,从而提供丰富的功能,包括:控制硬件、管理资源、提供用户接口,处理输入/输出、监视系统、通信。 4 Linux的优点:1与UNIX系统兼容 2自由软件和源码公开 3 性能高和安全性强 4 便于制定和再开发 5 互操作性高 5 Linux 有俩种版本:核心(Kernel)版本和发行(Distribution)版本 6 Linux核心版本根据约定,若版本号为奇数,则表示该版本加入新内容,但不一定稳定,为测试版本。若版本号为偶数,则表示这是一个可以使用的稳定版本 7 安装红旗Linux需要俩个必备的分区,即一个根文件系统分区(类型为ext3,ext2或reiserfs)和一个交换分区(类型为swap) 8 Linux操作系统支持以下文件类型:普通文件、目录文件、设备文件和符号链接文件。 9 设备文件除了在文件I节点中存放属性信息外,他们不包含任何属性信息外,它不包含任何数据,系统利用它们来标记各个设备驱动器 10 符号链接文件时一种特殊文件,提供对其他文件的参照 11 cp命令将源文件或目录复制到目标文件或目录中 12 rm命令删除文件或目录 13 mv命令对文件或目录重新命令,或者将文件从一个目录移到另一个目录中。 14 wc命令统计指定文件的字节数、字数、行数,并将统计结果显示出来 15 绝对路径名和相对路径名的联系与区别 联系:当为命令指定文件路径名是,要指定俩种路径中一种 区别:绝对路径名总是以斜线字符(/)开头 相对路径不能以斜线字符开头 16 硬链接:建立硬链接时,在别的目录或本目录中增加目标文件的一个目录项,这样的一个文件就登记在多个目录中 17 符号链接(软链接)是将一个路径名链接到一个文件,这些文件是一种特别类型的文件 18 软硬链接的区别:1软链接建立了一个新文件而硬链接没有建立新文件 2 软链接没有硬链接的限制,可以对目录文件建立软链接,也可以在不同文件系统之间建立软链接 19 chgrp命令改变文件或目录所属的用户组 20 chown命令改变某个文件或目录的所有者和所属的组 21 ps命令查看当前系统中运行的进程信息 22 kill命令用来终止一个进程的运行 23 vi编辑器三中工作方式:命令方式、插入方式、ex转义方式 24 退出vi的命令 :wq :ZZ :x :q! 四种 25 执行shell脚本的方式: 1 输入定向到shell脚本 2 以脚本名作为bash 参数 3 将shell脚本的权限设置为可执行 26 名称补全的方法是输入目录或文件名的开头部分,然后按Tab键 27 通配符用于模式匹配(四种 * ? [字符组] !) 27 由双引号括起来的字符除($ ‘ \)均作为普通字符对待

linux文件系统的权限王国(一)

作者:池建强 在这个系列中和?大家聊聊 Linux 的?文件、?用户、?用户组、?文件系统的权限等内容,其中很多细节也是我使?用了很?长时间 Linux 后才真正掌握,希望?大家不?用那么久。 为什么是 Linux ?我觉得写技术的东?西还是相对严谨?一些好,虽然Unix 、Linux 、OS X ?一脉相承,但在具体命令上还是会有些差异,这个系列?文章?里所有的命令和显?示结果都是在 Linux 上进?行的,?大家可以对照在 Mac 上试试,当然最后也会讲?一点 OS X 的内容,否则怎么叫 MacTalk 呢? 在开始讲 Linux ?王国的?臣民之前,先介绍?一下?王国中最?牛的主:root ,这货不翻译为「根」,也不叫「管理员」,?而是被尊称为超级Linux ?文件系统的权限?王国(?一)

?用户,是不是觉得?高端霸?气?超级?二字绝不是恭维之词,从 Linux ?王国诞?生之初,root 就存在了,他会?一直霸占着超级?用户的?角?色并世世代代存在下去,没有禅让,没有民选,没有换位,所有的?用户都?自他?而起。如果你以为 root 会像上帝创造亚当和夏娃那样,让这?二位开开?心?心?生娃去了,那你就太Naive了。Linux 系统中的所有?用户要么由root 创建,要么借?用 root 的权限创建,等级极为森严,总之没有 root 的允许,想搞出?一位新?用户绝?无可能。看到这你们是不是都开始觉得计划?生育政策好啦? root 不仅能够管理?用户,还能管理?文件系统、进程、设备、??网络、通信、协议等等,总之他就像站在神?山上的神祗,俯视着芸芸众?生,看着数据信息在软件和硬件之间川流不息,时不时的做?一些计划性干预,如果有?人想超越系统的规则,他就能让你消失的像从来没有存在过。 所以那些成天叫嚣被蹂躏被代表的民众,看看 root,?大家?心理就会舒服?一些。 以 root 开篇,下?面我们聊聊 Linux 的?文件系统和索引节点。 Linux 的?文件系统本?身是?比较复杂的,仅 ext2、ext3 和 ext4 就得解释好?几天,本?文的重点不在于此,所以简单介绍?一下。?文件系统主要是?用来保存?文件和相关结构的,让?文件存储更安全、更快、更容易检索、能?支持更?大的物理介质等等。在 Linux 系统中,每个磁盘分区都可以看做?一个?文件系统,每个系统都有?自?己的??目录结构,Linux 会把这些分区按照?一定的?方式组织成统?一的??目录结构,?方便?用户访问。但是每个分区上的?文件系统都是独?立的,可以采?用不容的?文件格式,就像?一国两制?一样,虽然统?一,但是?自治。 那么如何查看?文件系统的格式呢?可以使?用 df -T -h 命令,T 表?示打印?文件格式,h 表?示?用G 或 M 来显?示?文件?大?小,如下:

详细分析Linux文件系统格式优劣

?摘要:Linux支持多种文件系统,包括ext2、iso9660、jffs、ext3、vfat、ntfs、romfs和nfs等,为了对各类文件系统进行统一管理,Linux引入了虚拟文件系统VFS(Virtual File System) ?标签:文件系统 ?Linux由于其开源安全特性正在被多数企业所接受。Linux支持很多种文件系统,ext3、vfat、ntfs、romfs和nfs等,为了对各类文件系统进行统一管理,Linux引入了另一个文件系统VFS(Virtual File System)。下面我们就分析一下他的各种文件系统格式的特点 基于RAM的文件系统 (1)Ramdisk Ramdisk是将一部分固定大小的内存当作分区来使用。它并非一个实际的文件系统,而是一种将实际的文件系统装入内存的机制,并且可以作为根文件系统。将一些经常被访问而又不会更改的文件(如只读的根文件系统)通过Ramdisk放在内存中,可以明显地提高系统的性能。 在Linux的启动阶段,initrd提供了一套机制,可以将内核映像和根文件系统一起载入内存。 (2)ramfs/tmpfs Ramfs是LinusTorvalds开发的一种基于内存的文件系统,工作于虚拟文件系统(VFS)层,不能格式化,可以创建多个,在创建时可以指定其最大能使用的内存大小。(实际上,VFS 本质上可看成一种内存文件系统,它统一了文件在内核中的表示方式,并对磁盘文件系统进行缓冲。 Ramfs/tmpfs文件系统把所有的文件都放在RAM中,所以读/写操作发生在RAM中,可以用ramfs/tmpfs来存储一些临时性或经常要修改的数据,例如/tmp和/var目录,这样既避免了对Flash存储器的读写损耗,也提高了数据读写速度。 Ramfs/tmpfs相对于传统的Ramdisk的不同之处主要在于:不能格式化,文件系统大小可随所含文件内容大小变化。 Tmpfs的一个缺点是当系统重新引导时会丢失所有数据。 3.网络文件系统NFS(NetworkFileSystem) NFS是由Sun开发并发展起来的一项在不同机器、不同操作系统之间通过网络共享文件的技术。在嵌入式Linux系统的开发调试阶段,可以利用该技术在主机上建立基于NFS 的根文件系统,挂载到嵌入式设备,可以很方便地修改根文件系统的内容。 附录:NOR闪存与NAND闪存比较

Linux文件系统目录结构的详细解说 1

linux一些重要子目录的解说收藏 /etc/init.d 这个目录是用来存放系统或服务器以System V模式启动的脚本,这在以System V 模式启动或初始化的系统中常见。比如Fedora/RedHat; /etc/xinit.d 如果服务器是通过xinetd模式运行的,它的脚本要放在这个目录下。有些系统没有这个目录,比如Slackware,有些老的版本也没有。在Rehat/Fedora中比较新的版本中存在。 /etc/rc.d 这是Slackware发行版有的一个目录,是BSD方式启动脚本的存放地;比如定义网卡,服务器开启脚本等。 /etc/X11 这是X-Windows相关的配置文件存放地。 /usr/bin 这个目录是可执行程序的目录,普通用户就有权限执行;当我们从系统自带的软件包安装一个程序时,他的可执行文件大多会放在这个目录。比如安装gaim软件包时。相似的目录是/usr/local/bin;有时/usr/bin中的文件是/usr/local/bin的链接文件; /usr/sbin 这个目录也是可执行程序的目录,但大多存放涉及系统管理的命令。只有root权限才能执行;相似目录是/sbin 或/usr/local/sbin或/usr/X11R6/sbin等; /usr/local 这个目录一般是用来存放用户自编译安装软件的存放目录;一般是通过源码包安装的软件,如果没有特别指定安装目录的话,一般是安装在这个目录中。这个目录下面有子目录。自己看看吧。 /usr/share 系统共用的东西存放地,比如/usr/share/fonts 是字体目录,/usr/share/doc和/usr/share/man帮助文件。 /usr/src 是内核源码存放的目录,比如下面有内核源码目录,比如linux 、linux-2.xxx.xx 目录等。有的系统也会把源码软件包安装在这里。比如Fedora/Redhat,当我们安装file.src.rpm 的时候,这些软件包会安装在/usr/src/redhat相应的目录中。 /var/adm 比如软件包安装信息、日志、管理信息等,在Slackware操作系统中是有这个目录的。在Fedora中好象没有;自己看看吧。 /var/log 系统日志存放,分析日志要看这个目录的东西; /var/spool 打印机、邮件、代理服务器等假脱机目录; 5、附录:目录结构的简明查阅手册

02.linux文件系统

常见的目录: / Linux系统根目录 /bin 系统启动时候需要的二进制文件(二进制) /dev 设备文件目录 /etc 操作系统的配置文件 /home 用户信息存放的目录 /usr 程序和数据存放的目录 /var 包含在正常操作中被改变的目录:假脱机文件,记录文件 加锁文件 目录文件操作命令 pwd:查看当前所在目录 cd:打开目录 ls -a:查看目录文件 ll:以列的方式显示目录下的文件列表 mkdir:创建文件目录 rm -rf :删除文件或者目录 rm -ri: 删除文件前询问用户 cp :复制文件命令 mv: 移动文件或者修改用户名 eg: mv usr/local/test1 usr/local/test2 rm -rf usr/local/test1 usr/local/test2/test1

文件操作命令:[了解] head:从文件开始显示文件内容 head -n:显示文件开始的n行数据 tail:从文件结尾显示文件内容 tail -f:动态加载某个文件内容 tail -n:查看文件结尾n行内容 文件编辑命令: vim:一款功能强大的全屏幕文本编辑器 vi命令: 打开文件: vim【文件名】 进入编辑模式: i ,a 退出编辑模式:esc键 进入命令模式:“:” 保存并退出:wq或者x 退出不保存:q! 保存:w 练习: 1.需求说明 将myInfo.txt中的hadoop替换成mongoDB,并保存文件在myInfo.txt 第二后插入以下语句后保存文件 Linux is fun. 查看myinfo.txt的第二行信息 将myinfo.txt 重命名为wangmingInfo.txt 复制wangmingInfo.txt 到test/java/javaEE/student目录删除原来的temp目录 2.需求说明 在用户主目录下递归创建 test/java/javaEE/ 文件目录 进入test/java/javaEE/目录,并创建temp/文件目录

实验五 Linux文件系统和权限管理

实验5 Linux文件系统和权限管理 1 实验目的 1、掌握Linux文件系统的控制机制及权限的表示方法。 2、掌握权限管理常用的命令。 2 实验环境 VMware中已经安装好CentOS5.4版本。 3 实验原理 1、Linux文件系统权限及管理机制可参见教材P83~P84。 2、Linux常用文件权限管理命令主要有:chmod、chown两个,这些命令的使用可参见教材P86~P104或者帮助手册。 4 实验任务 1、使用chm od、chown命令完成文件权限的设置、修改等操作。 5 实验步骤 1、使用命令查看/etc/hosts文件的权限,其权限是。 2、使用命令可以复制文件/etc/hosts到目录/tmp 下,然后使用命令或设置其读写权限为:文件所有者可以读、写和执行,同组用户可以读和执行,其他用户只可以执行。(要求使用两种方法实现) 3、修改题目2中复制的文件的所有者:所有者为用户test(需要事先创建),组所有者为m ail,使用的命令是。 4、查看系统当前的um ask值,并设置umask值为033,创建文件word,其权限是。(自己验证。想一想,为什么?) 5、将系统的时间设置为22:10的命令是,将日期和时间按照格式:mm/dd/yy hh:mm:ss显示输出的命令是。 6、保存2009年全年的日历在文件cal2009中的命令是。 7、将2009年1月的日历导出保存到文件cal.1中的命令是,将2009年2月的日历追加到2009年1月的日历后面的命令是。 8、假定需要显示信息:host: 主机名。使用hostnam e命令替换显示主机的名称的操作是

通俗易懂讲解Linux文件系统

Linux 文件系统基本概念 Linux 在最初的设i|?是MINIX1文件系统,它只支持14字节的文件名, 它的最大文件只支持到64MBo 在MINIX 1之后的文件系统是exl 文件系统。 ext 系统相较于MINIX 1来说,在支持字节大小和文件大小上均有很大提升, 但是ext 的速度仍没有MINIX 1快,于是,ext 2被开发出来,它能够支持长 文件名和大文件,而且具有比MINIX 1更好的性能。这使他成为Linux 的主 要文件系统。只不过Linux 会使用VFS 曾支持多种文件系统。在Linux 链接 时,用户可以动态的将不同的文件系统挂载倒VFS 上。 Linux 中的文件是一个任意长度的字节序列,Linux 中的文件可以包含任 意信息,比如ASCII 码、二进制文件和其他类型的文件是不加区分的。 为了方便起见,文件可以被组织在一个U 录中,U 录存储成文件的形式在 很大程度上可以作为文件处理。U 录可以有子U 录,这样形成有层次的文件系 统,Linux 系统下面的根U 录是/,它通常包含了多个子U 录。字符/还用于对 U 录名进行区分,例如/usr/cxuan 表示的就是根目录下面的usr tl 录,其中有 一个叫做cxuan 的子U 录。 下面我们介绍一下Linux 系统根口录下面的U 录名 ? /bin,它是巫要的二进制应用程序,包含二进制文件,系统的所有用户使用的命 令都 在这里 ? /boot,启动包含引导加载程序的相关文件 ? /dev.包含设备文件,终端文件,USB 或者连接到系统的任何设备 ? /etc,配置文件,启动脚本等,包含所有程序所需要的配置文件,也包含了启动 /停 止单个应用程序的启动和关闭shell 脚本 ? /home,本地主要路径,所有用户用home U 录存储个人信息 ? /lib,系统库文件,包含支持位于/bin 和/sbin 下的二进制库文件 ? /lost+found,在根U 录下提供一个遗失+査找系统,必须在root 用户下才能査 看当 前U 录下的内容 ? /media,挂载可移动介质 ? /mnt,挂载文件系统 ? /opt,提供一个可选的应用程序安装U 录 ? /proc.特殊的动态U 录,用于维护系统信息和状态,包括当前运行中进程信息 root 用户的主要U 录文件夹 巫要的二进制系统文件 系统和用户创建的临时文件,系统重启时,这个U 录下的文件都会被删 /usr,包含绝大多数用户都能访问的应用程序和文件 /var,经常变化的文件,诸如日志文件或数据库等 在Linux 中,有两种路径,一种是绝对路径(absolute path),绝对路径告 诉你从根U 录下查找文件,绝对路径的缺点是太长而且不太方便。还有一种 是相对路径(relative path),相对路径所在的LI 录也叫做丄作tl 录(working directory)。 如果/usr/local/books 是工作U 录,那么shell 命令 cp books books-replica 就表示的是相对路径,而 cp /usr/Iocal/books/books /usr/local/books/books-replica /root ? /sbim /tmp,

linux文件系统的比较

Linux日志文件系统及性能分析 简介:日志文件系统可以在系统发生断电或者其它系统故障时保证整体数据的完整性,Linux是目前支持日志文件系统最多的操作系统之一,本文重点研究了Linux常用的日志文件系统:EXT3、ReiserFS、XFS和JFS日志技术,并采用标准的测试工具PostMark和Bonnie++对它们进行了测试,给出了详细的性能分析,对Linux服务器应用具有重要的参考价值。 一、概述 所谓日志文件系统是在传统文件系统的基础上,加入文件系统更改的日志记录,它的设计思想是:跟踪记录文件系统的变化,并将变化内容记录入日志。日志文件系统在磁盘分区中保存有日志记录,写操作首先是对记录文件进行操作,若整个写操作由于某种原因(如系统掉电)而中断,系统重启时,会根据日志记录来恢复中断前的写操作。在日志文件系统中,所有的文件系统的变化都被记录到日志,每隔一定时间,文件系统会将更新后的元数据及文件内容写入磁盘。在对元数据做任何改变以前,文件系统驱动程序会向日志中写入一个条目,这个条目描述了它将要做些什么,然后它修改元数据。目前Linux的日志文件系统主要有:在Ext2基础上开发的Ext3,根据面向对象思想设计的ReiserFS,由SGI IRIX系统移植过来的XFS,由IBM AIX系统移植过来的JFS,其中EXT3完全兼容EXT2,其磁盘结构和EXT2完全一样,只是加入日志技术;而后三种文件系统广泛使用了B树以提高文件系统的效率。

回页首 二、Ext3 Ext3文件系统是直接从Ext2文件系统发展而来,目前Ext3文件系统已经非常稳定可靠,它完全兼容Ext2文件系统,用户可以平滑地过渡到一个日志功能健全的文件系统。Ext3日志文件系统的思想就是对文件系统进行的任何高级修改都分两步进行。首先,把待写块的一个副本存放在日志中;其次,当发往日志的I/O 数据传送完成时(即数据提交到日志),块就写入文件系统。当发往文件系统的I/O 数据传送终止时(即数据提交给文件系统),日志中的块副本就被丢弃。 2.1 Ext3日志模式 Ext3既可以只对元数据做日志,也可以同时对文件数据块做日志。具体来说,Ext3提供以下三种日志模式: ?日志(Journal ) 文件系统所有数据和元数据的改变都记入日志。这种模式减少了丢失每个文件所作修改的机会,但是它需要很多额外的磁盘访问。例如,当一个新文件被创建时,它的所有数据块都必须复制一份作为日志记录。这是最安全和最慢的Ext3日志模式。 ?预定(Ordered ) 只有对文件系统元数据的改变才记入日志。然而,Ext3文件系统把元数 据和相关的数据块进行分组,以便把元数据写入磁盘之前写入数据块。这

linux 实验报告 文件系统与文件管理

学生课程实验报告书课程:《linux网络操作系统》 级系 专业班 学号: 姓名: 指导教师:

一、实验项目:用户与组群管理 二、实验日期: 三、实验原理: 1.熟悉Linux下常用的操作指令。 2.加深对文件,目录,文件系统等概念的理解。 3.掌握Linux文件系统的目录结构。 4.掌握有关Linux文件系统操作的常用命令。 5.了解有关文件安全方面的知识。 四、实验仪器: PC机 Redhat网络操作系统 五、实验步骤(纸张不够写可另外加纸并应装订): 进入虚拟机,并在此平台上练习文件管理有关命令.一般在[root @ localhost xxxx]$ 提示符下键入有关命令。 1.浏览文件系统 〈1〉运行pwd命令,确定你当前的工作目录。 〈2〉利用以下命令显示当前工作目录的内容:(理解各字段彻底意义。) 〈3〉运行以下命令:(反馈信息中.代表本身目录,..代表其父目录;选项a可以显示隐藏文件;选项i 可以显示文件的I节点号) ls –ai 〈4〉使用mkdir命令建立一个子目录subdir,并用ls查看当前目录。 〈5〉使用带-d选项的ls命令,你只能看到有关子目录的信息(.表示本身目录)。

〈6〉使用cd命令,将工作目录改到根目录(/)上。 ①用相对路径将工作目录改到根目录。 ②用绝对路径将工作目录改到根目录。 〈7〉使用ls命令列出根目录的内容,再分别列出各子目录的内容,体会各目录作用及访问权限。 〈8〉使用ls-l命令列出/dev的内容。 Ls –l /dev 列出/dev目录的内容,文件太多显示多屏,各行第一个字符为b的表示块特别文件;各行第一个字符为c的表示字符特别文件。 〈9〉使用不带参数的命令cd,然后用pwd命令确定你当前的工作目录是什麽。 〈10〉使用命令cd ../..,你将工作目录移到什麽地方? 2.查看你的文件 〈1〉利用cd命令,将工作目录改到你的主目录上。 〈2〉将工作目录改到你的子目录subdir,然后运行命令: date > file1 将当前日期和时间存放到新建文件file1中。 Ls –l 反馈信息中有新文件 file1。请注意并记下文件长度为:

UnixLinux文件系统简介

Unix/Linux 文件系统简介 一、Unix 命令格式 1、Unix 命令提示符 在命令行操作环境下,Unix 系统会显示一提示符,提示用户可以在此提示符后输入一行命令。不同的Shell 有不同的缺省提示符,如 B Shell 、Bourne-again Shell 的缺省提 示符为"$" ,C Shell 的缺省提示符为"%" 。但当以root 用户登录时,系统提示符统一缺省为"#" 。 2、基本命令格式 Unix 命令的基本格式如下: Command [option(s)] [argument(s)] Unix 命令由一个命令(command )和零到多个参数构成。Unix 的命令区分大小写,且命令和参数之间、参数与参数之间都应用空格隔开。 二、Unix 文件系统 1、Unix 文件系统分类 Unix 操作系统可由多个可以动态安装及拆卸的文件系统组成。Unix 文件系统主要分为两大类:根文件系统和附加文件系统。根文件系统是Unix 系统至少应含有的一个文件系统,它包含了构成操作系统的有关程序和目录,由“/ ”符号来表示。附加文件系统是除根文件系 统以外的其它文件系统,它必须挂(mount )到根文件系统的某个目录下才能使用。本文中若无特别声明,则都是针对根文件系统来进行说明的。 2、Unix 文件类型 在Unix 中文件共分为四种: (1)普通文件(- ):又分为文本文件、二进制文件、数据文件; ( 2 )目录文件( d ); ( 3 )设备文件(l ); (4)链接文件(b/c ):又可分为块设备文件、字符设备文件。 普通文件中的文本文件主要包括ASCII 文本文件、英文文本文件和一些可执行的脚本文件等;二进制文件主要是32 位的可执行文件等;数据文件主要是系统中的应用程序运行时产生的文件。 目录文件是用来存放文件目录的。 设备文件代表着某种设备,一般放在/dev 目录下。它分为块设备文件和字符设备文件,块设备文件以区块为输入输出单元,如磁盘;字符设备文件是以字符作为输入输出单元,如串口。 链接文件类似于Windows 系统中的快捷方式,它指向链接文件所链接着的文件。 值得注意的是,与Windows 系统不同,Unix 系统中目录本身就是一个文件,另外文件类型与文件的后缀名无关。 不同类型的文件有着不同的文件类型标识(可使用“ls -l ”命令来进行查看),它们使用 下列符号来表示相应的文件类型: - 普通文件d 目录文件b 块设备文件c 字符设备文件 l 链接文件 3、Unix 目录结构 Unix 系统采用树型的目录结构来组织文件,每一个目录可能包含了文件和其他的目录。 该结构以根目录“/ 为”起点向下展开,每个目录可以有许多子目录,但每个目录都只能有一个父目录。 4、Unix 文件名称 Unix 文件名称的最大长度为256 字符,其对字母大小写敏感,比如file1 和File1 是表示两个不同的文件。要说明的是,如果用“.作”为文件名的第一个字母,则表示此文件为 隐含文件,如“ .cshrc ”文”件(对于此文件,后文将有介绍)。

Linux文件系统分析-精品

Linux文件系统分析-精品 2020-12-12 【关键字】目录、情况、空间、文件、运行、地方、系统、透明、配合、执行、统一、发展、建立、了解、位置、网络、基础、需要、环境、方式、特色、办法、标准、结构、反映、速度、关系、分析、管理、引导、服务、实现 1. 磁盘分区和目录 Linux 发行版本之间的差别很少,差别主要表现在管理的特色工具以及软件包管理方式的不同。目录结构基本上都是一样的。Windows 的文件结构是多个并列的树状结构,最顶部的是不同的磁盘(分区),如:C , D , E , F 等。 Linux 的文件结构是单个的树状结构. 可以用tree 进行展示。在Ubuntu 下安装tree (sudo apt-get install tree ), 并可通过命令来查看。 每次安装系统的时候我们都会进行分区,Linux 下磁盘分区和目录的关系如下: –任何一个分区都必须挂载到某个目录上。 –目录是逻辑上的区分。分区是物理上的区分。 –磁盘Linux 分区都必须挂载到目录树中的某个具体的目录上才能进行读写操作。 –根目录是所有Linux 的文件和目录所在的地方,需要挂载上一个磁盘分区。 以下是我们可能存在的一种目录和分区关系: 图1:目录和分区关系 Q: 如何查看分区和目录及使用情况? –fdisk 查看硬盘分区表 –df :查看分区使用情况 –du: 查看文件占用空间情况 Q:为什么要分区,如何分区?

–可以把不同资料,分别放入不同分区中管理,降低风险。 –大硬盘搜索范围大,效率低 –磁盘配合只能对分区做设定 –/home /var /usr/local 经常是单独分区,因为经常会操作,容易产生碎片 2. Mount 挂载和NFS 简介 挂载的概念:当要使用某个设备时,例如要读取硬盘中的一个格式化好的分区、光盘或软件等设备时,必须先把这些设备对应到某个目录上,而这个目录就称为“挂载点(mount point )”,这样才可以读取这些设备,而这些对应的动作就是“挂 载”。将物理分区细节屏蔽掉。用户只有统一的逻辑概念。所有的东西都是文件。Mount 命令可以实现挂载: mount [-fnrsvw] [-t vfstype] [-o options] device dir Q :所有的磁盘分区都必须被挂载上才能使用,那么我们机器上的硬盘分区是如何被挂载的? A :这主要是它利用了/etc/fstab 文件。每次内核加载它知道从这里开始mount 文件系统。每次系统启动会根据该文件定义自动挂载。若没有被自动挂载,分区将不能使用。如下是我的/etc/fstab 的定义,主要是根据装机的分区来的: # proc/proc proc defaults00 #/dev/sda1 被自动挂载到/ UUID=cb1934d0-4b72-4bbf-9fad-885d2a8eeeb1 /ext3relatime,errors=remount-ro 01 # /dev/sda5 被自动挂载到分区/home UUID=c40f813b-bb0e-463e-aa85-5092a17c9b94 /home ext3relatime02 #/dev/sda7 被自动挂载到/work UUID=0f918e7e-721a-41c6-af82-f92352a568af /work ext3relatime02 # 分区/dev/sda6 被自动挂载到swap UUID=2f8bdd05-6f8e-4a6b-b166-12bb52591a1f none swap sw00 Q :移动硬盘如何挂载?如何挂载一个新的分区? 移动硬盘有驱动模块会自动挂载,如果有个新硬盘,要先进行分区,并通过mount 命令挂载到某个文件夹。如果要自动挂载则可以修改/etc/fstab 文件. NFS 简介:NFS 相信在很多地方都有广泛使用,是一个非常好的文件共享方式。我们公司所使用的上传服务就是把文件上传到某台网络服务器上,中间就是通过NFS 实现。 使用NFS 客户端可以透明的地访问服务器端的文件。NFS 也是通过mount 来实现,底层是通过NFS 通信协议实现。基本原理:

相关主题