网站数据一多,最先遭殃的往往是系统盘。眼看着服务器报警说磁盘满了,网站后台卡到进不去,很多人第一反应就是掏钱升级配置。可你登录服务器一查,明明还有一块数据盘空着一大半没用上,这钱花得冤不冤。其实数据盘不像系统盘那样买来就能自动用,它要分区、格式化、挂载到位才行;扩容之后也得在系统里再做一步,让文件系统认下新空间。今天咱就把挂载和扩容这点事从头到尾捋一遍,看完你也能自己动手。

一、先弄明白,系统盘和数据盘到底差在哪
服务器上的磁盘一般分两种。一种是装操作系统的系统盘,Linux、Windows 都住在上面,系统文件、网站程序、数据库都默认往这里写;另一种是后来单独加购的数据盘,专门用来放网站源码、数据库备份、日志这些占地方的大文件。数据盘在云厂商控制台里看得到,但在操作系统里往往还没被认领,好比房子买了、钥匙拿了,可门牌号没挂、水电没通,不办入住就永远住不进去。很多新手就卡在这一步,以为盘买了容量就能自动生效,其实中间还差着好几道手续。
二、为啥系统盘满了,数据盘还一大半空着
先别急着怪系统盘太小,十有八九是下面几种情况。第一种,压根没买数据盘,网站、数据库、日志全堆在系统盘那几十个G里,用个一年半载就见了底。第二种,数据盘买了、控制台里也看得到,但没挂载,操作系统不认这块盘,文件照样全写在系统盘上。第三种,盘挂上了,可网站目录、数据库路径一直没改,新数据还在往系统盘写,数据盘空着也是白空。所以排查的时候别只盯着容量,先看清楚数据到底落在哪块盘上,再决定是挂盘还是迁数据。
三、动手之前,先备份,再看盘,千万别头铁
不管你要挂载新盘,还是要给老盘扩容,老站长都先念叨一句,先备份再动手。扩容虽然大多能在线完成,风险不算太大,可万一碰上断电、误操作,或者命令敲错了盘,损失可比扩容费贵多了。稳妥的做法是,先在云控制台给数据盘打个快照,或者把网站目录、数据库整体打包,拖到别的机器上存一份。备份做完,再登录服务器敲 df -h 看看每块盘用到了多少,敲 lsblk 看看有哪些盘、哪些还没分区挂载,心里有数了再往下走。
四、新买的数据盘,第一步先分区
新数据盘到手,第一件事是分区。先用 lsblk 找盘,新盘一般叫 /dev/vdb 或者 /dev/sdc 这种,容量对得上号就八九不离十。分区工具老手爱用 fdisk,输入 fdisk /dev/vdb 回车进去,按 n 新建分区,后面提示一路回车用默认值,最后按 w 保存退出。整块盘只分一个区的话,出来的设备就是 /dev/vdb1,后面格式化、挂载都靠它。这里必须多嘴一句,分区前瞪大眼睛看准盘符,要是不小心把系统盘当成数据盘给分区了,那就不叫扩容,叫事故。
五、格式化加挂载,再配上开机自动挂载
分区完成,接下来给新分区装上文件系统,这一步叫格式化。Linux 下 ext4 用得最多,一条 mkfs.ext4 /dev/vdb1 就能搞定,等命令跑完,文件系统就有了。接着建一个目录当挂载点,比如 mkdir /data,然后执行 mount /dev/vdb1 /data,把数据盘挂上去。挂好之后敲 df -h 验证,能看到 /data 这一行有容量,就说明挂载成功。还有最关键的一步不能省,把挂载记录写进 /etc/fstab,否则服务器一重启,挂载信息就丢了,网站数据看着像被清空,真能吓出一身冷汗。
六、不想敲命令,就用面板的一键挂载
对不爱碰命令行的朋友,现在主流服务器面板都有现成功能。拿宝塔面板举例,磁盘管理里有一键挂载,它会自动扫描没挂载的盘,把分区、格式化、挂载一口气做完,新手几分钟也能搞定。不过面板只是替你执行了命令,原理还是前面那几步,挂完照样要看一眼 df -h 确认容量对不对。这里再补一句,新盘挂好之后,记得把网站源码、数据库这些真正占地方的数据从系统盘迁过去,路径改到位,系统盘才能真正松快下来,不然就白忙活了。
七、控制台已经扩容,服务器里为啥还是老容量
数据盘用到见底,就该扩容了。现在云厂商基本都支持在线扩容,控制台里点几下,容量就上去了,不用关机,也不用换盘。可不少人扩完回来一查,df -h 显示的还是原来的大小,第一反应就是自己被坑了。其实控制台扩容扩的是云盘这一层,操作系统和文件系统还没收到消息,你得在服务器里再操作一步,让系统重新读取盘的大小。这一步要先分清文件系统类型,敲 df -T 就能看到,ext4 是一种玩法,xfs 是另一种玩法,命令用错了可不会生效。
八、让文件系统认下新空间,就这两类命令
看清楚文件系统类型再动手。ext4 的老牌命令是 resize2fs,直接写分区设备就行,比如 resize2fs /dev/vdb1,它会自动把文件系统扩展成云盘的新大小,几秒钟就完事。xfs 用的命令叫 xfs_growfs,写法不一样,它认的是挂载点,比如 xfs_growfs /data,效果是一样的。跑完再敲一遍 df -h,看到容量变成新数字,这趟才算真正办完。要是服务器上还跑着数据库这类要紧服务,扩容前最好先停掉服务,或者挑凌晨低峰期操作,稳字当头总没错。
捋一遍其实就三件事。没挂载的新盘,分区、格式化、挂载,再写进 /etc/fstab;系统盘快满的,把数据迁到数据盘上,别让系统盘继续背锅;容量真不够了,控制台在线扩容,再用 resize2fs 或者 xfs_growfs 让文件系统认下新空间。全程牢记一条铁律,先备份,再动手,看准盘符再敲命令。数据盘用好了,钱才算花在刀刃上,服务器也能多撑好几年。要是觉得这篇有用,随手收藏转发,下次扩容直接照着做就行。
【版权声明】:本站所有内容均来自网络,若无意侵犯到您的权利,请及时与我们联系将尽快删除相关内容!