自建Debian服务器的分区问题

Okailon 提交于 周二, 01/02/2018 - 07:24

通常来讲很少人会碰到这个问题,在阿里云上没有这个问题,空间不够购买挂上去就可以了,如果是自建Windows Server也不会有这个问题。

如果你自己买个服务器然后安装Debian就有这个问题,如果考虑不周,有时会有严重的后果,小编就有一次惨痛的教训,在运行Debian数月之后突然有一天系统出错,经查是数据库满出来卡死,当时分配的磁盘容量太少,如果是生产服务器的话后果是十分严重的。

在安装Debian的时候就会出现“分区与选择挂载点”的选项,这是应该事先计划好的一项重要任务,首先你要知道这个服务器以后主要是用来干嘛的?这样才有可能来估计今后的磁盘需求,当然也有可能对未来还没有方向,那么不分区也许是个最简单的办法,当然你也必须清楚,以后有可能需要重装这个系统。

分区的重要性除了上面讲到的问题,这里还有一个例子: 如果机器上有一个邮件服务器,推荐为 /var/mail 建立一个独立的分区,这样当因为过多的垃圾邮件把邮件系统卡死时,不会影响到其他系统,其他系统可以正常运行。尽管很重要,建议新手先不要分区,等自己对Linux有点感觉以后再分区,因为不同系统往往有不同反应。

下表是常用的几种可能

分区方式 所需最小空间 所新建的分区
所有文件在同一分区 600MB , swap
建立 /home 分区 500MB , /home, swap
分别建立 /home、/var 和 /tmp 分区 1GB , /home, /var, /tmp, swap

对于多用户系统或者有大量磁盘空间的系统,最好将 /var、/tmp 和 /home 分配到他们各自的分区,与 / 分区分离开来。
如果您计划安装 Debian 发布版以外的程序,也许需要一个独立的 /usr/local 分区。通常情况下,将 /tmp 放在它自己独立的分区,比如 20–50MB 是一个好主意。如果您要创建一个有很多用户的服务器,一个独立的、大的 /home 分区比较好。一般来说,分区状况在每台计算机都不同,这取决于它们的用途。

在安装前我们要搞清楚,运行环境在什么目录里?程序装什么目录里?数据库在什么目录里?显然Debian对没有经验的菜鸟是不太合适的!

在此我们将用LAMP作为我们的工作环境,这个LAMP软件包将使用以下的目录:

  • MySQL 安装目录: /usr/local/mysql
  • MySQL 数据库目录: /usr/local/mysql/data(默认,安装时可更改路径)
  • MariaDB 安装目录: /usr/local/mariadb
  • MariaDB 数据库目录: /usr/local/mariadb/data(默认,安装时可更改路径)
  • PHP 安装目录: /usr/local/php
  • Apache 安装目录: /usr/local/apache
  • phpMyAdmin 安装目录: /data/www/default/phpmyadmin
    (安装完成后出于安全,建议将此目录改名,比如改为 /data/www/default/admin_8989)
     
  • 默认的网站根目录: /data/www/default

 

以上几个目录都是对磁盘需求量最大的。

当然/home 也需要比较大的空间。

相关的 Linux 命令

df命令是linux系统以磁盘分区为单位查看文件系统,可以加上参数查看磁盘剩余空间信息
root@deb8:/# df -hl
文件系统                     容量  已用  可用 已用% 挂载点
/dev/dm-0                  8.2G  3.7G  4.1G  48% /
udev                        10M     0   10M   0% /dev
tmpfs                      402M  6.3M  396M   2% /run
tmpfs                     1005M   72K 1005M   1% /dev/shm
tmpfs                      5.0M  4.0K  5.0M   1% /run/lock
tmpfs                     1005M     0 1005M   0% /sys/fs/cgroup
/dev/sda1                  236M   55M  169M  25% /boot
/dev/mapper/deb8--vg-tmp   360M  2.1M  335M   1% /tmp
/dev/mapper/deb8--vg-var   121G  6.0G  108G   6% /var
/dev/mapper/deb8--vg-home   14G  5.2G  7.8G  40% /home
tmpfs                      201M  4.0K  201M   1% /run/user/117
tmpfs                      201M  8.0K  201M   1% /run/user/0
tmpfs                      201M     0  201M   0% /run/user/1000

du -sh [目录名] 返回该目录的大小
du -sm [文件夹] 返回该文件夹总M数
root@deb8:/# du -sh var
6.0G    var
root@deb8:/# du -sm var
6105    var

 

下面是CSDN上的分享,蛮不错的:

硬盘一般分为IDE硬盘、SCSI硬盘和SATA硬盘三种,
在Linux系统中,IDE接口的硬盘被称为hd,SCSI和SATA接口的硬盘则被称为sd,
其中IDE硬盘基本上已经淘汰,现在市面上最常见的就是SATA接口的硬盘,第1块硬盘称为sda,第2块硬盘称为sdb……,依此类推。

一块硬盘最多有4个主分区,主分区以外的分区称为扩展分区,硬盘可以没有扩展分区,但是一定要有主分区,在主分区中要有一个激活分区用来启动Windows系统,在扩展分区中可以建立若干个逻辑分区,因此,最合理的分区方式应该最多分三个主分区,一个扩展分区,这样可以有效地利用有限的主分区,然后在扩展分区中建立逻辑分区。
在Linux系统中每一个硬盘总共最多有 16个分区,硬盘上的4个主分区,分别标识为sdal、sda2、sda3和sda4,逻辑分区则从sda5开始标识一直到sda16。
Ubuntu Linux可以把分区作为挂载点,载入目录,其中最常用的目录如下表所示:

目录 建议大小 格式 描述
/ >20G ext4 根目录
swap 2G/4G swap 交换空间
/boot 500M ext4 Linux的内核及引导系统程序所需要的文件,比如 vmlinuz initrd.img文件都位于这个目录中。在一般情况下,GRUB或LILO系统引导管理器也位于这个目录;启动撞在文件存放位置,如kernels,initrd,grub。
/tmp 5G ext4 系统的临时文件,一般系统重启不会被保存。(建立服务器需要?)
/home >50G ext4 用户工作目录;个人配置文件,如个人环境变量等;所有账号分配一个工作目录。

 

 

权威的IBM相关文章:调整 Linux 分区,LVM、故障排除和供选方案

Gparted的安装使用 2018年07月09日 这篇文章写得非常仔细
    我想很多人之所以要这样做,是因为没有很好的了解gparted 的用法。
    首先需要注意的一点是:gparted中对一个分区的操作,只能影响到最邻近的两个其他分区,也只有邻近的这两个分区能影响到该分区。

CentOS Debian VPS无损调整分区大小方案 2012年08月15日,这篇也写得不错

在Debian系统中使用backupninja定制备份计划的教程 2015-06-05