赞
踩
目录
• 掌握Linux操作系统中的设备命名规则。
• 掌握磁盘添加、磁盘分区及磁盘格式化的方法。
• 掌握磁盘挂载、卸载以及磁盘管理其他相关命令。
• 图形化工具管理磁盘分区和文件系统的方法。
• 掌握配置管理逻辑卷的方法。
• 了解RAID技术,掌握RAID配置的方法。
• 掌握文件系统备份管理的方法。
对于任何一个通用操作系统而言,磁盘管理与文件管理都是必不可少的功能,因此,Linux操作系统提供了非常强大的磁盘与文件管理功能。Linux操作系统的管理员应掌握配置和管理磁盘的技巧,高效地对磁盘空间进行使用和管理。如果Linux服务器有多个用户经常存取数据,则为了有效维护用户数据的安全性与可靠性,应配置逻辑卷及RAID管理。本章主要讲解了磁盘管理、磁盘挂载与卸载、磁盘管理其他相关命令、配置管理逻辑卷以及RAID管理。
从广义上来讲,硬盘、光盘和U盘等用来保存数据信息的存储设备都可以称为磁盘。其中,硬盘是计算机的重要组件,无论是在Windows操作系统还是在Linux操作系统中,都要使用硬盘。因此,规划和管理磁盘是非常重要的工作。
1.磁盘分区
计算机中存放信息的主要设备就是硬盘,但是硬盘不能直接使用,必须对硬盘进行"分割",”分割“成的一块一块的硬盘区域就是磁盘分区。
硬盘分为两大分区:主分区、扩展分区
主分区:用来安装操作系统的
磁盘分区是使用磁盘分区编辑器在磁盘上划分的几个逻辑部分,磁盘划分成数个分区后,不同的目录及文件存储到不同的分区里面去。
2.磁盘低级格式化
低级格式化就是将磁盘内容清空,恢复出厂时的状态,划分出柱面和磁道,再将磁道划分为若干个扇区,每个扇区又划分出标识部分(ID)、间隔区(GAP)和数据区(DATA)等。
两种情况下会进行磁盘低级格式化:
(1)硬盘出厂前,进行一次低级格式化
(2)当磁盘出现坏道时,使用低级格式化可以起到一定的屏蔽作用
3.磁盘高级格式化
高级格式化又称逻辑格式化,它是根据用户选定的文件系统(如FAT12、FAT16、FAT32、NTFS、ext2、ext3等),在磁盘的特定区域写入特定数据,以完成初始化磁盘或磁盘分区、清除原磁盘或磁盘分区中所有文件的一个操作。
高级格式化包括对主引导记录中分区表相应区域的重写;根据用户选定的文件系统,在分区中划出一片用于存放文件分配表、目录表等用于文件管理的磁盘空间,以便用户使用该分区管理文件
高级格式化可以优化磁盘、最大限度的利用全新操作系统的功能。
在Linux操作系统中,每个硬件设备都有一个称为设备名称的特别名称,IDE硬盘(包括光驱设备)由内部连接来区分,最多可以连接4个设备。
例如,对于接在IDE1的第1个IDE(主硬盘),其设备名称为/dev/hda,也就是说,可以用“/dev/hda”来代表此硬盘,/dev/hdb表示第1个IDE通道的从设备(slave),按照这个原则,/dev/hdc和/dev/hdd为第2个IDE通道(IDE2)的主设备和从设备。对于以下信息,相信大家能够一目了然。下面介绍硬盘设备在Linux操作系统中的命名规则。
IDE1的第1个硬盘(master)/dev/hda;
IDE1的第2个硬盘(slave) /dev/hdb;
IDE2的第1个硬盘(master)/dev/hdc;
IDE2的第2个硬盘(slave) /dev/hdd;
……
SCSI的第1个硬盘 /dev/sda;
SCSI的第2个硬盘 /dev/sdb;
……
原则上SCSI、SAS、STAT、USB接口硬盘(包括固态硬盘)的设备文件名称均以/dev/sd开头。这些设备命名依赖于设备的ID号码,不考虑遗漏的ID号码。例如,3个SCSI设备分别是/dev/sda、/dev/sdb和/dev/sdc,一般情况SATA硬盘类似SCSI,在Linux中用类似/dev/sda这样的设备名来表示。
在Linux操作系统中,分区的概念和Windows中的概念更加接近,磁盘在Linux系统中使用也必须先进行分区,然后建立文件系统,才可以存储数据。
1.磁盘分区类型
按照功能的不同进行分区:
(1)主分区:划分的第一个分区,指定其为主分区,最多可以创建4个主分区。其主要用来存放操作系统的启动或引导程序,/boot分区建议放在主分区中。
Linux中的一个硬盘最多有4个主分区,如果用户想要创建更多的分区,应该怎么办呢?这就有了扩展分区的概念。
(2)扩展分区:创建扩展分区时,会占用一个主分区的位置。扩展分区不是用来存放数据的,主要功能是创建逻辑分区。
因此,如果要创建扩展分区,则一个硬盘中最多只能创建3个主分区和1个扩展分区。
(3)逻辑分区:用于存放文件以及数据。不能被直接创建,需要依附在扩展分区下,容量大小也受到扩展分区的限制。
20G分配情况:
两个主分区:5G主分区sdb1、8G主分区sdb2
12G的扩展分区sdb3:8G逻辑分区sdb5、4G逻辑分区sdb6
2.磁盘分区命名
大部分的设备前缀名后面跟有一个数字,唯一指定了某个设备。
硬盘驱动器的前缀名后面跟有一个字母和一个数字,字母用于指明设备,数字用来指明分区。
设备节点前缀及设备类型说明
设备节点前缀 | 设备类型说明 |
---|---|
fb | Frame缓冲 |
ttyS | 串口 |
fd | 软盘 |
sd | SCSI硬盘 |
tty | 终端 |
md | 磁盘阵列 |
3.MBR与GPT分区样式
磁盘分区可以采用不同类型的分区表,分区表的类型决定了分区样式。
目前,Linux主要使用MBR和GPT两种分构样式。
MBR(主引导分区) :有自己的启动器,也就是启动代码,一旦启动代码被破坏,系统就无法启动,只有通过修复才能启动系统。最大支持2TB容量,在容量方面存在极大缺陷。
最大支持2TB容量,在容量方面有极大限制
GPT(全局唯一标识分区表):由统一可扩展固件接口辅助形成。同时支持几乎无限个分区数量。
最大支持18EB并且每个磁盘最多有128个分区。
GPT在今后的发展中会越来越占优势,MBR也会逐渐被GPT取代。
在单个动态磁盘组中既可以有 MBR 磁盘,也可以有 GPT 磁盘,也可以将 GPT 和 MBR 磁盘混合,但它们不是磁盘组的一部分。
可以同时使用MBR和GPT磁盘来创建镜像卷、带区卷、跨区卷和 RAID-5卷,但是 MBR 的柱面对齐的限制可能会使得创建镜像卷有困难。通常可以将MBR的磁盘镜像到GPT磁盘中,从而避免柱面对齐的问题。
可以将MBR磁盘转换为GPT磁盘;只有在磁盘为空的情况下,才可以将GPT 磁盘转换为MBR磁盘,否则数据将会丢失。
目录结构是操作系统中管理文件逻辑方式,对用户来说是可见的。而文件系统是磁盘或分区上文件的物理存放形式,对用户来说是不可见的。文件系统是操作系统在磁盘上组织文件的方法,也就是保存文件信息的方法和数据结构。
不同的操作系统使用的文件系统格式不同,Linux文件系统格式主要有ext2、ext3、ext4等。Linux还支持xfs、nfs、iso9660、minix、vfat等文件系统,现在的Ubuntu版本使用ext4作为默认文件系统。
ext是Extented File System(扩展文件系统)的简称,一直是Linux首选的文件系统格式。在过去较长一段时间里,ext3是Linux操作系统的主流文件系统格式,Linux内核自2.6.28版本开始正式支持新的文件系统ext4。
作为ext3的改进版,ext4修改了ext3中部分重要的数据结构,提供更佳的性能和可靠性,以及更为丰富的功能,ext4即第4代扩展文件系统,其主要特点如下。
(1)属于大型文件系统,支持最高1EB(1048576TB)的分区,最大16TB的单个文件。
(2)向下兼容于ext2和ext3,可将ext2和ext3的文件系统挂载为ext4分区。
(3)支持持久分配,在文件系统层面实现了持久预分配并提供相应的API,比应用软件自己实现更有效率。
(4)引入现在文件系统中流行的Extent文件存储方式,以取代ext2和ext3使用的映射方式。Extent为一组连续的数据块,可以增加大型文件的效率,ext4支持单一Extent,在单一块大小为4KB的系统中最高可达128MB。
(5)能够尽可能延迟分配磁盘空间,使用一种称为allocate-on-flush的方式,直到文件在缓存中写完才开始分配数据块并写入磁盘,这样就能优化整个文件的数据块分配。
(6)支持无限数量的子目录,使用日志校验来提高文件系统的可靠性,支持在线磁盘碎片整理。
就企业级应用来说,性能是为重要,特别是面临高并发大量、大型文件这种情况。Ubuntu服务器可以考虑改用xfs文件系统来满足这类需求。xfs是专为超大分区及大文件设计的,它支持最高容量18EB(1EB=1048576TB)的分区,最大尺寸9EB的单个文件。
逻辑卷管理器(LVM):是建立在磁盘分区和文件系统之间的一个逻辑层。其设计目的是实现对磁盘的动态管理。
管理员利用LVM不用重新分区磁盘即可动态调整文件系统的大小,而且,当服务器添加新磁盘后,管理员不必将已有的磁盘文件移动到校检磁盘中,通过LVM即可直接跨越磁盘扩展文件系统。
LVM为管理员提供了一种非常高效灵活的磁盘管理方式。通过LVM,用户可以在系统运行时动态调整文件系统的大小,把数据从一块硬盘重定位到另一块硬盘中,可以提高IO操作的性能,以及提供冗余保护,它的快照功能还允许用户对逻辑卷进行实时的备份。
早期硬盘驱动器(Device Driver)呈现给操作系统的是一组连续的物理块,整个硬盘驱动器都分配给文件系统或者其他数据体,由操作系统或应用程序使用。
这样做的缺点是缺乏灵活性:当一个硬盘驱动器的空间使用完时,很难扩展文件系统的大小;而当硬盘驱动器存储容量增加时,把整个硬盘驱动器分配给文件系统又会导致无法充分利用存储空间。
用户在安装Linux操作系统时遇到的一个常见问题是,如何正确评估分区的大小,以分配合适的硬盘空间。普通的磁盘分区管理方式在逻辑分区划分完成之后就无法改变其大小,当一个逻辑分区存放不下某个文件时,这个文件受上层文件系统的限制,无法跨越多个分区存放,所以也不能同时存放到其他磁盘中。当某个分区空间耗尽时,解决的方法通常是使用符号链接,或者使用调整分区大小的工具,但这并没有从根本上解决问题。随着逻辑卷管理器的出现,该问题迎刃而解,用户可以在无须停机的情况下方便地调整各个分区的大小。
对一般用户而言,使用最多的是动态调整文件系统大小的功能。这样,在分区时就不必为如何没置分区的大小而烦恼,只要在硬盘中预留部分空间,并根据系统的使用情况动态调整分区大小即可。
LVM磁盘组织结构:
LVM中主要涉及以下几个概念。
(1)物理存储介质(Physical Storage Media):指系统的物理存储设备,如磁盘,/dev/sda、/dev/had等,是存储系统最底层的存储单元。
(2)物理卷(Physical Volume,PV):指磁盘分区或逻辑上与磁盘分区具有同样功能的设备,是LVM的最基本的存储逻辑块,但和基本的物理存储介质(如分区、磁盘)相比,其包含与LVM相关的管理参数。
(3)卷组(Volume Group,VG):类似于非LVM系统中的物理磁盘,由一个或多个物理卷组成,可以在卷组中创建一个或多个逻辑卷。
(4)逻辑卷:可以将卷组划分成若干个逻辑卷,相当于在逻辑硬盘上划分出几个逻辑分区,逻辑卷建立在卷组之上,每个逻辑分区上都可以创建具体的文件系统,如/home、/mnt等。
(5)物理块:每一个物理卷被划分成称为物理块的基本单元,具有唯一编号的物理块是可以被LVM寻址的最小单元,物理块的大小是可以配置的,默认为4MB,物理卷由大小相同的基本单元——物理块组成。
在Linux操作系统中,LVM得到了重视,在安装系统的过程中,如果设置由系统自动进行分区,则系统除了创建一个/boot引导分区之外,会对剩余的磁盘空间全部采用LVM进行管理,并在其中创建两个逻辑卷,分别挂载到/root分区和/swap分区中详见表4-1 LVM磁盘组织结构
独立磁盘冗余阵列(Redundant Arrays of Independent Disks,RAID)通常简称为磁盘阵列。简单地说,RAID是由多个独立的高性能磁盘驱动器组成的磁盘子系统,提供了比单个磁盘更高的存储性能和数据冗余技术。
1.RAID中的关键概念和技术
(1)镜像
镜像是一种冗余技术,为磁盘提供保护功能,防止磁盘发生故障时造成数据丢失。
对于RAID而言,采用镜像技术将会同时在阵列中产生两个完全相同的数据副本,并分布在两个不同的磁盘中。
镜像提供了完全的数据冗余能力,当一个数据副本失效不可用时,外部系统仍可正常访问另一个副本,不会对应用系统的运行和性能产生影响。此外,镜像不需要额外的计算和校验,用于修复故障非常快,直接复制即可。镜像技术可以从多个副本并行读取数据,提供了更高的读取性能,但不能并行写数据,写多个副本时会导致一定的1/O性能降低。
(2)数据条带。
磁盘存储的性能瓶颈在于磁头寻道定位,它是一种慢速机械运动,无法与高速的CPU匹配。再者,单个磁盘驱动器性能存在物理极限, IO性能非常有限。
RAID由多个磁盘组成,数据条带将数据以块的方式分布存储在多个磁盘里面,从而可以对数据进行并发处理。
这样写入和读取数据即可在多个磁盘中同时进行,并发产生非常高的聚合I/O,有效地提高整体I/O性能,且具有良好的线性扩展性。这在对大容量数据进行处理时效果尤其显著。通过条带技术,可获得数倍于顺序访问的性能提升。
(3)数据校验。
数据校验也是一种冗余技术,通过校验数据提供数据安全性,可以检验数据错误,并在能力允许范围内进行数据重构。
相对于镜像技术而言,校验技术节省了大量开销,但由于每次数据读写都要进行大量的校验运算,因此对计算机的运算速度要求很高,必须使用硬件RAID控制器。在数据重建恢复方面,校验技术比镜像技术复杂得多且速度慢得多。
2.常见的RAID类型
(1)RAID0。
优点:充分利用I/O总线性能使其带宽翻倍,读写速度翻倍;充分利用磁盘空间,利用率为100%
缺点:不提供数据冗余,无数据校验,无法保证数据的正确性;存在单点故障。
应用场景:对数据完整性要求不高的场景,如日志存储、个人娱乐等;对读写效率要求高,而对安全性要求不高的场景,如图像工作站。
(2)RAID1。
优点:提供了数据冗余,数据双倍存储。提供了良好的读写性能。
缺点:没有数据校验,磁盘利用率低,成本高。
应用场景:存放重要数据的场景,如数据存储领域。
(3)RAID5。
同时存取数据和数据校验,是目前最常用的RAID等级之一。
优点:读写性能高,有校验机制,磁盘利用率高。
缺点:磁盘越多,安全性能越差。
应用场景:对安全性要求高的场景,如金融、数据库、存储等。
(4)RAID01。
相较于RAID10具有更好的容错能力
优点:提供了较高的IO性能;有数据冗余,无单点故障
缺点:成本较高,安全性能比RAID10低
应用场景:适用于既有大量数据需要存取,又对数据安全性要求严格的领域,如银行、金融、商业超市、仓储库房、档案管理等
(5)RAID10。
优点:读写性能优于RAID01;提供较高的IO性能;有数据冗余;无单点故障;安全性能高
缺点:成本稍高
应用场景:适用于既有大量数据需要存取,又对数据安全性要求严格的领域,如银行、金融、商业超市、仓储库房、档案管理等
(6)RAID50。
具有RAID5和RAID0的特性
适用场景:高可靠性存储、高读取速度、高数据传输性能的应用场景。
新购置的物理硬盘,不管是用于Windows操作系统还是用于Linux操作系统,都要进行磁盘管理工作。
1.建立磁盘和文件系统
在Linux安装过程中,会自动创建磁盘分区和文件系统,但在系统的使用和管理中,往往还需要在磁盘中建立和使用文件系统,主要包括以下3个步骤。
(1)对磁盘进行分区:可以是一个分区也可以多个分区
(2)磁盘格式化:分区之前必须进行相应的格式化才能创建文件系统
(3)建立挂载点目录:被格式化好的磁盘必须挂载到操作系统相应的文件目录下
Windows操作系统自动帮助用户完成挂载分区到目录的工作,即自动将磁盘分区挂载到盘符;Linux操作系统除了会自动挂载根分区启动项外,其他分区都需要用户自己配置,所有的磁盘分区都必须挂载到文件系统相应的目录下。
为什么要把一个硬盘划分为多个分区,而不是直接使用整个硬盘:
(1)方便管理及控制
可以将系统中的数据(包括程序)按不同的应用分成几类,之后将不同类型的数据分别存放在不同的磁盘分区中。由于在每个分区中存放的都是类似的数据或程序,因此管理和维护会简单很多。
(2)提高系统效率
给硬盘分区后,可以直接缩短系统读写磁盘时磁头移动的距离,也就是说,缩小了磁头搜寻的范围;反之,如果不使用分区,则每次在硬盘中搜寻信息时可能要搜寻整个硬盘,搜寻速度会很慢。另外,硬盘分区可以减缓碎片(文件不连续存放)所造成的系统效率下降的问题。
(3)使用磁盘配额的功能限制用户使用磁盘量
因为限制了用户使用磁盘配额的功能,即只能在分区一级上使用,所以为了防止用户浪费磁盘空间(甚至将磁盘空间耗光),建议先对磁盘进行分区,再分配给一般用户。
(4)便于备份及恢复
硬盘分区后,可以只对所需的分区进行备份和恢复操作,这样备份和恢复的数据量会大大下降,操作也更简单和方便。
2.在虚拟机中添加硬盘
(1)打开虚拟机软件 虚拟机——设置
(2)选中硬盘,选择添加
(3)选择SCSI磁盘类型
(4)磁盘大小设置为20G
(5)查看新添加的硬盘
fdisk -l #查看硬盘分区信息
添加新硬盘后,reboot重启Linux操作系统,在终端输入命令:fdisk -l查看磁盘
在安装Linux操作系统时,其中有一个步骤是进行磁盘分区,在分区时可以采用RAID和LVM等方式,除此之外,Linux操作系统中还提供了cfdisk、fdisk、parted等分区工具。
1.cfdisk磁盘分区工具
Ubuntu提供一个基于文本窗口的分区工具cfdisk,它比fdisk的操作界面更为直观,但与真正的图形用户界面相比还是要逊色一些。
输入:终端输入cfdisk进入磁盘分区页面
cfdisk
2.fdisk磁盘分区工具
在进行分区、格式化和挂载操作之前,要先进行查看分区信息和在虚拟机中添加磁盘操作。可以使用fdisk-1命令查看当前系统中的所有磁盘设备及其分区的信息,执行命令如下。
fdisk -l #查看磁盘分区情况
从命令执行结果可以看出,安装系统时,磁盘分为/root分区、/boot分区和/swap分区,其中分区信息各字段的含义如下。
设备:设备文件名称
启动:是否为引导分区
起点:分区在磁盘中的起始位置
终点:分区在磁盘中的结束位置
扇区:磁盘读写以扇区为基本单位,磁盘里每个磁道被分成若干个弧段,便是磁盘的扇区。
大小:磁盘的大小(Blocks)
ID:分区类型的ID。 ext4分区的ID为83,LVM分区的ID为8e
类型:分区类型。其中,"Linux"代表 ext4 文件系统,"LinuxLVM"代表逻辑卷。
fdisk相关命令参数详见课本p136 表4-2
或者直接输入fdisk --help查询
- fdisk /dev/sdb
- #输入m获取帮助
例如,使用 fdisk命令对新增加的 SCSI硬盘/dev/sdb进行分区操作,在此硬盘中创建两个主分区和一个扩展分区,在扩展分区中再创建两个逻辑分区。
执行fdisk /dev/sdb命令,进入交互的分区管理界面,在“命令(输入m获取帮助):"提示符后,用户可以输入特定的分区操作命令来完成各项分区管理任务。输入“n”可以进行创建分区的操作,包括创建主分区、扩展分区和逻辑分区,根据提示继续输入"p"选择创建主分区,输入"e"选择创建扩展分区,之后依次选择分区序号、起始位置、结束位置或分区大小即可创建新分区。选择分区号时,主分区和扩展分区的序号只能为1~4,分区的起始位置一般由fdisk 命令默认识别,结束位置或分区大小可以使用类似于+sze{K, M, G}"的形式,如“+2G"表示将分区的容量设置为2GB.
【案例】对新增的第2块SCSI硬盘进行分区
(1)创建容量为5GB的主分区,主分区创建结束后,输入”P”查看已创建好的分区/dev/sdb1
fdisk /dev/sdb
输入:m 获取帮助
fdisk命令操作及功能说明P137 表4-3
主分区和扩展分区序号只能是1~4,
输入p,然后回车打印分区列表
注意:创建分区完成后保存并退出,然后重新输入命令“fdisk /dev/sdb”进入创建第二分区,不然会提示可用空间不足。
(2)创建第二块主分区,容量3G
(3)继续创建扩展分区
注意:必须将所有剩余的磁盘空间都分给扩展分区
(4)创建逻辑分区
创建两个逻辑分区,磁盘容量分别是8GB和4GB。
输入p 查看分区创建情况
(5)保存并退出
完成对硬盘的分区以后,输入"w"保存设置并退出,或输入"q"不保存设置并退出fdisk。硬盘分区完成以后,一般需要重启系统以使设置生效;如果不想重启系统,则可以使用partprobe命令使系统获取新的分区表的情况。
partprobe /dev/sdb
这里可以使用fdisk -l命令重新查看/dev/sdb硬盘中分区表的变化情况,执行命令如下。
fdisk -l
完成分区创建后,还不能直接使用磁盘,必须对其进行格式化,这是因为操作系统必须按照一定的方式来管理磁盘,并使系统识别出来,所以磁盘格式化的作用就是在分区中创建文件系统。Ubuntu中默认使用ext4文件系统。
创建分区后需要对其进行格式化。
mkfs命令的作用是在磁盘中创建Linux文件系统,mkfs命令本身并不执行建立文件系统的工作,而是调用相关的程序来实现。
其命令格式如下。
mkfs [选项] [-t<类型>] [文件系统选项] [设备] [<大小>]
选项 | 功能说明 |
---|---|
-t | 文件系统类型,若不指定,则使用ext2 |
-V | 解释正在进行的操作 |
-v | 显示版本信息并退出 |
-h | 显示帮助信息并退出 |
【例】将新增的SCSI硬盘分区/dev/sdb1按ext4文件系统进行格式化
注意:格式化时会清除分区中的所有数据,为了保证系统安全,要备份重要数据。
(1)对/dev/sdb1格式化
mkfs -t ext4 /dev/sdb1
(2)对/dev/sdb2格式化
mkfs -t ext4 /dev/sdb2
(3)对/dev/sdb5格式化
mkfs -t ext4 /dev/sdb5
(4)对/dev/sdb6格式化
mkfs -t ext4 /dev/sdb6
挂载就是指定系统中的一个目录作为挂载点,用户通过访问这个目录来实现对硬盘分区数据的存取操作,作为挂载点的目录相当于一个访问硬盘分区的入口。
新增的硬盘分区、U盘、光盘等设备,都需要进行手动挂载。
Linux提供了两个默认的挂载目录:/media和/mnt。
(1)/media用作自动挂载点
(2)/mnt用作手动挂载点
注意:以下目录不能作为挂载点:/bin、/sbin、/etc、/lib、/lib64
1.手动挂载
mount命令的作用是将一个设备(通常为存储设备)挂载到一个已经存在的目录下,访问这个目录就是访问该设备。命令格式如下:
mount [选项] [--sourec] <源> | [--target] <目录>
挂载点为用户指定用于挂载点的目录,挂载点的目录需要满足以下几个方面
(1)目录已存在,如果不存在,则可使用mkdir命令新建目录
(2)挂载点目录不可被其他进程使用。
(3)挂载点的原有文件被隐藏
【例】将新增的SCSI硬盘分区/dev/sdb1、/dev/sdb2、/dev/sdb5和/dev/sdb6分别挂载到/mnt/data01、/mnt/data01、/mnt/data02、/mnt/data05和/mnt/data06目录下
- root@linux01:/mnt# mkdir data01
- root@linux01:/mnt# mkdir data02
- root@linux01:/mnt# mkdir data05
- root@linux01:/mnt# mkdir data06
- root@linux01:/mnt# ls
-
- root@linux01:/mnt# mount /dev/sdb1 /mnt/data01
- root@linux01:/mnt# mount /dev/sdb2 /mnt/data02
- root@linux01:/mnt# mount /dev/sdb5 /mnt/data05
- root@linux01:/mnt# mount /dev/sdb6 /mnt/data06
完成挂载后,可以用df命令查看挂载情况。
df命令主要用来查看系统中已经挂载的各个文件d系统的磁盘使用情况,使用该命令可获取硬盘被占用的空间,以及目前剩余空间等信息。
其命令格式如下。
df [选项] [文件]
【例】使用df命令查看磁盘使用情况
df -hT
2.光盘挂载
Linux将一切设备视为文件,光盘也不例外。
识别出来的设备会存放在/dev目录下,需要将它挂载在一个目录下,才能以文件形式查看或者使用光盘。
命令行方式的光盘挂载如下。
【例】使用mount命令实现光盘挂载
mount /dev/cdrom /media
显示磁盘挂载目录文件内容
3.U盘挂载(需要有U盘)
默认不支持U盘挂载,因为文件格式为NTFS,需要安装驱动程序
apt install exfat-utils #添加U盘驱动程序
U盘挂载时,首先确定U盘在系统中的磁盘位置
4.自动挂载
通过mount命令挂载的文件系统在Linux操作系统关机或重启时会被自动卸载,所以一般手动挂载磁盘之后要把挂载信息写入etc/fstab文件,系统在开机时会自动读取/etc/fstab文件中的内容,根据文件中的配置挂载磁盘,这样就不需要每次开机启动之后都手动进行挂载了。
/etc/fstab 文件称为系统数据表,其会显示系统中已经存在的挂载信息。
(1)使用cat /etc/fstab命令查看文件内容
/etc/fstab文件中的每一行对应一个自动挂载设备,每一行包括6列。字段及其功能说明如下:
(2) 编辑/etc/fstab文件,在文件尾部添加一行命令
/dev/sr0 /media /auto defaults 0 0
mount -a #自动挂载系统中的所有文件系统
- reboot #重启系统,然后查看分区情况
- df -hT #重启后输入该命令显示分区情况
5.卸载文件系统
- umount [选项] <源> | <目录>
- umount --help #获取umount命令的各选项及其功能说明
【例】使用mount命令卸载文件系统
- umount /mnt/u-disk
- umount /media/cdrom
- df -hT #卸载后进行查看文件系统
在使用umount命令卸载文件系统时,必须保证此时的文件系统未处于busy状态。使文件系统处于busy状态的情况有:文件系统中有打开的文件,某个进程的工作目录在此文件系统中,文件系统的缓存文件正在被使用等。
6.磁盘管理其他相关命令
(1)fsck命令主要用于检查文件的正确性,并对Linux操作系统中的磁盘进行修复。
fsck [选项] 文件系统
【例】使用fsck命令检查/dev/sdb1是否有错误,如果有错误,则自动修复(必须在磁盘卸载后才能检查分区)
(2)dd命令建立和交换文件
dd --help
dd命令用于建立和交换文件,当系统的交换分区无法满足系统的要求,而磁盘又没有可用空间时,可以使用交换文件提供虚拟内存。
dd [操作数]...
dd 参数
①将本地的/dev/sdb1分区备份到/dev/sdb2分区中
- mkdir /mnt/data01 /mnt/data02 /mnt/data05 /mnt/data06
- #挂载文件系统
- mount /dev/sdb1 /mnt/data01
- mount /dev/sdb1 /mnt/data02
- mount /dev/sdb1 /mnt/data05
- mount /dev/sdb1 /mnt/data06
- vim
②将/dev/sdb2分区数据备份到指定目录下
dd 命令的各项参数及其功能说明 P147
- mkdir /root/backup
- touch /root/backup/aaa.txt
- dd if=/dev/sdb of=root/backup/aaa.txt
③将备份文件恢复到指定盘中
dd if=/root/backup/aaa.txt of=/dev/sdb2
④备份/dev/sdb1分区数据,利用gzip工具对其进行压缩,并将其保存到指定目录下
dd if=/dev/sdb1 | gzip > /root/backup/image.gz
⑤将压缩的备份文件恢复到指定盘中
- gzip -dc /root/backup/image.gz | dd of=/dev/sdb1
- ls -l /mnt/data01
- cat /mnt/data01/test01.txt
⑥增加/swap分区文件的大小
- dd if=/dev/zero of=swapfile bs=1024 count=10240
- #也可以使用以下命令
- dd if=/dev/zero of=/swapfile bs=10M count=1
查看硬盘根目录下新建的文件swapfile的详细信息
ls -l swapfile
新建swapfile文件后,使用mkswap命令说明该文件用于交换空间
- mkswap /swapfile
- swapon /swapfile
使用swapfile命令可以激活交换空间,也可以使用swapoff命令卸载被激活的交换空间
- swapon /swapfile
- swapoff /swapfile
编辑/etc/fstab文件,使得每次开机时自动加载该文件
/swapfile swap swap default
(3)mkswap命令将磁盘分区或文件设为Linux操作系统的交换分区
mkswap [选项] 设备 [大小]
- mkswap /dev/sdb6 #创建此分区为交换分区
- umount /mnt/data06 #卸载此分区
- mkswap /dev/sdb6
- swapon /dev/sdb6 #加载交换分区
- swapon -s #显示加载的交换分区
- swapoff /dev/sdb6 #关闭交换分区
- swapon -s
(4)du命令显示磁盘空间的使用情况
du命令用于显示磁盘空间的使用情况,该命令可以逐级显示指定目录的每一级子目录占用文件系统数据块的情况。
du [选项] [文件]
du -ab /mnt/data01
注意:各种添加到Linux系统下的外部的存储设备,都需要进行挂载才能使用。
1.磁盘管理器GNOME Disks
(1)磁盘管理
(2)分区管理。
2.分区工具Gparted
是创建、调整修改和删除磁盘分区的编辑器。
apt install gparted #下载分区工具
可以执行以下操作:
(1)在磁盘中创建磁盘分区表
(2)设置分区标识,如启动或隐藏
(3)执行磁盘分区的创建、删除、调整大小、移动、检查、设置卷标、复制和粘贴等操作。
(4)编辑有潜在问题的分区,降低数据损失的风险。
磁盘分区是实现LVM的前提和基础,在使用LVM时,需要先划分磁盘分区,再将磁盘分区的类型设置为8e,最后才能将分区初始化为物理卷。
1.创建磁盘分区
2.创建物理卷
3.创建卷组
4.创建逻辑卷
5.创建并挂载文件系统
逻辑卷创建完成以后,可以根据需要对其进行各种管理操作,如扩展、缩减和删除等。
1.增加新的物理卷到卷组中
2.从卷组中删除物理卷
3.减少逻辑卷空间
4.增加逻辑卷空间
5.更改卷组的属性
6.删除逻辑卷
7.创建卷组
8.删除物理卷
创建4个大小都为2GB的磁盘,并将其中3个创建为RAID5阵列磁盘,1个创建为热备磁盘。
1.添加磁盘
2.对磁盘进行初始化
3.创建RAID5及其热备份
4.添加RAID5阵列信息到文件中
5.格式化磁盘阵列
6.挂载磁盘阵列
测试以热备磁盘替换阵列中的磁盘并同步数据,移除损坏的磁盘,添加一个新磁盘作为热备磁盘,并删除RAID阵列。
1.写入测试文件
2.RAID设备的数据恢复
3.移除损坏的磁盘
4.添加新的磁盘作为热备磁盘
5.删除RAID阵列
备份就是保留一套后备系统,做到有备无患,是系统管理员最重要的日常管理工作之一,恢复就是将数据恢复到事故之前的状态。为保证数据的完整性,需要对系统进行备份,Ubuntu可以使用多种工具和存储介质进行备份。
1.备份内容
系统备份:对操作系统和应用程序进行的备份,便于操作系统崩溃后快速、简单、完全的恢复系统的运行。
用户备份:用户备份时,只需要提供一个虚拟的安全的网络空间,合理的防止最近用户的数据文件的备份。
2.备份策略
(1)完全备份:对系统进行一次全面的备份,在备份的间隔期间一旦出现数据丢失的问题,可以使用上一次的备份数据恢复备份之前的数据状况。
(2)增量备份:对上一次备份后增加和修改过的内容进行备份。缩短备份时间,快速完成备份。
(3)差异备份:对上一次完全备份后增加和修改过的数据进行备份。系统管理员只需要两份数据(完全备份和差异备份)就能将数据完全恢复过来。
3.备份规划
(1)完全的备份:适合数据量不大的或者数据变动不多的情况。
(2)完全备份结合差异备份:以较长的周期进行完全备份,以较短的周期进行差异备份。
4.dump和restore命令实现备份与恢复
- apt install dump #下载备份文件软件
-
- apt install restore #下载恢复文件软件(暂时不下载,文件找不到)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。