《Linux操作系统》课程教学课件(PPT讲稿)ch7 文件和文件系统结构

第7章文件和文件系统结构FILESANDFILESYSTEMSTRUCTURE
第7章 文件和文件系统结构 FILES AND FILE SYSTEM STRUCTURE

本章内容说明LINUX的文件概念讨论LINUX支持的各种文件类型描述文件的属性说明路径名的概念说明LINUX文件系统的用户视图描述LINUX文件系统的用户界面浏览文件系统讨论LINIUX系统内部的文件表示描述LINUX文件是如何存储在磁盘中的说明LINUX中标准文件的概念介绍“~”"j"、PATH、cat、more、cddirs、echo、file、Is、mkdir、popd、pwd、rmdir、ypcat等命令和原语7.2
7.2 本章内容 说明LINUX的文件概念 讨论LINUX支持的各种文件类型 描述文件的属性 说明路径名的概念 说明LINUX文件系统的用户视图 描述LINUX文件系统的用户界面——浏览文件系统。 讨论LINIUX系统内部的文件表示 描述LINUX文件是如何存储在磁盘中的 说明LINUX中标准文件的概念 介绍“~”、“.”、“..”、“/”、PATH、cat、more、cd 、dirs、echo、file、ls、mkdir、popd、pwd、rmdir、ypcat 等命令和原语

Linux文件概念Linux中,文件是一个字节序列Linux把所有东西看作文件来处理,如:Asimplefile(text/executable)普通文件A directoryA keyboardAprinterA disk driveAnetwork interface card, etc.7.3
7.3 Linux 文件概念 Linux中, 文件是一个字节序列 Linux 把所有东西看作文件来处理,如: A simple file (text/executable) 普通文件 A directory A keyboard A printer A disk drive A network interface card, etc

Linux文件类型普通文件文件名最长不能超过255个字符可以用任何字符给文件命名强烈建议不要使用非打印字符、空白字符(空格和制表符)和shell命令保留字符扩展名对LINUX系统来说没有任何意义可以任意给文件名加上你自已或应用程序定义的扩展名(e.g..cfileextensionisrequiredbyCcompilers)自录文件:是文件系统中一个目录所包含的目录项组成的文件。目录文件只允许系统进行修改。用户进程可以读取目录文件,但不能对它们进行修改。两个特殊的目录项””代表目录本身,””表示父目录。7.4
7.4 Linux 文件类型 普通文件 文件名最长不能超过255个字符 可以用任何字符给文件命名 强烈建议不要使用非打印字符、空白字符(空格和制 表符)和shell 命令保留字符 扩展名对LINUX系统来说没有任何意义 可以任意给文件名加上你自己或应用程序定义的扩展 名 (e.g. .c file extension is required by C compilers) 目录文件:是文件系统中一个目录所包含的目录项组 成的文件。目录文件只允许系统进行修改。用户进程 可以读取目录文件,但不能对它们进行修改。两个特 殊的目录项”·”代表目录本身,”··”表示父目录

Linux文件类型contLinux继承了UINX,把文件名和文件控制信息分开管理文件控制信息单独组成一个称为i节点(inode)。inode实质上是一个由系统管理的“目录项”。每个文件对应一个inode,它们有唯一的编号,称为inode号。Linux的目录项主要由文件名和inode号组成。1555915i240长文件名514文件索引节点表7.5
7.5 Linux 文件类型cont. Linux继承了UINX,把文件名和文件控制信息分开管理, 文件控制信息单独组成一个称为i节点(inode)。inode实质 上是一个由系统管理的“目录项”。每个文件对应一个 inode,它们有唯一的编号,称为inode号。 Linux的目录项主要由文件名和inode号组成

