Linux系统下的分区和文件系统详解(1)


我们的文章 “学习 Linux,101:硬盘布局” 介绍了硬盘驱动器布局、分区、以及使用 fdisk 命令来查看分区信息的基本知识。您学习了主分区扩展分区逻辑分区 等分区的相关知识,了解到 Linux 文件系统包含一些文件,它们存储在磁盘上或目录 中的块存储设备 上。与许多其他系统一样,Linux 系统上的目录也可能包含其他目录,这些目录称为子目录。这篇文章还讨论了一些指导您进行分区选择的注意事项。

本文将首先回顾一下块设备和分区,然后进一步展示如何使用 fdisk 命令创建、修改或删除块设备上的分区。您还将学习 mkfsmkfs 代表 make filesystem) 命令的各种形式;mkfs 命令用于将分区格式化为一种特殊的文件系统类型。

注意:除了 LPI 考试要求的工具和文件系统外,您可能会遇到或需要其他工具和文件系统。其他工具和文件系统 小节提供了其他可用工具的一个简单摘要。

块设备

块设备 是能够以固定大小 格式化的任意存储设备的抽象层。单独的块的访问可以独立于其他块的访问。这样的访问通常称为随机访问

随机可访问的固定大小块的抽象层允许程序使用这些块设备,而无需担心底层设备是硬盘驱动器、软盘、CD、固态solid-state)驱动器、网络驱动器,还是某种虚拟设备,比如内存中文件系统。

块设备示例包括系统上的第一 IDE 硬盘驱动器/dev/sda 或 /dev/hda)或第二 SCSI、IDE 或 USB 驱动器/dev/sdb)。使用 ls -l 命令来显示 /dev 条目。每行输出的第一个字符是 b针对一个块设备,比如软盘、CD 驱动器、IDE 硬盘驱动器或 SCSI 硬盘驱动器)和 c针对一个字符设备,比如 a、终端tty)或空设备。清单 1 展示了一些示例。

清单 1. Linux 块设备和字符设备


[ian@echidna ~]$ ls -l /dev/loop1 /dev/null /dev/sd[ab] /dev/sr0 /dev/tty0
brw-rw----. 1 root disk   7,  1 2010-06-14 07:25 /dev/loop1
crw-rw-rw-. 1 root root   1,  3 2010-06-14 07:25 /dev/null
brw-rw----. 1 root disk   8,  0 2010-06-14 07:25 /dev/sda
brw-rw----. 1 root disk   8, 16 2010-06-14 07:25 /dev/sdb
brw-rw----+ 1 root cdrom 11,  0 2010-06-14 07:25 /dev/sr0
crw--w----. 1 root root   4,  0 2010-06-14 07:25 /dev/tty0

分区

对于某些块设备,比如软盘和 CD 或 DVD 磁盘,通常使用整个媒体作为单个文件系统。但是,对于大型硬盘驱动器,甚至是 USB 存储器,更常见的用法是将可用空间划分为几个不同的分区

分区的大小可能不同,不同的分区上可以拥有不同的文件系统,因此一个磁盘可以用于多种目的,包括在多个操作系统之间共享该磁盘。例如,我使用的测试系统包含几个不同的 Linux 发行版,有时还包含一个 Windows® 系统,它们都共享一个或两个硬盘驱动器。

文章 “学习 Linux,101:硬盘布局” 介绍过,硬盘驱动器拥有一个几何参数geometry),根据术语柱面、磁头和扇区定义。即使是现代驱动器也使用逻辑块寻址 LBA),这使得几何参数变得几乎无关紧要,用于分区目的的基本分配单元通常仍旧是柱面。


相关内容