在网上可以查到分区的不同理由,更喜欢两个对我最重要的理由:

  1. 不会因为局部数据意外溢出而整机被卡死或崩溃
  2. 数据安全:局部硬件或软件出问题对其他分区影响可以降低到最低。

曾经有过一次惨痛的教训,在运行Debian数月之后突然有一天系统出错,经查是数据库满出来卡死,当时分配的磁盘容量太少,如果是生产服务器的话后果是十分严重的。

Linux有很多发行版,多多少少有点差异,这里以Debian为例。

对初学者来说是蛮难的,要马上搞清楚是不容易的事,最大的困难是一发行版很多,文件目录有差异;二是应用场景各不相同;所以就增加了理解的难度。所以在下面有推荐小白使用的方案和想做得更好新手可以参考的例子,不光给出了一般的分区大小推荐,而且给出了具体的例子数据,让人可以有一个具体参照物。

这是Debian安装程序给出的自动分区的三个选择

分区方式所新建的分区说明
所有文件在同一分区/, swap这是系统推荐新手使用的配置
建立 /home 分区/, /home, swap把home放到一个独立的分区
分别建立 /home、/var 和 /tmp 分区/, /home, /var, /tmp, swap对使用者提出了更高的要求

另外这篇Linux大众分区方案分享也不错

下面的例子是用一台Thinkpad笔记本在局域网做共享盘为主,同时还有一个内网的web server和数据库,硬盘大小为500G,安装时用手动分区,只使用Debian标准目录,没有自建主目录。
其实手动分区并不难前提是你要知道需要什么,同时要在安装系统时就搞定,事后修改风险还是有点大。
详细情况可以看这篇分享:Dedian文件结构

挂载目录建议分区大小说明
/boot100 - 150 MB目前实际大小为45MB,分配了476MB,有点多了,最多150MB就够了;这是系统启动目录包含内核及引导文件,独立以后就避免了因为其他部分出问题而无法启动。
/15 - 20 GB不包括 /var,实际分配了19G;一般的推荐是包括/var要大于20GB;系统程序都是安装在这个下面的/usr目录里。
/var10 - 40 GB这个实际要看用途,数据库数据,网站程序和图片、视频,备份,日志等都在这里;实际分配了33G。
/home剩余空间因为计划把共享目录Samba Server放在这个下面,所以要把剩余的405GB都分配给home,如果是1T的硬盘就会是900GB;作为共享网盘还是比较容易溢出的,分区以后就不会对整个系统造成影响,最多就是共享网盘空间耗尽。
/tmp> 500MB实际分配4.3G,系统存放临时文件
/swap8 GB实际分配4.7G,一般建议为内存的1倍或2倍,内存交换区,太小会有后遗症

硬盘的分配情况:

user2@thinkpad:~$ lsblk 
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0 465.8G  0 disk 
├─sda1   8:1    0   476M  0 part 
├─sda2   8:2    0  18.6G  0 part /
├─sda3   8:3    0     1K  0 part 
├─sda5   8:5    0  32.6G  0 part /var
├─sda6   8:6    0 405.1G  0 part /home
├─sda7   8:7    0   4.3G  0 part /tmp
└─sda8   8:8    0   4.7G  0 part [SWAP]
sr0     11:0    1  1024M  0 rom 

user2@thinkpad:~$ ls -l /dev/sda*
brw-rw---- 1 root disk 8, 0 Dec 18 14:00 /dev/sda
brw-rw---- 1 root disk 8, 1 Dec 18 14:00 /dev/sda1
brw-rw---- 1 root disk 8, 2 Dec 18 14:00 /dev/sda2
brw-rw---- 1 root disk 8, 3 Dec 18 14:00 /dev/sda3
brw-rw---- 1 root disk 8, 5 Dec 18 14:00 /dev/sda5
brw-rw---- 1 root disk 8, 6 Dec 18 14:00 /dev/sda6
brw-rw---- 1 root disk 8, 7 Dec 18 14:00 /dev/sda7
brw-rw---- 1 root disk 8, 8 Dec 18 14:00 /dev/sda8

目前硬盘占用情况:

user2@thinkpad:~$ df -hl
Filesystem      Size  Used Avail Use% Mounted on
udev            3.9G     0  3.9G   0% /dev
tmpfs           787M   11M  776M   2% /run
/dev/sda2        19G  1.6G   16G  10% /
tmpfs           3.9G     0  3.9G   0% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           3.9G     0  3.9G   0% /sys/fs/cgroup
/dev/sda6       398G   64G  314G  17% /home
/dev/sda5        32G  573M   30G   2% /var
/dev/sda7       4.2G   18M  4.0G   1% /tmp
tmpfs           787M     0  787M   0% /run/user/1000

这里缺/boot信息

user2@thinkpad:~$ du -sh /boot
45M     /boot

用du -sh可以读出目录当前大小,如:

user2@thinkpad:~$ du -sh /usr
1.5G    /usr

对于追求完美主义者还推荐这篇分享,这个不是必须的,但如果你在完美方面有嗜好或洁癖,推荐看一下。

GitHub 加速计划 / li / linux-dash
6
1
下载
A beautiful web dashboard for Linux
最近提交(Master分支:4 个月前 )
186a802e added ecosystem file for PM2 4 年前
5def40a3 Add host customization support for the NodeJS version 4 年前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