Linux文件类型-Ext2目录项Structureofadirectoryentry*#defineEXT2NAMELEN255I*Thenewversionofthedirectory entry.SinceExT2structuresarestored in intel byteorder,andthenamelenfieldcouldneverbebiggerthan255chars,it'ssafetoreclaimtheextrabyteforthe file_type field. */structext2dir_entry_2I*Inode number */_u32inode;_u16rec_len;I*Directory entry length *u8 name_len;[* Name length */u8file_type;*File name *char name[EXT2_NAME_LEN];3;I*Ext2directory file types.Only thelow3bits areused.The otherbits are reservedfor now.*enum(EXT2_FT_UNKNOWN,EXT2_FT REGFILEEXT2FTDIREXT2 FT CHRDEV,EXT2FTBLKDEV,EXT2 FT FIFO,EXT2 FT SOCKEXT2_FT_SYMLINK,EXT2_FT MAX3;7.6
7.6 Linux 文件类型-Ext2 目录项 /* Structure of a directory entry */ #define EXT2_NAME_LEN 255 /* The new version of the directory entry. Since EXT2 structures are stored in intel byte order, and the name_len field could never be bigger than 255 chars, it's safe to reclaim the extra byte for the file_type field. */ struct ext2_dir_entry_2 { _u32 inode; /* Inode number */ _u16 rec_len; /* Directory entry length */ _u8 name_len; /* Name length */ _u8 file_type; char name[EXT2_NAME_LEN]; /* File name */ }; /* Ext2 directory file types. Only the low 3 bits are used. The other bits are reserved for now.*/ enum { EXT2_FT_UNKNOWN, EXT2_FT_REG_FILE, EXT2_FT_DIR, EXT2_FT_CHRDEV, EXT2_FT_BLKDEV, EXT2_FT_FIFO, EXT2_FT_SOCK, EXT2_FT_SYMLINK, EXT2_FT_MAX };

Linux文件类型(cont.)ext2 inode :struct ext2_inode /*文件类型和访问权限*/u16 i mode:_u16i_uid;/*拥有者的用户ID*/u32i_size;/*文件大小*/*最近一次访问时间*_u32 i_atime;*创建时间*_u32 i_ctime;*最近一次修改时间*_u32 i_mtime;_u16i_gid;/*文件的组ID*/u32iblocks;/*分配给该文件的磁盘块的数目*/_u32i_block[EXT2NBLOCKS];/*指向磁盘块的指针*/;7.7
7.7 Linux 文件类型(cont.) ext2_inode: struct ext2_inode { _u16 i_mode; /* 文件类型和访问权限 */ _u16 i_uid; /* 拥有者的用户ID */ _u32 i_size; /* 文件大小 */ _u32 i_atime; /* 最近一次访问时间 */ _u32 i_ctime; /* 创建时间 */ _u32 i_mtime; /* 最近一次修改时间 */ _u16 i_gid; /* 文件的组ID */ _u32 i_blocks;/* 分配给该文件的磁盘块的数目 */ _u32 i_block[EXT2_N_BLOCKS];/*指向磁盘块的指针 */ . };

Linux文件类型(cont)设备文件:字符设备文件和块设备文件。Linux把对设备的I/Oz作为对文件的读取/写入操作内核提供了对设备处理和对文件处理的统一接口。fdo (for floppy drive 0)hda (for harddisk a)lpo(forlineprinterO)tty (forteletypeterminal)管道(FIFO)文件:用于在进程间传递数据。Linux对管道的操作与文件操作相同,它把管道做为文件进行处理。链接文件:又称符号链接文件,它提供了共享文件的一种方法。socket文件7.8
7.8 Linux 文件类型(cont.) 设备文件:字符设备文件和块设备文件。Linux把对设 备的I/Oz作为对文件的读取/写入操作内核提供了对设 备处理和对文件处理的统一接口。 fd0 (for floppy drive 0) hda (for harddisk a) lp0 ( for line printer 0) tty (for teletype terminal) 管道(FIFO)文件:用于在进程间传递数据。Linux对管 道的操作与文件操作相同,它把管道做为文件进行处 理。 链接文件:又称符号链接文件,它提供了共享文件的 一种方法。 socket文件

文件系统结构FileSystemStructurerootost+founsbinbirbootoottmryar005adminfacultystudentsliblocalbirfdhdttygroup passwdbobksarwarpersonalcoursesee231ee446passwdletterlabsexams目录文件非目录文件solutionsmidlmid2图7.2典型的LINUX文件系统结构7.9
7.9 文件系统结构File System Structure bin boot dev etc home lib lost+found mnt opt proc root sbin tmp usr var root admin faculty students bin lib local bobk sarwar courses personal ee231 ee446 fd hd tty group passwd letter passwd exams labs mid1 mid2 solutions 目录文件 非目录文件 图7.2 典型的LINUX文件系统结构

