我应该为linux服务器创建多少个分区?


15

分区在Linux服务器上非常重要,因为分区为您提供了很大的灵活性,例如在升级到更大的硬盘驱动器时。

但是,构建Linux机器时应该创建多少个分区?我应该为每个分区设置什么大小?

最后但并非最不重要的一点是,我应该在单独的磁盘上拥有哪些分区(我正在考虑/ home,也许在更快的驱动器上的/ var等)以及可以在同一驱动器上共享哪些分区?


1
您有几个驱动器?您预计这个数字会随着时间变化吗?这是单用途的盒子还是通用的盒子?单用户还是多用户?所有这些事情都很重要。
pjz

问题更多是出于通用目的,但仍然针对服务器。
paulgreg,2009年

Answers:


17

计划一个良好的分区结构在很大程度上取决于实际了解您将如何使用“服务器”。任何不采用将要提供的实际服务的随机建议都不会特别有用。

例如,如果它是将用于mysql的基于debian的盒子,则可能需要/,/ var和/ var / lib / mysql的单独分区。

它将成为具有大量共享存储的文件服务器吗?您可能需要/,/ home和/ srv分区。

对于只运行乌贼的盒子,您可能想要在/分区上,在快速磁盘上为乌贼后台打印分区。

在规划分区时,对文件系统层次结构标准以及文件发行版是否/如何偏离标准有很好的了解将非常有帮助。

使用LVM可以使将来改变主意,调整分区而无需重新启动变得更加容易。创建快照的功能可以很容易地创建良好的备份。


1
迄今为止最好的答案。
暂停,直到另行通知。

很好的答案..关于结构取决于预期用途的建议以及LVM是一个不错的选择。
RickMeasham

在此处查看有关分区值的更多信息。serverfault.com/questions/61284/sell-partitioning-to-me
Zoredache

我当时甚至不知道那里一个文件系统层次标准。感谢您提及。
Joe Internet

8

我总是创建这些分区,从去年开始,总是在LVM上:

/       - a few Gig
/usr    - 24 Gig and mostly empty
/var    - 4 Gig works for me, YMMV
/home   - depends on how many users you will have

最重要的一个是/var-如果这是一个单独的分区,那么当它填满时,您将不会崩溃根分区。尽管我从未做过,但有些人将其单独设置为/usr可以只读方式安装。

我有时创建这些分区:

/boot   - even 1 Gig is way more than enough

原因是并非总是可以从RAID或LVM分区引导。因此,/boot可以是一个简单的ext3分区,从而/可以更高级。

如果我将拥有大量大文件,有时会为这些大文件创建一个特定的分区,以便可以调整文件系统以有效地存储大文件。某些人(如果要从服务器提供NFS服务)将为其NFS共享创建一个单独的分区,甚至为每个NFS共享创建一个单独的分区。这取决于您的需求。

为什么选择LVM?正如我在其他地方的答案中提到的,但在这里忘记提及的那样,这使以后改变主意并扩展分区变得很容易。这已经救了我的屁股。

这些是一般准则。当然,我希望如果您的服务器有特殊需求,您将考虑到这一点并进行分区以反映这些需求。


7

假设您要构建的机器会持续一段时间,并且重建起来很不方便,并且需要非常灵活,那么您可能需要一个类似于以下的方案:

  1. 至少安装两个相同大小的物理驱动器;就本示例而言,我将假设使用500GB SATA驱动器,但该原理在其他大小的驱动器上也可以正常工作。

  2. 对每个驱动器进行分区,如下所示:

    /dev/sda1   500MB
    /dev/sda2   100GB
    /dev/sda3   the rest
    

    我们的目标是在前面放置一个500MB的分区,在中间放置一个用于OS和应用程序的较大分区,并在后面放置大量驱动器以获取其他数据。

  3. /dev/md0/dev/sda1和构建SW RAID 1集/dev/sdb1。建立附加SW RAID 1套/dev/md1/dev/md2从相应的paritions。

  4. 格式/dev/md0为ext3; 这将是/boot

  5. 格式化/dev/md1/dev/md2作为LVM物理卷。

  6. 创建一个LVM卷组vg_system,其中包含/dev/md1

  7. 在内部vg_system为各种OS分区创建适当的LVM卷;最起码,你会想swap/var一对夫妇GB的,和/10GB的左右。 注意:不要全部分配vg_system!当您以后决定要增加的大小\var或要添加 /opt或之类的内容时,便需要该额外的空间。

  8. 创建一个LVM卷组vg_data,其中包含/dev/md2

  9. vg_data根据需要在内部创建LVM卷;至少,您将需要一个sizeable /home,并且可能需要用于卷轴,数据库,Web根目录或OS以外的任何其他数据的其他卷。同样,vg_data出于与上述原因相似的原因,请勿分配所有。

