侯体宗的博客
  • 首页
  • Hyperf版
  • beego仿版
  • 人生(杂谈)
  • 技术
  • 关于我
  • 更多分类
    • 文件下载
    • 文字修仙
    • 中国象棋ai
    • 群聊
    • 九宫格抽奖
    • 拼图
    • 消消乐
    • 相册

运维老鸟谈生产场景对linux系统进行分区的方法

linux  /  管理员 发布于 7年前   419

老鸟谈生产场景如何对linux系统进行分区?

前言:

我们买房子时,会考虑1室1厅,2室1厅,或3室2厅......!那么具体如何选,是要看

手中的money和家庭的人口数量。

同理,服务器操作系统在分区时也是如此,到底分3个区,4个区,要不要分/home/ /var,这也要看我们的业务需求,和运维规范或者说运维领导的喜好。

分多了,分少了,在不同的业务场景都可能会有一些麻烦问题(LVM可以解决这个问题,不过有他的弊端,或者说,某些场景是画蛇添足)。

在阐述这个问题之前我们先来简单说下基础分区/boot分区、swap分区和/(根)分区的作用。

 Linux的/boot分区、swap分区和/(根)分区的作用

/boot引导分区,存放引导文件和Linux内核等。

启动文件:用于判断你需要启动哪个操作系统或启动哪个内核。

内核:简单的讲,程序与硬件间的桥梁,你使用应用程序通过内核控制整个计算机。

分区时一般设定:100-200M,正式环境下,linux引导文件及内核全部大小小于100M。

/根分区,作为整个文件系统的根目录,硬盘不论分几个区。所有的文件

都会在根目录下。在windows里,我们把硬盘分为c: d:e: 等,然后

分别存放系统、程序、游戏、歌曲等。

而在linux下不一样了:不论你分几个区,你都要在给他们单独起个名字,

然后分别用 /data,/music,/study这样名字的目录来把分的分区挂载

到各自的目录上提供访问,和目录完全一样的待遇。

在linux下,硬盘看起来就像一个分区一样。这个分区的根目录,就是/ 。

分区时一般设定:分完上面两个区后,剩下的都给根分区即可。

在生产场景大规模(200台以上服务器)网站运维中,普通服务器的分区,分上面三个区是不

错的选择。

采用/boot分区、swap分区和/(根)分区的方案优缺点:

优点:

简单,使用方便,可批量安装部署使用,而且不会因为分多个分区,有的分区满了,

有的分区剩余很多空间又不能被利用的情况(LVM的情况这里先不阐述)。

(其实也是可以使用的,可以fdisk删除重建分区,然后进行扩展,不过过程就复杂了,

有兴趣的朋友可以单独交流)。

缺点:

如果系统坏了,重新装系统时,因为数据都在/(根分区),而导致重装系统时数据备份麻烦了,

如果是加分了/usr,/home ,/var等分区,那么系统坏了。

可以直接在/(根分区)装系统,而不会破坏其它分区的数据。当然,我刚才也说了,如果是集群的节点, 不存在需要备份数据的情况下,本文的分区方案优点非常明显,不需要担心某个分区暴满而其它分区不能使用的问题。

生产环境中安装linux系统时如何进行分区?

下面是我对本文主题的答案,供大家参考使用。仅代表老男孩的个人观点。

有很多学生及朋友会在这里纠结,到底产环境中安装linux系统时如何进行分区?

比如,以上/boot分区、swap分区和/(根)分区是基本的,另外,要不要分/home /var等,甚至要不要把数据单独分区。

其实,这个问题没有固定的答案。那么不给大家答案你们还不甘心,所以呢,我就再详细说下吧。

提示:以上的分区方式,是可以建立在raid基础上的。有关生产场景不同角色的服务器如何选择raid的问题,我们下次在谈。

附带:其它常用分区目录介绍

/home 普通用户的家目录默认存放目录;

/usr这个是系统存放程序的目录,比如命令、帮助文件等。这个目录下有很多的文件和目录。当我们安装一个Linux发行版官方提供的软件包时,大多安装在这里。如果有涉及服务器配置文件的,会把配置文件安装在/etc目录中。/usr目录下包括涉及字体目录/usr/share/fonts ,帮助目录 /usr/share/man或/usr/share/doc,普通用户可执行文件目录/usr/bin 或/usr/local/bin 或/usr/X11R6/bin ,比如 /usr/sbin 或/usr/X11R6/sbin 或/usr/local/sbin 等;还有程序的头文件存放目录/usr/include。

/var这个目录的内容是经常变动的,看名字就知道,我们可以理解为vary的缩写,/var下有/var/log 这是用来存放系统日志的目录。/var/www目录是定义Apache服务器站点存放目录;/var/lib 用来存放一些库文件,比如MySQL的,以及MySQL数据库的的存放地;

--------------------------------------------------------------------------------

老男孩调查征集:

你觉得生产环境中安装linux系统时如何进行分区比较好?请TXT(时间-主题-名字.txt)给我传下你的答案。

我做个调查。有兴趣的菜鸟及初级运维朋友可以配合下,予以配合的有奖励。

奖励一篇文章:老鸟谈生产场景如何对linux系统进行分区?哈哈。

收集到的网友及学生的分区方法

(a)20110802-linux分区方法-康加.txt

分区使用ext3格式

/boot 200m强制为主分区

/swap 内存的1.5-到2倍强制为主

/剩余空间分给根强制为主

老男孩点评:

一般情况下,该分区方案是通用的分区方案,适合一般的企业服务器选择。特别是

负载均衡下的RS。

(b)

GENERAL(511429563) 2011-8-2 9:43:04