文件系统结构主目录(登录目录)HomeDirectoriesWhen you logon, you are placed in a special directory, calledyour home directory (To see enter“echo sHOME)字符“~”来表示你的主目录当前工作目录PresentWorkingDirectories当前目录.(dot)父目录(dotdot)绝对路径AbsolutePathnames从根目录开始的路径Examples:/home/faculty/sarwar/courses/ee446/exams/mid1相对路径RelativePathnames从当前工作目录或用户主目录开始的路径Examples:~/courses/ee446/exams/mid1,exams/mid17.10
7.10 文件系统结构 主目录(登录目录) Home Directories When you logon, you are placed in a special directory, called your home directory (To see enter “echo $HOME”) 字符“~”来表示你的主目录 当前工作目录Present Working Directories 当前目录 . (dot) 父目录 . (dotdot) 绝对路径 Absolute Pathnames 从根目录开始的路径 Examples: /home/faculty/sarwar/courses/ee446/exams/mid1 相对路径 Relative Pathnames 从当前工作目录或用户主目录开始的路径 Examples: ~/courses/ee446/exams/mid1 ,exams/mid1
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 《Linux操作系统》课程教学课件(PPT讲稿)ch5 编辑文本文件.ppt
- 《Linux操作系统》课程教学课件(PPT讲稿)ch4 Linux shell.ppt
- 《Linux操作系统》课程教学课件(PPT讲稿)ch3 开始行动.ppt
- 《Linux操作系统》课程教学课件(PPT讲稿)ch2 linux概述.ppt
- 烟台大学:《大学计算机基础》课程教学课件(理论讲稿)第11章 计算机发展前沿技术.pdf
- 烟台大学:《大学计算机基础》课程教学课件(理论讲稿)第10章 问题求解的算法基础与程序设计.pdf
- 烟台大学:《大学计算机基础》课程教学课件(理论讲稿)第9章 信息社会与安全.pdf
- 烟台大学:《大学计算机基础》课程教学课件(理论讲稿)第8章 多媒体技术基础.pdf
- 烟台大学:《大学计算机基础》课程教学课件(理论讲稿)第7章 计算机网络基础.pdf
- 烟台大学:《大学计算机基础》课程教学课件(理论讲稿)第6章 数据库技术基础.pdf
- 烟台大学:《大学计算机基础》课程教学课件(理论讲稿)第5章 办公软件 5.4演示文稿软件.pdf
- 烟台大学:《大学计算机基础》课程教学课件(理论讲稿)第5章 办公软件 5.3电子表格软件.pdf
- 烟台大学:《大学计算机基础》课程教学课件(理论讲稿)第5章 办公软件 5.1-5.2文字处理软件.pdf
- 烟台大学:《大学计算机基础》课程教学课件(理论讲稿)第4章 计算机操作系统.pdf
- 烟台大学:《大学计算机基础》课程教学课件(理论讲稿)第3章 计算机硬件系统.pdf
- 烟台大学:《大学计算机基础》课程教学课件(理论讲稿)第2章 计算机中的信息表示.pdf
- 烟台大学:《大学计算机基础》课程教学课件(理论讲稿)第1章 计算思维导论(主讲:马晓敏).pdf
- 《大学计算机基础》课程PPT教学课件(第四版)第10章 问题求解的算法基础与程序设计.pptx
- 《大学计算机基础》课程PPT教学课件(第四版)第9章 信息社会与安全.pptx
- 《大学计算机基础》课程PPT教学课件(第四版)第8章 多媒体技术基础.pptx
- 《Linux操作系统》课程教学课件(PPT讲稿)ch8 文件安全.ppt
- 《Linux操作系统》课程教学课件(PPT讲稿)ch9 基本文件处理.ppt
- 《Linux操作系统》课程教学课件(PPT讲稿)ch10 高级文件处理.ppt
- 《高级数据库》课程教学课件(讲稿)Chapter 1 数据库基本概念.pdf
- 《高级数据库》课程教学课件(讲稿)Chapter 2 SQL Server基本操作.pdf
- 《高级数据库》课程教学课件(讲稿)Chapter 3 T-SQL语言编程.pdf
- 《高级数据库》课程教学课件(讲稿)Chapter 4 游标.pdf
- 《高级数据库》课程教学课件(讲稿)Chapter 6 存储过程.pdf
- 《高级数据库》课程教学课件(讲稿)Chapter 7 触发器.pdf
- 《Java面向对象程序设计》课程教学资源(书籍文献)Java编程思想【美】Bruce Eckel,Thinking In Java(中文版).pdf
- 《Java面向对象程序设计》课程教学资源(PPT课件)第1章 Java语言概述(第6版).pptx
- 《Java面向对象程序设计》课程教学资源(PPT课件)第2章 Java语言开发环境(第6版).pptx
- 《Java面向对象程序设计》课程教学资源(书籍文献)Java项目开发全程实录(第三版).pdf
- 《Java面向对象程序设计》课程教学资源(PPT课件)第3章 Java语言基础(第6版).pptx
- 《Java面向对象程序设计》课程教学资源(书籍文献)Java语言程序设计-进阶篇(原书第8版,梁勇,扫描版).pdf
- 《Java面向对象程序设计》课程教学资源(书籍文献)Java语言程序设计(基础篇)原书第10版,梁勇著.pdf