Linux 分区方案 以Debian为例

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

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

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

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

对初学者来说是蛮难的,要马上搞清楚是不容易的事,最大的困难是一发行版很多,文件目录不同;二是应用场景各不相同;所以就增加了理解的难度。

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

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

下面的例子是用一台Thinkpad笔记本在局域网做共享盘为主,同时还有一个内网的web server和数据库,硬盘大小为500G,安装时用手动分区,只使用标准目录,没有自建主目录。

挂载目录 建议分区大小 说明
/boot 100 - 150 MB 目前实际大小为45MB,分配了476MB,有点多了。
/ 15 - 20 GB 不包括 /var,实际分配了19G。
/var 10 - 40 GB 这个实际要看用途,数据库数据,网站程序和图片、视频,备份,日志等都在这里;实际分配了33G。
/home 剩余空间 因为计划把共享目录Samba Server放在这个下面,所以要把剩余的405GB都分配给home了,如果是1T的硬盘就会是900GB
/tmp > 500MB 实际分配4.3G
/swap 4 - 8 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
上一篇:Java学习笔记:继承练习


下一篇:portainer 使用备注