是否要把/home,/usr,单独拿出来,根据服务器的用途来划分。就像老男孩说的,

你家需要2室3厅,也许他家需要3室一厅!个人意见

老男孩点评:

赞同。

(c)

AIX(xxx)10:35:28

/dos3G

/boot 64M

/目录 10G

/HOME 100G

我们3G的/DOS 用来备份了 /目录 服务器上当然没用这个分区!

AIX(519372002)10:36:34

没用swap 内存够大!本地生产数据不是很多 !

老男孩点评:

一般来说分个dos是没啥意义的,/home单分也没啥目的。不用swap没有问题,不过,一旦

内存耗尽,面临直接挂机风险,建议还是少分一点。

(d)

把爱投资给希望10:45:44

在我感觉、分区、要按实际来、

一般会有如下几个分区

1、boot

2、/

3、/swap

4、/usr

5、/root

6、 /var

7、/home

最重要的如下两点

第一 这台主机是否经常编译安装软件

如编译安装 那么我会把/usr 目录单独放出来做一个分区、大小自己定义 (按实际预算稍大)

第二 /var 分区、 日志

一般日志、临时目录都在这个分区下 、所以建议单独一个弄个大点的空间、日志可是很宝贵的东西

第三自定义备份分区

一般为/dos作为备份分区、大小在5G左右 还是老话 按实际来

第四 /home 分区、

这个分区也很重要 大概一半的空间都要分给这个区、 用户数据全部在这儿、

第五/swap分区、这个按照配置来、如果大内存 完全可以不要、 小内存当然是必备的、

老男孩点评:

说的头头是道,其实必要性(必须这样分的理由)都不强。

(e)

saink同学

公司生产环境

一般服务器(原有的生产环境,保持不变)

/boot 100M

swap 0~0.5倍内存

/ 剩余空间都给/

oracle服务器 16G内存(自己安装直接管理的)

/boot 100M

swap 17G

/ 剩余空间

tmpfs 手工给了14000M,原来默认8G

我觉得一般服务器

/boot 200M

swap 1~2倍,现在服务器内存都比较大的,大于8G服务器的swap分区比内存略大些就行

而内存比较小的话可以用1.5~2倍,swap分区尽可少用,用的越多,对系统性能下降

剩余空间都给 /

老男孩点评:

基本赞同saink的分法,不过DB SERVER还是单分开的好一点。

正象好多朋友说的,分区没有固定非要如何如何分,老男这里也只是给大家一个 我这么多年的一点经验,供大家参考,实际工作中,大家要根据需求领导应对。


  • 上一条:
    Linux怎么配置双机SSH互相信任实现免密码登录?
    下一条:
    Linux 下 Make 命令实例详解
  • 昵称:

    邮箱:

    0条评论 (评论内容有缓存机制,请悉知!)
    最新最热
    • 分类目录
    • 人生(杂谈)
    • 技术
    • linux
    • Java
    • php
    • 框架(架构)
    • 前端
    • ThinkPHP
    • 数据库
    • 微信(小程序)
    • Laravel
    • Redis
    • Docker
    • Go
    • swoole
    • Windows
    • Python
    • 苹果(mac/ios)
    • 相关文章
    • 在Linux系统中使用Iptables实现流量转发功能流程步骤(0个评论)
    • vim学习笔记-入门级需要了解的一些快捷键(0个评论)
    • 在centos7系统中实现分区并格式化挂载一块硬盘到/data目录流程步骤(0个评论)
    • 在Linux系统种查看某一个进程所占用的内存命令(0个评论)
    • Linux中grep命令中的10种高级用法浅析(0个评论)
    • 近期文章
    • 在go中实现一个常用的先进先出的缓存淘汰算法示例代码(0个评论)
    • 在go+gin中使用"github.com/skip2/go-qrcode"实现url转二维码功能(0个评论)
    • 在go语言中使用api.geonames.org接口实现根据国际邮政编码获取地址信息功能(1个评论)
    • 在go语言中使用github.com/signintech/gopdf实现生成pdf分页文件功能(0个评论)
    • gmail发邮件报错:534 5.7.9 Application-specific password required...解决方案(0个评论)
    • 欧盟关于强迫劳动的规定的官方举报渠道及官方举报网站(0个评论)
    • 在go语言中使用github.com/signintech/gopdf实现生成pdf文件功能(0个评论)
    • Laravel从Accel获得5700万美元A轮融资(0个评论)
    • 在go + gin中gorm实现指定搜索/区间搜索分页列表功能接口实例(0个评论)
    • 在go语言中实现IP/CIDR的ip和netmask互转及IP段形式互转及ip是否存在IP/CIDR(0个评论)
    • 近期评论
    • 122 在

      学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..
    • 123 在

      Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..
    • 原梓番博客 在

      在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..
    • 博主 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..
    • 1111 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
    • 2016-11
    • 2017-07
    • 2017-10
    • 2017-11
    • 2018-01
    • 2018-02
    • 2020-03
    • 2020-04
    • 2020-05
    • 2020-06
    • 2021-02
    • 2021-03
    • 2021-04
    • 2021-06
    • 2021-07
    • 2021-08
    • 2021-09
    • 2021-10
    • 2021-11
    • 2021-12
    • 2022-01
    • 2022-03
    • 2022-04
    • 2022-08
    • 2022-11
    • 2022-12
    • 2023-01
    • 2023-02
    • 2023-03
    • 2023-06
    • 2023-07
    • 2023-10
    • 2023-12
    • 2024-01
    • 2024-04
    Top

    Copyright·© 2019 侯体宗版权所有· 粤ICP备20027696号 PHP交流群

    侯体宗的博客