- 跟老男孩学Linux运维:Web集群实战
- 老男孩
- 4439字
- 2023-01-19 14:57:07
2.3.2 磁盘分区类型选择与磁盘分区配置过程
1.选择系统安装磁盘空间类型
经过上一节的步骤后,会进入如图2-15所示的磁盘分区方式选择界面。
图2-15 系统磁盘空间选择
CentOS 6.6磁盘有如下五种分区方式。
·Use All Space:删除当前磁盘内的所有分区,包括其他系统创建的分区。
·Replace Existing Linux System(s):删除当前磁盘内的所有Linux分区,而不删除其他系统创建的分区,这是默认的选项。
·Shrink Current System:利用(挤压)分区上存在的所有空闲空间,创建系统默认的分区布局。
·Use Free Space:使用未使用的分区空间。
·Create Custom Layout:自定义分区方式。
这里选择最后一种分区分式“Create Custom Layout”,即由管理员自行定制分区,因为它更灵活。然后单击界面右下角的“Next”继续。
2.选择“Create Custom Layout”自定义磁盘分区
选择“Create Custom Layout”后进入的界面如图2-16所示,可以看到磁盘总空间为8189MB,磁盘设备名为sda,剩余空间8189MB,说明还没有进行分区,磁盘的模式为VMware,表示是使用VMware虚拟机进行安装的。
提示:图2-16所示的界面(自定义的分区布局界面)下面有一排按钮,我们可以利用这些按钮来执行添加或删除分区等操作。其中Create表示新建分区,Edit表示编辑修改分区,Delete表示删除分区。具体作用读者可自行尝试。
图2-16 自定义的分区图
3.按企业生产标准定制磁盘分区
根据图2-16可知,当前的计算机只有一块磁盘,设备名为sda(如果有多块盘,会显示sda、sdb、sdc等)。选中磁盘sda下的“free 8189”这一行,如图2-16所示,然后单击界面右下角的第一个按钮“Create”,开始创建磁盘分区,进入如图2-17所示的界面。
在图2-17中,默认的选项为“Standard Partition”,意思是创建标准分区,也是我们要选择的项。其他的例如“RAID Partition”的意思是RAID(磁盘冗余阵列)分区。在企业中RAID功能一般是通过物理硬件来完成的,硬件RAID卡的效率更高,操作系统的RAID功能性能差,冗余也受限于操作系统,因此企业很少用。而LVM的意思是逻辑卷管理,它可以对设置好的分区大小进行动态调整,其前提是所有的分区格式都需要事先做成LVM格式,即分区标号为8e。企业环境的分区一般都是按需求事先规划好的,极少有后续调整的需求,且LVM的性能与标准分区及硬件RAID卡相比还是有一定的差距的,因此,如果没有特殊需求,不建议选择LVM和操作系统软RAID功能分区。
选择创建标准分区(Standard Partition)后,单击界面右下角的“Create”按钮,得到如图2-18所示的界面。
图2-17 创建分区界面
图2-18 添加分区界面图
Linux系统磁盘分区知识简介
在分区之前,需要先简单介绍一下磁盘分区相关知识,便于大家更好地理解学习。
1)磁盘在使用前一般要先分区。
2)磁盘分区有主分区、扩展分区和逻辑分区之分。一块磁盘最多可以有4个主分区,其中一个主分区的位置可以用一个扩展分区替换,在这个扩展分区内可以划分多个逻辑分区。
3)如果规划的分区数量超过4个,则分区组合为3primary+1extend或2p+1e或1p+1e。
4)一块磁盘最多只能有一个扩展分区,扩展分区不能直接使用,必须在扩展分区上划分逻辑分区,然后格式化(创建文件系统),之后才能存取数据或安装系统。
磁盘分区命名及编号方式
(1)以设备名命名
在Linux系统中,磁盘设备对应于系统中的特殊文件,这些特殊文件放在“/dev”目录中,不同的设备对应的设备名称如下:
·系统的第一块IDE接口的硬盘称为/dev/hda。
·系统的第二块IDE接口的硬盘称为/dev/hdb。
·系统的第一块SCSI接口的硬盘称为/dev/sda。
·系统的第二块SCSI接口的硬盘称为/dev/sdb。
(2)使用数字编号
为了表示不同的分区,通常会用数字进行编号,比如:
·系统的第一块IDE接口硬盘的第1个分区称为/dev/hda1。
·系统的第一块IDE接口硬盘的第5个分区称为/dev/hda5。
·系统的第二块SCSI接口硬盘的第1个分区称为/dev/sdb1。
·系统的第二块SCSI接口硬盘的第5个分区称为/dev/sdb5。
需要注意的是,在对分区编号时,数字1~4只能留给主分区或扩展分区使用,逻辑分区(在扩展分区基础上建立)编号只能从5开始。
在对Linux系统设置了分区之后,还要在分区上创建文件系统才能安装系统,这个在安装时由系统自行完成创建。
Linux系统对分区的基本要求
1)最少要有一个根(/)分区,用来存放系统文件及程序。其大小至少在5GB以上。
2)要有一个swap(交换)分区,它的作用相当于Windows里的虚拟内存,swap分区的大小一般为物理内存容量的1.5倍(内存<8GB)。但当系统物理内存大于8GB时,则swap分区配置8~16GB即可,太大无用,浪费磁盘空间。swap分区不是必需的,但是大多数情况应该设置,个别企业的数据库应用场景不分swap。
3)/boot分区,这是Linux系统的引导分区,用于存放系统引导文件,如Linux内核等。所有文件的总大小一般只有几十MB,并且以后也不会增大太多。因此,该分区可以设置为100~200MB,这个分区也不是必需的。
企业生产场景中Linux系统的分区方案
常规的分区方案如下。
方案1:针对网站集群架构中的某个节点服务器分区,该服务器上的数据有多份(其他节点也有)且数据不太重要,建议的分区方案如下。
/boot:设置为100~200MB。
swap:物理内存的1.5倍,当内存大于或等于8GB时,配置为8~16GB即可。
/:剩余硬盘空间大小(/usr、/home、/var等分区和“/”共用一个分区,这相当于在Windows系统中只有一个C盘,所有数据和系统文件都放在一起)。
方案2:针对数据库及存储角色的服务器分区,该服务器的业务有大量重要的数据,建议分区方案如下。
/boot:设置为100~200MB。
/:大小设置为50~200GB,只存放系统相关文件,网站等的业务数据不放在这里。
swap:物理内存的1.5倍,当内存大于或等于8GB时,配置为8~16GB即可。
/data:剩余硬盘空间大小,放数据库及存储服务等重要数据。当然,data的名称也可以换成别的名字。
本方案其实就是把重要数据单独分区,便于备份和管理。
方案3:针对大网站或门户级别企业的服务器进行分区。
/boot:大小设置为100MB。
swap:物理内存的1.5倍,当内存大于或等于8GB时,配置为8~16GB即可。
/:大小设置为50~200GB,只存放系统相关文件,网站等的业务数据不存放在这里。
剩余的磁盘空间保留,不再进行分区,将来分配给不同的使用部门,由他们自己根据需求再分!
此种分区方案更灵活,比较适合业务线比较多、需求不确定的大企业使用。
对于分区,有网友还给出了如下方案:
/boot、swap、/、/usr、/home、/var
这种分区方案是典型的没有主见的分区方式,有太多的额外分区(/usr、/home、/var),有没有必要且不说,管理起来也很麻烦,这与一个家庭就2~3口人,买了100平方的房子,非要隔成几个房间同一道理,老男孩极不推荐这样的分区方案。
如果说怕某个分区满了会影响系统运行,这样的分区想法是错的。第一,硬盘空间是固定的,分区多了,比只分一个区肯定更容易满;第二,在企业应用里,业务不可用和服务器宕机的危害几乎差不多,因此,分区少一些,然后对所有分区进行监控报警是目前多数规范企业的选择。
本文采用常规的服务器分区方案,即分为/boot、swap、/三个分区,注意分区的先后顺序。
关于磁盘分区就介绍这么多。下面继续介绍安装系统的操作。
1)创建第一个分区,/boot分区
在“Add Partition”(添加分区)的界面中(如图2-18所示),需要分别手工输入分区挂载点目录、选定文件系统类型、对哪个磁盘操作(如果服务器有多个磁盘则要特别注意),以及指定创建的分区大小。操作完成后的界面如图2-19所示。之后单击“OK”继续。
图2-19 /boot分区配置过程图
界面选项说明如下。
1)Mount Point的意思是挂载点,这是Linux下访问磁盘分区的入口,即如果要往/boot分区(/dev/sda1)写入数据,就必须通过/boot入口来写入,这一点与Windows是不同的。
2)File System Type的意思是文件系统类型,就像Windows的fat32/ntfs一样,磁盘分区只有在设置了文件系统类型格式化并挂载上挂载点后,分区才能存放数据。目前有如下一些文件系统类型。
·ext2/ext3/ext4:适合Linux的文件系统类型。由于ext3文件系统多了日志记录功能,因此系统恢复起来会更快速,ext4是ext3的升级,效率更加高,因此建议使用默认的ext4类型,而不要使用ext2/ext3。
·physical volume(LVM):一种弹性调整文件系统大小的机制,可以让文件系统变大或变小,而不改变原有文件数据的内容,功能不错,但性能会下降。
·software RAID:利用Linux系统的特性,用软件仿真出磁盘阵列的功能。
·swap:内存交换空间。由于swap并不会使用到目录树的挂载,因此用swap就不需要指定挂载点。
·vfat:同时被Linux与Windows所支持的文件系统类型。如果主机硬盘上同时存在Windows与Linux两种操作系统,有数据交换需求,可以使用该文件系统。
·xfs:一个文件系统类型,在CentOS 7中将被作为默认的文件系统类型而替换ext4。
3)Force to be a primary partition的意思是强制主分区,是可选项。由于所有的分区未过4个,因此可勾选该项。
创建/boot分区后的结果如图2-20所示。
图2-20 创建/boot分区后的结果图
2)创建swap交换分区
在图2-20中,选中磁盘sda下面的“free 7991”这一行,然后单击右下角第一个按钮“Create”,再次进入“Add Partition”操作界面,创建swap交换分区,同创建/boot分区一样,swap分区的设置也比较简单,整个配置内容和过程如图2-21和图2-22所示。
图2-21 添加分区界面
图2-22 swap分区配置过程图
swap分区配置说明:
1)swap分区不配置Mount Point挂载点,swap不需要人为访问,交给系统自动处理。
2)swap分区的大小一般为物理内存容量的1.5倍(内存<8GB)。但当系统物理内存大于8GB时,swap分区配置8~16GB即可,太大无用,还浪费磁盘空间。
3)如果是学习环境,为了节省空间,swap设置得小一点也没有问题。
创建swap分区后的结果如图2-23所示。
有关交换分区swap的说明:
Linux系统分区时,常规的分区方案为/、/boot、swap,其中swap不是挂载点(/、/boot都是挂载点),而是分区类型,类似ext4的一个文件系统,如果在挂载点输入框处输入“/swap”创建swap分区就错了。
图2-23 创建/boot和swap分区后的结果图
3)创建/(根)分区
在图2-23中,选中磁盘sda下面的“free 6967”这一行,然后单击右下角第一个按钮“Create”,再次进入“Add Partition”操作界面,创建/(根)分区,同创建/boot分区一样,可轻松完成/(根)分区的设置,整个操作过程如图2-24和图2-25所示。
图2-24 添加分区图
图2-25 /(根)分区配置图
根(/)分区配置
由于根分区是最后一个分区,因此把剩余空间都给了它,对应的选项为“Fill to maximum allowable size”。这时,原来的“Size(MB)”右边的数字框内设置的数字就不起作用了。
创建/(根)分区后的结果如图2-26所示。
创建完所有的分区后,单击界面右下角的“Next”继续。此时系统需要对配置的分区格式化,而且会出现格式化警告窗口,单击“Format”(格式化)继续,这个过程中还可能提示写入分区表,在写入配置到磁盘的窗口,单击“write changes to disk”继续。整个过程如图2-27所示。
图2-26 创建/boot、swap和/(根)分区后的总图
图2-27 格式化警告和写入磁盘的图
提示:这里采用的是生产环境中集群节点下的节点服务器的分区方式,即系统坏掉后硬盘数据不需要保留。此分区方式也适合大多数生产环境的服务器,如果是数据库及存储等有重要数据的特殊业务服务,一般会单独划分存放数据的分区,如/data。
除了/boot、swap和/三个分区外,还可以加/usr、/home、/var等分区,具体要根据服务器的需求来决定,一般情况下,只配置这三个分区就足够了。这种分区方案最大优点就是简单,使用方便,可批量安装部署,而且不会存在有的分区满了,有的分区还剩余很多空间又不能被利用的情况(LVM的情况在这里先不阐述)。
该分区方案的缺点是如果系统坏了,重新安装系统时,数据都在/(根)分区,导致数据备份很麻烦,如果设置了/usr、/home、/var等分区,即使系统出了故障,也可以直接在/(根)分区安装系统,这样并不会破坏其他分区的数据。当然,刚才也说了,如果是不存在备份数据的集群的节点,那采用这种分区方案是很明智的,不需要特别担心某个分区暴满的问题。