1 / 21

目录、文件共享和保护

目录、文件共享和保护. Directory. Files. F 1. F 2. F 3. F 4. F n. Directory Structure( 目录结构). 一个包含着所有文件信息的节点的集合. 目录结构和文件都在磁盘上 备份放在磁带上. 目录项信息. Name ( 名称) Type( 类型) Address ( 地址) Current length( 当前长度) Maximum length( 最大长度) Date last accessed (for archival)( 最后访问时间)

amal-boyer
Download Presentation

目录、文件共享和保护

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 目录、文件共享和保护

  2. Directory Files F 1 F 2 F 3 F 4 F n Directory Structure(目录结构) 一个包含着所有文件信息的节点的集合 • 目录结构和文件都在磁盘上 • 备份放在磁带上

  3. 目录项信息 Name (名称) Type(类型) Address (地址) Current length(当前长度) Maximum length(最大长度) Date last accessed (for archival)(最后访问时间) Date last updated (for dump)(数据最后更新时间) Owner ID (who pays)(所有者ID) Protection information (discuss later)(保护信息)

  4. 目录操作 搜索文件 创建文件 删除文件 列出目录 重命名文件 跟踪文件系统

  5. 目录逻辑结构的组织方法 • 有效:迅速定位文件 • 命名:方便用户 • 两个不同的用户的文件名称可以相同 • 同一文件可以有不同的名称 • 分组:按文件的属性逻辑分组

  6. 单级目录Single-Level Directory 所有文件都包含在同一目录中,便于支持和理解。 但存在命名问题与分组问题。

  7. 两级目录Two-Level Directory 为不同的用户建立不同的目录 不同用户的文件允许同名 不支持分组 方便查找

  8. 树型目录Tree-Structured Directories

  9. 树型目录 • 有效搜索 • 分组 • 当前目录(工作目录) • cd /spell/mail/prog • type list • 绝对路径与相对路径名 • 创建文件与目录通常在当前目录中进行 • mkdir <dir-name> • 删除文件 • rm <file-name>

  10. 无环图目录 • 具有共享子目录和文件

  11. 无环图可能的问题 • 不同文件名可能表示同一文件。对于查找与统计来说可能会带来一定的问题 • 另一问题是删除问题

  12. 普通图目录

  13. 通用图目录 • 如何确保无环? • 只允许链接发生在文件,而非子目录上 • 垃圾收集 • 自我引用的文件,其引用计数不等于0 • 垃圾收集涉及遍历整个文件系统,并标记所有可访问的空间。然后,第二次将所有没有标记的部分收集到空闲空间链表上。 • 每当新链接建立的时候,就采用相应的算法进行检测,以避免环的出现。

  14. Linux ext2目录项结构 /* Structure of a directory entry */ #define EXT2_NAME_LEN 255 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 };

  15. Linux 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];/*指向磁盘块的指针 */ ...... };

  16. 文件系统安装 文件系统在访问前必须安装 根据安装指针,一个未安装文件系统被安装

  17. Fig (a) Existing. (b) Unmounted Partition

  18. Mount Point

  19. 保护 • 文件的拥有者/创建者应该能够控制 • 能做什么? • 由谁来做? • 访问的类型 • 读 • 写 • 执行 • 追加 • 删除 • 列表

  20. 访问列表和组 • 访问的模式:读,写,执行 • 三类用户 RWX • 拥有者 7 1 1 1 • 组访问者 6 1 1 0 • 公共访问者 1 0 0 1 • 要求管理员创建一个组G,并将某些用户加入到该组中 • 对文件(game)或子目录,定义合适的访问控制 • Owner group public • chmod7 6 1 game • 为文件附加到组G • chgrp G game

  21. End

More Related