磁盘管理
磁盘(disk)是指利用磁记录技术存储数据的一种存储器。
磁盘是计算机主要的存储介质,可以存储大量的二进制数据,并且断电后也能保持数据不丢失。早期计算机使用的磁盘是软磁盘(Floppy Disk,简称软盘),如今常用的磁盘是硬磁盘(Hard disk,简称硬盘)。
Linux磁盘管理通常分成五个步骤,首先是添加硬盘,做RAID或逻辑卷LVM,然后进行分区,对分区进行格式化,最后挂载到文件系统中。
1. 添加硬盘
首先简单介绍一下RAID和LVM的概念
RAID:磁盘阵列(Redundant Arrays of Independent Disks,RAID)。磁盘阵列是由很多块独立的磁盘,组合成一个容量巨大的磁盘组,利用个别磁盘提供数据所产生加成效果提升整个磁盘系统效能。利用这项技术,将数据切割成许多区段,分别存放在各个硬盘上。
以下是几种RAID模式:
- RAID0
RAID0将数据分散在n个磁盘中,以独立的方式并行读取n个磁盘的数据,理论上,一个由n块磁盘组成的RAID0是单个磁盘性能的n倍 - RAID1
将数据分别写到两组磁盘中,分别为工作磁盘和镜像磁盘,相当于做了一次冗余,安全性高,但是成本也高 - RAID10
RAID10兼备了RAID1和RAID0的有优点。首先基于RAID1模式将磁盘分为2份,当要写入数据的时候,将所有的数据在两份磁盘上同时写入,相当于写了双份数据,起到了数据保障的作用。且在每一份磁盘上又会基于RAID0技术讲数据分为N份并发的读写,这样也保障了数据的效率
LVM是 Logical Volume Manager(逻辑卷管理)的简写,它是Linux环境下对磁盘分区进行管理的一种机制。
Linux的用户经常会遇到一个问题,就是当磁盘分区空间不足了,调整分区大小非常麻烦。而LVM最大的作用就是解决这个问题。LVM将一个或多个硬盘的分区在逻辑上集合,相当于一个大硬盘来使用,当硬盘的空间不够使用的时候,可以继续将其它的硬盘的分区加入其中,这样可以实现磁盘空间的动态管理,相对于普通的磁盘分区有很大的灵活性。
2. 硬盘分区
fdisk是一个创建和维护分区表的程序,它兼容DOS类型的分区表、BSD或者SUN类型的磁盘列表。
fdisk [选项] <磁盘> #更改分区表
fdisk [选项] -l [<磁盘>] #列出分区表
常用选项包括以下:
对某个磁盘分区,如 fdisk /dev/sda,则会出现以下菜单进行选择
3. 格式化
我们所说的格式化一般是指逻辑格式化,它是指根据用户选定的文件系统,在磁盘的特定区域写入特定数据,以达到初始化磁盘或磁盘分区、清除原磁盘或磁盘分区中所有文件的一个操作。文件系统指操作系统用于明确存储设备或分区上的文件的方法和数据结构:即在存储设备上组织文件的方法。
mkfs [选项] [-t <类型>] [文件系统选项] <设备> [<大小>]
4. 挂载
在Linux 系统中一切皆文件,所有文件都放置在以根目录为树根的树形目录结构中。在 Linux 看来,任何硬件设备也都是文件,它们各有自己的一套文件系统(文件目录结构)。挂载,指的就是将设备文件中的顶级目录连接到 Linux 根目录下的某一目录,访问此目录就等同于访问设备文件。
常用命令:
mount [-lhV]
mount -a [选项]
mount [选项] [--source] <源> | [--target] <目录>
mount [选项] <源> <目录>
mount <操作> <挂载点> [<目标>]
具体选项可以通过命令行输入mount -h 获取帮助文档具体查看
例如:
mount /dev/usb /mnt/usb
表示用默认方法将/dev/usb 挂载到 /mnt/usb