我对Linux不是很熟悉,我在学习的过程中记录了很多笔记,在去年发过一篇文章:CentOS 7系统服务器上安装R和Rstudio,并在浏览器中运行Rstudio,今天我把CentOS云服务器挂载云硬盘与硬盘分区这一章的笔记分享给大家。本教程是以腾讯云服务器和云硬盘介绍的,所以要实操的话,你自己还需要花点钱。 1、云硬盘的挂载
我们购买服务器的时候,给的硬盘容量是比较少的,我们的基因组数据,单细胞测序数据都是很大的,所以我们是需要单独去买硬盘用于存储数据,在Windows系统,相当于你把一个U盘或者移动硬盘插到USB接口,系统就会自动识别,在电脑上就会显示,但在Linux系统中,我们需要自己挂载。这里的话我是购买的腾讯云硬盘。你用阿里的服务器,就购买阿里的云硬盘,不要跨平台,而且,同一平台也还要注意,购买的云硬盘仅支持同可用区挂载:弹性云盘可在同可用区的实例之间自由挂载、卸载,不支持跨可用区操作,也就是说你购买的服务器和硬盘要在同一个区,我的服务器是在北京1区,所以购买的云硬盘最好就是在北京一区。
在个人控制台页面的云硬盘窗口,点击新建。
会让我们选择购买的地区,选择和服务器一个地区。SSD云硬盘比高性能云硬盘贵2~3倍。一般我们也就选择高性能硬盘,容量,你可以根据自己的需求选择,100G/1个月/35元。
我这里演示的话,就购买了一个10G的,一个月,付款后,返回云硬盘窗口,就会看见一个多一个硬盘,而且显示未挂载。所以我们接下来需要进行挂载。
在右侧有个更多,里面就有个挂载选项。
点击挂载后,会让我们选择挂载到那个服务器上,这里只有一个服务器,就默认给我选择了。在挂载选项可以根据自己选择,显示付费是因为我购买的云硬盘只是一个月,也就是2020年7月27日到期,而我的服务器2021年4月2日才到期,挂载到服务器上,如果需要和服务器同时间到期,那就选择对其实例到期时间,所以会付费,也可以选择到期后按月到期付费,或者直接挂载。
我这里演示的话就选择直接挂载了。学习的时候,可以这样,但后期自己需要分析数据的时候,最好还是同步服务器,后者到期自动续费。
点击下一步。
点击开始挂载。然后就可以看到状态显示已挂载。
还可以创建快照,这个对于硬盘到期后没有续费,后面又想用,又想恢复之前的数据很重要。
创建快照后,快照总大小处就会显示大小,因为该购买的硬盘,里面什么数据都没有,所以是0。
如果我们内存不够用了,可以继续扩容,这就是云硬盘的好处。
不过在扩容前对云硬盘制作快照,防止因误操作造成文件系统损坏,为了防止数据丢失,硬盘只可扩容不可缩。
以root身份登录 Linux 云服务器。输入:fdisk -l 命令。返回信息类似如下图,表示当前的云服务器有两块磁盘,“/dev/vda” 是系统盘,“/dev/vdb” 是新增数据盘,也就是我刚刚购买挂载的硬盘。
你以为这样就可以直接使用该硬盘了吗?不是的,还需要进行初始化等设置,我们尝试创建一个文件,发现会报错,dev是Device(设备)的缩写, 该目录下存放的是Linux的外部设备,在Linux中访问设备的方式和访问文件的方式是相同的。所以我们是不能直接这么用的,还需要设置挂载点,这就得先去了解文件Linux的文件系统。
文件系统就是操作系统(比如windows)管理和存储文件的软件机构。文件系统指文件存在的物理空间。通俗地说,没有文件系统,系统就不知道该怎么读取硬盘。文件系统的种类有很多,每一种文件系统的结构,逻辑,存取速度,灵活性,安全性,大小,等等都不一样。文件系统可以被使用在磁带,移动硬盘,闪存等地方。在Linux系统中,每个分区都是一个文件系统,都有自己的目录层次结构。Linux的最重要特征之一就是支持多种文件系统,这样它更加灵活,并可以和许多其它种操作系统共存。Virtual File System(虚拟文件系统)使得Linux可以支持多个不同的文件系统。由于系统已将Linux文件系统的所有细节进行了转换,所以Linux核心的其它部分及系统中运行的程序将看到统一的文件系统。Linux的虚拟文件系统允许用户同时能透明地安装许多不同的文件系统。虚拟文件系统是为Linux用户提供快速且高效的文件访问服务而设计的。总之,文件系统的类别有很多,也很复杂,又想弄明白文件系统的原理,需要学习的东西有很多,这里我只介绍Linux中几种文件系统格式。
随着Linux的不断发展,它所支持的文件格式系统也在迅速扩充。特别是Linux 2.4内核正式推出后,出现了大量新的文件系统,其中包括日志文件系统ext3、ReiserFS、XFSJFS和其它文件系统。Linux系统核心可以支持十多种文件系统类型:JFS、 ReiserFS、ext、ext2、ext3、ISO9660、XFS、Minx、MSDOS、UMSDOS、VFAT、NTFS、HPFS、NFS、 SMB、SysV、PROC等。
文件系统指文件存在的物理空间。在Linux系统中,每个分区都是一个文件系统,都有自己的目录层次结构。Linux的最重要特征之一就是支持多种文件系统,这样它更加灵活,并可以和许多其它种操作系统共存。Virtual File System(虚拟文件系统)使得Linux可以支持多个不同的文件系统。由于系统已将Linux文件系统的所有细节进行了转换,所以Linux核心的其它部分及系统中运行的程序将看到统一的文件系统。Linux的虚拟文件系统允许用户同时能透明地安装许多不同的文件系统。虚拟文件系统是为Linux用户提供快速且高效的文件访问服务而设计的。
随着Linux的不断发展,它所支持的文件格式系统也在迅速扩充。特别是Linux 2.4内核正式推出后,出现了大量新的文件系统,其中包括日志文件系统ext3、ReiserFS、XFSJFS和其它文件系统。Linux系统核心可以支持十多种文件系统类型:JFS、 ReiserFS、ext、ext2、ext3、ISO9660、XFS、Minx、MSDOS、UMSDOS、VFAT、NTFS、HPFS、NFS、 SMB、SysV、PROC等。
下面介绍Linux下几个最常用的文件系统,其中包括ext、ext2、ext3、JFS、XFS、ReiserFS等。
ext是第一个专门为开发的Linux的文件系统类型,叫做扩展文件系统。它是1992年4月完成的,对Linux早期的发展产生了重要作用。但是,由于其在稳定性、速度和兼容性上存在许多缺陷,现在已经很少使用了。
ext2是为解决ext文件系统的缺陷而设计的可扩展的、高性能的文件系统,它又被称为二级扩展文件系统。ext2是1993年发布的,设计者是Rey Card。它是Linux文件系统类型中使用最多的格式,并且在速度和CPU利用率上较为突出,是GNU/Linux系统中标准的文件系统。它存取文件的性能极好,对于中、小型的文件更显示出优势,这主要得益于其簇快取层的优良设计。ext2可以支持256字节的长文件名,其单一文件大小和文件系统本身的容量上限与文件系统本身的簇大小有关。在常见的Intel x86兼容处理器的系统中,簇最大为4KB,单一文件大小上限为2048GB, 而文件系统的容量上限为6384GB。尽管Linux可以支持种类繁多的文件系统,但是2000年以前几乎所有的Linux发行版都使用ext2作为默认的文件系统。
ext2也有一些问题。由于它的设计者主要考虑的是文件系统性能方面的问题,而在写入文件内容的同时,并没有写入文件的meta- data(和文件有关的信息,例如权限、所有者及创建和访问时间)。换句话说,Linux先写入文件的内容,然后等到有空的时候才写入文件的meta- data。如果出现写入文件内容之后,但在写入文件的meta-data之前系统突然断电,就可能造成文件系统就会处于不一致的状态。在一个有大量文件操作的系统中,出现这种情况会导致很严重的后果。另外,由于目前Linux的 2.4内核所能使用的单一分割区最大只有2048GB,尽管文件系统的容量上限为6384G,但是实际上能使用的文件系统容量最多也只有2048GB。
在讲解ext3、JFS、XFS、ReiserFS日志格式文件系统之前,先介绍一些日志式文件系统基础。
日志式文件系统起源于Oracle、Sybase等大型数据库。由于数据库操作往往是由多个相关的、相互依赖的子操作组成,任何一个子操作的失败都意味着整个操作的无效性,对数据库数据的任何修改都要恢复到操作以前的状态。Linux日志式文件系统就是由此发展而来的。日志文件系统通过增加一个叫做日志的、新的数据结构来解决这个“fsck”问题。这个日志是位于磁盘上的结构。在对元数据做任何改变以前,文件系统驱动程序会向日志中写入一个条目,这个条目描述了它将要做些什么,所以日志文件具有可伸缩性和健壮性。在分区中保存日志记录文件好处是:文件系统写操作首先是对记录文件进行操作,若整个写操作由于某种原因(如系统掉电)而中断,则在下次系统启动时就会读日志记录文件的内容,恢复到没有完成的写操作,这个过程一般只需要两三分钟时间。
ext3是由开放资源社区开发的日志文件系统,早期主要开发人员是Stephen Tweedie。ext3被设计成是ext2的升级版本,尽可能方便用户从ext2向ext3迁移。ext3在ext2的基础上加入了记录元数据的日志功能,努力保持向前和向后的兼容性,也就是在保有目前ext2的格式之下再加上日志功能。和ext2相比,ext3提供了更佳的安全性,这就是数据日志和元数据日志之间的不同。ext3是一种日志式文件系统,日志式文件系统的优越性在于由于文件系统都有快取层参与运作,如不使用时必须将文件系统卸下,以便将快取层的资料写回磁盘中。因此,每当系统要关机时,必须将其所有的文件系统全部卸下后才能进行关机。如果在文件系统尚未卸下前就关机 (如停电),那么重开机后就会造成文件系统的资料不一致,故这时必须做文件系统的重整工作,将不一致与错误的地方修复。然而,这个过程是相当耗时的,特别是容量大的文件系统不能百分之百保证所有的资料都不会流失,特别在大型的服务器上可能会出现问题。除了与ext2兼容之外,ext3还通过共享ext2的元数据格式继承了ext2的其它优点。比如,ext3用户可以使用一个稳固的fsck工具。由于ext3基于ext2的代码,所以它的磁盘格式和ext2 的相同,这意味着一个干净卸装的ext3文件系统可以作为ext2文件系统毫无问题地重新挂装。如果现在使用的是ext2文件系统,并且对数据安全性要求很高,这里建议考虑升级使用ext3。
ext3最大的缺点是,它没有现代文件系统所具有的、能提高文件数据处理速度和解压的高性能。此外,使用ext3文件系统要注意硬盘限额问题,在这个问题解决之前,不推荐在重要的企业应用上采用ext3+Disk Quota(磁盘配额)。
JFS是一种提供日志的字节级文件系统。该文件系统主要是为满足服务器(从单处理器系统到高级多处理器和群集系统)的高吞吐量和可靠性需求而设计、开发的。JFS文件系统是为面向事务的高性能系统而开发的。在IBM的AIX系统上,JFS已经过较长时间的测试,结果表明它是可靠、快速和容易使用的。2000年2月,IBM宣布在一个开放资源许可证下移植Linux版本的JFS文件系统。JFS也是一个有大量用户安装使用的企业级文件系统,具有可伸缩性和健壮性。与非日志文件系统相比,它的突出优点是快速重启能力,JFS能够在几秒或几分钟内就把文件系统恢复到一致状态。虽然JFS主要是为满足服务器(从单处理器系统到高级多处理器和群集系统)的高吞吐量和可靠性需求而设计的,但还可以用于想得到高性能和可靠性的客户机配置,因为在系统崩溃时JFS能提供快速文件系统重启时间,所以它是因特网文件服务器的关键技术。使用数据库日志处理技术,JFS能在几秒或几分钟之内把文件系统恢复到一致状态。而在非日志文件系统中,文件恢复可能花费几小时或几天。
JFS的缺点是,使用JFS日志文件系统性能上会有一定损失,系统资源占用的比率也偏高,因为当它保存一个日志时,系统需要写许多数据。
ReiserFS的第一次公开亮相是在1997年7月23日,Hans Reiser把他的基于平衡树结构的ReiserFS文件系统在网上公布。ReiserFS 3.6.x(作为Linux 2.4一部分的版本)是由Hans Reiser和他的Namesys开发组共同开发设计的。SuSE Linux也对它的发展起了重大的帮助。Hans和他的组员们相信最好的文件系统是能够有助于创建独立的共享环境或命名空间的文件系统,应用程序可以在其中更直接、有效和有力地相互作用。为了实现这一目标,文件系统就应该满足使用者对性能和功能方面的需要。那样使用者就能够继续直接地使用文件系统,而不必建造运行在文件系统之上(如数据库之类)的特殊目的层。ReiserFS 使用了特殊的、优化的平衡树(每个文件系统一个)来组织所有的文件系统数据,这为其自身提供了非常不错的性能改进,也能够减轻文件系统设计上的人为约束。另一个使用平衡树的好处就是,ReiserFS 能够像其它大多数的下一代文件系统一样,根据需要动态地分配索引节,而不必在文件系统创建时建立固定的索引节。这有助于文件系统更灵活地适应面临的各种存储需要,同时提供附加的空间有效率。
ReiserFS被看作是一个更加激进和现代的文件系统。传统的Unix文件系统是按磁盘块来进行空间分配的,对于目录和文件等的查找使用了简单的线性查找。这些设计在当时是合适的,但随着磁盘容量的增大和应用需求的增加,传统文件系统在存储效率、速度和功能上已显得落后。在 ReiserFS的下一个版本-Reiser 4,将提供了对事务的支持。ReiserFS突出的地方还在于其设计上着眼于实现一些未来的插件程序,这些插件程序可以提供访问控制列表、超级链接,以及一些其它非常不错的功能。在http://www.namesys.com/v4/v4.html中,有Reiser 4的介绍和性能测试。
ReiserFS一个最受批评的缺点是,每升级一个版本都将要将磁盘重新格式化一次,而且它的安全性能和稳定性与ext3相比有一定的差距。因为 ReiserFS文件系统还不能正确处理超长的文件目录,如果创建一个超过768字符的文件目录,并使用ls或其它echo命令,将有可能导致系统挂起。在http://www.namesys.com/ ;网站可以了解关于ReiserFS的更多信息。
XFS是一种非常优秀的日志文件系统,它是由SGI于20世纪90年代初开发的。XFS推出后被业界称为先进的、最具可升级性的文件系统技术。它是一个全 64位、快速、稳固的日志文件系统,多年用于SGI的IRIX操作系统。当SGI决定支持Linux社区时,它将关键的基本架构技术授权于Linux,以开放资源形式发布了他们自己拥有的XFS的源代码,并开始进行移植。此项工作进展得很快,目前已进入beta版阶段。作为一个64位文件系统,XFS可以支持超大数量的文件(9000×1GB),可在大型2D和3D数据方面提供显著的性能。XFS有能力预测其它文件系统薄弱环节,同时提供了在不妨碍性能的情况下增强可靠性和快速的事故恢复。
XFS可为Linux和开放资源社区带来如下新特性:
◆可升级性 XFS被设计成可升级,以面对大多数的存储容量和I/O存储需求;可处理大型文件和包含巨大数量文件的大型目录,以满足21世纪快速增长的磁盘需求。XFS有能力动态地为文件分配索引空间,使系统形成高效支持大数量文件的能力。在它的支持下,用户可使用的文件远远大于现在最大的文件系统。
◆优秀的I/O 性能典型的现代服务器使用大型的条带式磁盘阵列,以提供达数GB/秒的总带宽。XFS可以很好地满足I/O请求的大小和并发I/O请求的数量。XFS可作为 root文件系统,并被LILO支持,也可以在NFS服务器上使用,并支持软件磁盘阵列(RAID)和逻辑卷管理器(Logical Volume Manager,LVM)。SGI最新发布的XFS为1.0.1版,在http://oss.sgi.com/projects/XFS/ ;可以下载它。
由于XFS比较复杂,实施起来有一些难度(包括人员培训等),所以目前XFS主要应用于Linux企业应用的高端。
第4个扩展文件系统,是下一代的日志文件系统,它与上一代文件系统ext3是向后兼容的。ext4 在性能、伸缩性和可靠性方面进行了大量改,支持 1 EB 的文件系统。ext4 是由 Theodore Tso(ext3 的维护者)领导的开发团队实现的,并引入到 2.6.19 内核中。Ubuntu9.04开始支持Ext4文件系统。
参考:https://www.cnblogs.com/luoahong/p/6242058.html
我们需要根据您实际使用场景选择初始化方式:
若整块硬盘只呈现为一个独立的分区(即不存在多个逻辑盘,如 vdb1 和 vdb2 ),腾讯云强烈建议不使用分区,直接在裸设备上构建文件系统。
若整块硬盘需要呈现为多个逻辑分区(即存在多个逻辑盘),需要先进行分区操作,再在分区上构建文件系统。
关于硬盘分区,我们还是需要去掌握的,但我自己觉得,在云服务器上,在购买云硬盘的时候就可以选择购买几块硬盘,那样就不用自己分区了,但是最多只能挂载20个云硬盘,所以超过这个后,数据量大,我们只能扩容,方便管理还是需要分区的。
以 root 用户身份登录 Linux 云服务器。
设备名称,可以通过命令lsblk(list block devices)来获取:
也可以通过下面命令查看
fdisk -l
前面硬盘挂载的时候,我就提到了“/dev/vda” 是系统盘,“/dev/vdb” 是新增数据盘,也就是我刚刚购买挂载的硬盘。
执行以下命令,对 “/dev/vdb” 裸设备直接创建文件系统格式。
mkfs -t <文件系统格式> /dev/vdb
这里的文件系统格式,就是我前面介绍的系统格式,不同文件系统支持的分区大小不同,根据实际需求合理选择文件系统。不是很了解,就用ext4。ext4 在性能、伸缩性和可靠性方面进行了大量改,支持 1 EB 的文件系统。
mkfs -t ext4 /dev/vdb
输入上面命令后,出现下面这样的信息,表示没有错误。
新建挂载点。所谓光盘挂载,可以理解成将光盘创建一个快捷方式。在windows下也有类似这样的过程(盘符的分配),但linux下必须的手动进行光盘/USB外接设备的挂载,只有挂载之后才能使用该外接设备中的文件/文件夹。挂载点就是指将这个设备放到什么地方去,挂载点就是一个目录。一般情况有个习惯,在实际使用的时候习惯于将外接设备挂载到/mnt目录下,比如说可以在mnt目录下创建一个dvd目录,然后可将光盘挂载到/mnt/dvd上,我这里就直接挂载到根目录(/)下。其实就是我们在根目录下创建一个文件夹data,文件名可以更改,自己认识就行,有点像Windows的CDEF盘。data表示用来存储数据的。
mkdir /data
执行mount命令,将新建分区挂载至新建的挂载点。
命令:mount
语法:mount [参数] 设备的名称 挂载点/挂载位置。
mount /dev/vdb /data
这样我们就挂载好硬盘了,可以通过下面命令查看挂载情况。
df -TH
这里的Type就是我们说的文件系统类型,我们设置的ext4,系统盘是ext3。
我们也可以通过lsblk命令以树枝的方式查看。
我们尝试在data下创建一个文件,这没有问题了,你可以大data这个文件夹理解成Windows下的D盘或者F盘。
关于这部分可参考官方文档:
https://cloud.tencent.com/document/product/362/6734
Linux磁盘管理好坏直接关系到整个系统的性能问题。
Linux磁盘管理常用三个命令为df、du和fdisk。
df 以磁盘分区为单位查看文件系统,可以获取硬盘被占用了多少空间,目前还剩下多少空间等信息。
例如,我们使用df -h命令来查看磁盘信息, -h 选项为根据大小适当显示:
显示内容参数说明:
du 的英文原义为 disk usage,含义为显示磁盘空间的使用情况,用于查看当前目录的总大小。
显示指定文件所占空间:
方便阅读的格式显示test目录所占空间情况:
du 命令常用参数:
相关命令:
fdisk 是 Linux 的磁盘分区表操作工具。
语法:
fdisk [-l] 装置名称
-l :输出后面接的装置所有的分区内容。若仅有 fdisk -l 时, 则系统将会把整个系统内能够搜寻到的装置的分区均列出来。这个我们前面已经用过啦。
我们前面介绍硬盘的挂载,使用的是mount命令,那么卸载用的是 umount 命令。语法如下:
umount [-fn] 装置文件名或挂载点
选项与参数:
-f :强制卸除!可用在类似网络文件系统 (NFS) 无法读取到的情况下;
-n :不升级 /etc/mtab 情况下卸除。
我们卸载前面挂载的云硬盘。再看看之间创建的文件MedBioInfoCloud.txt文件已经不存在了。
我前面已经卸载了硬盘,我们查看硬盘设备。
硬盘的分区也是以fdisk命令来操作的,执行以下命令,进入 fdisk 分区工具,开始对新增数据盘执行分区操作。以我购买的云硬盘/dev/vdb为例:
fdisk /dev/vdb
我们输入m,可以查看所有命令,创建分区就是输入n。
输入n,按 Enter,开始新建分区。
回显信息类似如下图:
表示磁盘有两种分区类型:
【p】表示主要分区。
【e】表示延伸分区。
这里,我们先创建一个主分区,后面介绍扩展分区的时候在进一步介绍他们之间的区别。输入p,按 Enter,开始创建一个主分区。
回显信息类似如下图:
【Partition number】表示主分区编号,可以选择1-4。
以选择分区编号1为例,输入主分区编号1,按 Enter。
回显信息类似如下图:
【First sector】表示初始磁柱区域,可以选择2048 - 20971519,默认为2048。
以选择默认初始磁柱编号2048为例,按 Enter。关于磁柱编号,可能还需要去了解硬盘的结构,如果不是太懂,你可以看成一个区间,根据你的硬盘大小决定,我购买的是10G,你就把10G这个量分配到2048 - 20971519这个区间,5G的范围大概就是10485759这个位置,我们分区都是重最左侧开始的,所以选2048。
回显信息类似如下图:
【Last sector】表示截止磁柱区域,可以选择2048 - 20971519,默认为20971519。我们说了5G的范围大概就是10485759这个位置,所以选择截止磁柱编号10485759为例,表示硬盘上2048 -10485759为我们将要设置的一个分区,按 Enter。
回显信息类似如下图:
表示分区完成,即为5GB的数据盘新建了1个分区。
输入p,按 Enter,查看新建分区的详细信息。
回显信息类似如下图:
表示新建分区/dev/vdb1的详细信息。
若上述分区操作有误,请输入q,退出 fdisk 分区工具,之前的分区结果将不会被保留。我们这里不输入q,继续输入n继续分区,因为我们的硬盘是10G的内存,我们前面已经分了5G,还有5G。所以我们继续按照上面操作执行一遍。2048-10485759我们已经设置分区为vdb1了,那么设置第二个分区的时候,这块硬盘的开始位置就不是2018啦,而是10485760,而是上一个分区的结束位置。
我们输入p,可看见2个分区了,一个vdb1,一个vdb2。
输入w,按 Enter,将分区结果写入分区表中。
回显信息类似如下图,表示分区创建完成。
然后我们执行以下命令,将新的分区表变更同步至操作系统。
partprobe
输入上面这个命令,可能会有如下警告信息。不用管。
我们可以继续通过fdisk -l命令查看
lsblk命令查看
接下来我们就可以将/dev/vdb1 和/dev/vdb2 挂载到特定的挂载点。
创建挂载点
执行下面2行命令
mkfs -t ext4 /dev/vdb1mkfs -t ext4 /dev/vdb2
然后分别挂载到2个挂载点上就可以啦。
看一下挂载结果:
我们前面输入命令fdisk /dev/vdb 后输入n,创建一个新的分区,我们前面创建了2个分区,我们可以删除这2个分区。
删除分区输入的是d,然后会提示输入分区编号,这里提示的是1,2,因为我们只有2个分区,所以只显示这2个数,如果有3个分区,那就是1,2,3,最多是4,因为我们前面创建分区时,第一次不就是1-4,第二次是2-4吗?也就是说,一块硬盘最多可以分4个区。我们这里输入2,表示删除第二个分区,也就是/dev/vdb2。
提示分区已经被删除,我们输入w保存退出,检查一下看看。发现已经只有vdb1啦。
linux分区不同于windows,linux下硬盘设备名为(IDE硬盘为hdx(x为从a—d)因为IDE硬盘最多四个,SCSI,SATA,USB硬盘为sdx(x为a—z)),硬盘主分区最多为4个,所以我们前面分区的时候只能输入1~4的那一步,就是说明最多能分2个分区,准确来说,就是主分区和扩展分区加起来最多4个,但有时候你想分超过4个分区怎么办?所以我先介绍硬盘的基本概念。
一个硬盘主分区至少有1个,最多4个,扩展分区可以没有,最多1个。且主分区+扩展分区总共不能超过4个。逻辑分区可以有若干个。
在windows下激活的主分区是硬盘的启动分区,他是独立的,也是硬盘的第一个分区,正常分的话就是C区。在linux下主分区和逻辑分区都可以用来放系统,引导os开机,grub会兼容windows系统开机启动。分出主分区后,其余的部分可以分成扩展分区,一般是剩下的部分全部分成扩展分区,也可以不全分,那剩的部分就浪费了。但扩展分区是不能直接用的,他是以逻辑分区的方式来使用的,所以说扩展分区可分成若干逻辑分区。他们的关系是包含的关系,所有的逻辑分区都是扩展分区的一部分。在linux中第一块硬盘分区为hda分区,主分区编号为hda1-4,逻辑分区从5开始。硬盘的容量=主分区的容量+扩展分区的容量,扩展分区的容量=各个逻辑分区的容量之和,主分区也可成为“引导分区”,会被操作系统和主板认定为这个硬盘的第一个分区。所以C盘永远都是排在所有磁盘分区的第一的位置上。MBR(主引导记录)的分区表(主分区表)只能存放4个分区,如果要分更多的分区的话就要一个扩展分区表(EBR),扩展分区表放在一个系统ID为0x05的主分区上,这个主分区就是扩展分区,扩展分区能可以分若干个分区,每个分区都是个逻辑分区。
关于硬盘的扩展分区创建,和主分区差不多。我们前面输入下面命令时
fdisk /dev/vdb
输入n,按 Enter,开始新建分区。
回显信息类似如下图:
表示磁盘有两种分区类型:
【p】表示主要分区。
【e】表示延伸分区。
我们前面创建分区,输入p,按 Enter,延伸分区的话,输入e,按 Enter,后面的操作几乎一样。
我们利用fdisk -l命令查看一下,新创建的vdb2就是扩展分区。
尝试挂载vdb2是挂载不成功的。vdb2是扩展分区,我们只能在vdb2的基础上创建逻辑分区。
我们需要创建逻辑分区。我们前面10G的内存分成了2个区,一个主分区vdb1,一个扩展区vdb2,可能我们会觉得,扩展分区可分成若干逻辑分区,所以创建逻辑分区会用vdb2这个设备名称,当我们执行fdisk /dev/vdb2命令后,再输入n发现不行。
其实我们创建逻辑分区,还是得用vdb这个设备名称。
然后我们输入n,就会提示是创建一个主分区还是逻辑分区,可能你会觉得前面我们输入n的时候出现的是p和e,没有l,这里又没有e。原因是,刚开始的的时候,我们的的硬盘还没有分区,就一块,也就是只有一个主分区,我们在进行分区的时候,硬盘没有扩展分区,由于逻辑分区是利用扩展分区创建的,所以就不会出现"l logical"这个选项,后面我们删除vdb2这个主分区,重新创建为扩展分区,我们说了扩展分区只能有一个,所以现在输入n,由于有扩展分区存在,所以就不会有e这个选项,而且我们看到,逻辑分区是从5开始的。
我们输入l,创建逻辑分区,后面的First sector和Last sector与前面分主分区的一样,直接回车的话就是选择默认的值,这里我就是选择默认的值。
最后输入w保存。
然后我们查看一下,就多了个vdb5。
后面,就是把硬盘挂载到相应目录下就可以啦。
再查看一下挂载结果。
最后:Linux系统硬盘分区管理是很复杂的,上面这些也就是简单的分区应用而已,真正要做好管理的话,还需要学习很多东西。
本文分享自 MedBioInfoCloud 微信公众号,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文参与 腾讯云自媒体同步曝光计划 ,欢迎热爱写作的你一起参与!