该策略的优点包括:

  • 它可以容忍硬件故障;任何一个驱动器都可以发生故障而不会导致系统故障,如果您购买了热插拔控制器,则可以在不停机的情况下进行恢复。

  • 它面向未来且可扩展;当您购买几年后购买2TB驱动器时,可以将它们拍打到计算机中,使其成为另一个SW RAID集,将其格式化为LVM物理卷,将其添加到需要更多空间(可能是lv_data)的任何卷组中,然后用于 pvmove将数据从旧驱动器迁移到新驱动器。此外,可以大大减轻主要OS更新的痛苦;如果您需要重新安装操作系统以进行重大升级(Red Hat :(),则可以在保留主目录(以及邮件线轴以及您放入的所有其他文件vg_data)的同时进行)。

这种策略的缺点很少。我想它有点复杂,由于RAID 1,您的写入性能确实受到了影响。但是,多年来,我一直根据这些原则构建工作站和独立服务器,根据我的经验,每次不久之后,我便希望按照这些思路建造机器。

-史蒂夫

PS我要补充一点,如果您拥有可以快速,轻松地配置新机器的基础架构,那么像这样的系统就太过分了;无需修补RAID集和LVM,如果需要进行某些更改,只需重建计算机即可。


2

多年以来,我使用的每台计算机都是双引导系统,而在Linux方面,我几乎坚持使用这种模式(我在这里指的是个人工作站,没有服务器的东西,因此您的工作量可能会有所不同)

/     - main thing
/boot - not that relevant, since cylinder being < 1024 and 
        exotic filesystems are no longer an issue
/home - handy if you upgrade your laptop with each new distro :-)

对于上一次升级,我从头开始进行安装,清除了/分区。这让我想起一个单独的/opt/usr/local分区本来不错,不放过我重新安装所有我摆在那里的东西的麻烦(Java,Eclipse的......我通常不关心发行版包装的)。


2

除了Eddie提到的分区外,我通常还会创建另外两个单独的分区

/ tmp-基于相同的原因,您创建了一个单独的/ var分区(我之前临时空间已全部填满)。我通常使用1-2 GB

/ usr / local-这使您可以根据需要升级和清理/ usr,而不必删除所有单独安装的软件。这里的大小取决于您安装了多少外部软件。我通常使用大约10 GB的存储空间,但是最近发现它有点小。

我总是使/ home最后,并用它填满磁盘的其余部分。

在/ boot分区上,我从未使其大于100 Mb,也从未遇到空间问题(最终我清除了旧内核)。它确实可以很小。

同样不要忘记交换分区。


1

对于大多数机器,我会

100MB /boot
1GB * NUMBER_OF_USERS /home
10GB /var/log
10GB /var
REST /

在某些情况下,这需要进行切换,但是我非常坚决地保证用户在服务器上获得的空间不会超过1GB。如果他们需要更多,他们可以使用/ tmp,但要知道它将通过cron每晚删除。


1

假设您在那里不使用硬件RAID-在Linux下,我将始终在RAID之上使用LVM。即使是单个磁盘配置。原因是您可以选择添加更多存储空间(通过扩展LVM组)或更改冗余选项(例如,将“怪异”的单个磁盘raid1配置变成繁重的镜像一个甚至RAID10)。

为了回答您的问题,对于通用服务器,我通常有与此类似的东西。从2个磁盘(例如1RU Dell)开始,两个磁盘的分区为:

  • / boot约100MB RAID1
  • 磁盘其余部分位于RAID1顶部的LVM

然后,我们将所有卷创建为LVM卷:* / * / var * / tmp * / home * / opt

我会避免创建过多的文件系统,因为这很麻烦。如果磁盘空间不足,您最终将在许多文件系统上拥有可用空间,但工作量不足。

/ home和/ tmp在单独的文件系统上总是一个好主意;通常,除非计划在其中添加很多内容,否则我不会将/ opt分开。(如果您有很多需要相同软件堆栈的服务器,则对于/ opt,NFS可能是更好的选择)

简而言之,对所有内容都使用LVM,除非您有理由不这样做-这样您就可以选择更改。

另外,请使用日志服务器,以便日志不会填满您的/ var!


0
  • /启动-128MB

卷组-rootvg

  • / var-5GB(取决于它是否用作邮件服务器。您还可以调整大小以捕获核心文件)
  • / tmp-2GB
  • / opt-10GB(用于发行版随附的软件)
  • --6GB-最低

卷组-datavg

  • / home-其余的

您可以为软件创建一个单独的/ usr,但在我的情况下,该盒将重新安装,因此无需获取其自己的分区。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.