生产环境:
硬件:华硕PC机,4 Intel(R) Core(TM) i5-6400 CPU @ 2.70GHz,内存4G;
任务:生产场景下如何对Linux硬盘分区,安装CentOS6.9版本,搭建公网环境;
技巧:U盘安装、生产场景分区
1、背景
添加一台新电脑,目前该主机是裸机,没有安装任何操作系统。在安装操作系统之前,先要分区,在这里作者是按企业生产场景环境来分区的,对硬盘分区之前,我们先梳理磁盘分区的相关知识。
2、磁盘分区知识:
为什么硬盘要分区,因为我们要告诉操作系统,从哪里读取数据,又要从哪里写数据。硬盘分区有主分区、扩展分区和逻辑分区之分。一块硬盘最多可以有4个主分区,一个扩展分区,当然在扩展分区内还可以划分多个逻辑分区。
主分区:一般为第一分区,在上面安装操作系统。
扩展分区:不能算一个正常的分区,而是一个链接,起到一个指向的作用。
逻辑分区:逻辑分区是存在于扩展分区内。
分区要点:
1) 多个主分区的原则:1≤主要区≤4
2) 扩展分区和主分区组合:1≤(主分区+扩展分区)≤4
3) 分区成四块磁盘的话:P+P+P+P P+P+P+E
特殊说明:
1) 扩展分区不是一个真正的分区,建立完扩展分区需要在上面建立逻辑分区才可以使用;
2) 对于主分区和逻辑分区在使用上是没有区别的。
3) 分区数字编号1-4留给主分或或扩展分区使用,逻辑分区编号一般从5开始;
4) 硬盘也可以不分区,直接格式化使用。
3.硬盘分区的设备名
设备名称如下,可以以此类推:
系统的第一块IDE接口的硬盘为 /dev/hda
系统的第二块IDE接口的硬盘为 /dev/hdb
系统的第一块SCSI接口的硬盘为 /dev/sda
系统的第二块SCSI接口的硬盘为 /dev/sdb
分区则使用数字编号表示:
系统的第一块IDE接口的硬盘的第1个分区称为 /dev/hda1
系统的第二块SCSI接口的硬盘的第2分区称为/dev/sdb2
4、生产场景分区方法
4.1 Linux系统地分区的要求:
1) 最少要有/以及swap两个分区;
2) Swap的作用:虚拟内存,swap=1.5*物理内存容量,或者swap=2*物理内存容量
3) 建议设置独立的/boot分区
4) 常规生产线上一般服务分区方式:/boot ,swap,/三个分区。
优点:简单方便、易于维护、可批量部署,最主要的是不会因为分多个分区,有的分区满了,有的分区而剩余很多空间却不能利用的情况。
缺点:如果系统出了问题,重新装系统时,因为所有数据在根分区(/),所有数据都有可能损坏。
4.2 生产环境中安装Linux系统时如何进行分区
服务器角色 |
分区建议 |
优点 |
RAID方案 |
单机服务器 如8G内存,300G硬盘
|
/boot 100-200M swap 16G,内存大小8G*2 / 80G /var 20G(也可不分) /data 180G(存放web及db数据)
|
数据盘和系统盘分开,有利于出问题时维护。 |
视数据及性能要求,一般可采用raid5折中。 |
负载均衡器(如LVS等) |
/boot 100-200M swap 内存的1-2倍 / |
简单方便,只做转发数据量很少。 |
数据量小,重要性高,可采用RAID1 |
负载均衡下的RS server |
/boot 100-200M swap 内存的1-2倍 / |
简单方便,因为有多机,对数据要求低。 |
数据量大,重要性不高,有性能要求,数据要求低,可采用RAID0 |
数据库服务器 mysql及oracle 如16/32G内存
|
/boot 100-200M swap 16G,内存的1倍 / 100G /data 剩余(存放db数据) |
数据盘和系统盘分开,有利于出问题时维护,及保持数据完整。 |
视数据及性能要求主库可采取raid10/raid5,从库可采用raid0提高性能(读写分离的情况下。) |
存储服务器 |
/boot 100-200M swap 内存的1-2倍 / 100G /data(存放数据) |
此服务器不要分区太多。只做备份,性能要求低。容量要大。 |
可采取sata盘,raid5 |
共享存储服务器(如NFS) |
/boot 100-200M swap 内存的1-2倍 / 100G /data(存放数据) |
此服务器不要分区太多。NFS共享比存储多的要求就是性能要求。 |
视性能及访问要求可以raid5,raid10,甚至raid0(要有高可用或双写方案) |
监控服务器 cacti,nagios |
/boot 100-200M swap 内存的1-2倍 /
|
重要性一般,数据要求也一般。 |
单盘或双盘raid1即可。三盘就RAID5,看容量要求加盘即可。 |
5、在整个分区过程中产生两个问题:
问题1:您的分区方法产生了如下关键错误,您还没有创建/boot/efi分区,在继续安装CentOS前您必须更正这些错误。
方法1:先采用网上的方法尝试解决此问题,按F2进入BIOS,选择启动项(BOOT Mode中分别有三项:UEFI+Legacy、UEFI、Legacy),其中默认是UEFI+Legacy,按要求选择Legacy,重新启动后无法找到U盘,所以放弃使用该方法,如果该电脑有光驱的话,可能就解决此问题了,因可以通过光驱安装系统。
方法2:分区时,创建独立的/boot/efi分区,100MB即可。
因为采用Legacy无法识别U盘,所以采用UEFI引导,需要根分区或swap分区,必须创建独立的/boot/efi分区,否则无法继续安装。
问题2:您的分区方法产生了如下关键错误,sda必须有一个GPT磁盘标签。
导致上述问题的原因,关键采用了UEFI+GPT模式启动电脑的方法,本分区并没有采用MBR分区方式。
下面通过加入GPT磁盘标签来解决可以继续安装的问题:
按下Ctrl + Alt + F2 进入到rescure模式
Parted
Mklabel gpt /dev/sda
Yes
Print /dev/sda
按下Ctrl + Alt + F6回到安装界面
注意:既然解决了安装问题,最终导致整个硬盘只能划分主分区,不能划分扩展分区。
现在的说法是使用GPT对磁盘进行分区,它更先进,更健壮,所有计算机系统都在向其转移。
整个分区过程尝试过N种方法,最终硬盘分区通过:
添加gpt标签
注意:有一块电脑硬盘,另外还有一个U盘,看清楚,一不心会损坏U盘中的数据
标准分区
最终的分区是:/boot,swap,/,/data
[root@JxateiLinux ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 358G 2.4G 337G 1% / #根分区
tmpfs 1.9G 0 1.9G 0% /dev/shm #swap分区
/dev/sda2 190M 42M 139M 24% /boot
/dev/sda1 200M 264K 200M 1% /boot/efi #分个几十M就足够了
/dev/sda5 93G 60M 88G 1% /data #存放数据
如果是采用专业服务器的话,基本上不会发生上述的问题。
硬盘分了区,系统也安装好了,接下来还要配置好公网IP。
配置过程要注意两个步骤:
[root@JxateiLinux ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
HWADDR=88:D7:F6:56:48:D6
IPADDR=113.195.*.*
NETMASK=255.255.255.0
GATEWAY=113.195.210.1
TYPE=Ethernet
BOOTPROTO=static #配置静态IP
ONBOOT=yes #随着系统启动,即自动激活网卡
[root@JxateiLinux ~]# cat /etc/resolv.conf
nameserver 220.248.192.* #配置DNS
nameserver 8.8.8.8
技术经验:能 ping 通 IP,但就是无法 ping 域名,原因就是 nameserver 要靠左顶格写,不能有空格,所以一定要按计算机及系统的规则标准操作,否则不知道会出现什么样的问题。