Ubuntu系统挂载磁盘并配置开机自动挂载

今天买了个服务器然后挂载了一个500G的磁盘,但是登录进去后发看不到,就是下面这样的

只能看到100G的系统盘

bash 复制代码
root@ecm-74de:/usr/local# df -h
Filesystem      Size  Used Avail Use% Mounted on
tmpfs           3.1G  1.1M  3.1G   1% /run
/dev/vda2       100G  8.0G   93G   8% /
tmpfs            16G     0   16G   0% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           3.1G   12K  3.1G   1% /run/user/0

用 lsblk 命令查一下看是否存在500G的磁盘

bash 复制代码
root@ecm-74de:/usr/local# lsblk
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
sr0     11:0    1  378K  0 rom  
vda    253:0    0  100G  0 disk 
├─vda1 253:1    0    1M  0 part 
└─vda2 253:2    0  100G  0 part /
vdb    253:16   0  500G  0 disk 

可以看到是有一个500G的磁盘,df 看不到的原因是还没有分区挂载,所以我们按照下面的命令操作一下 (注意只需要输入 ← 前面的就行啊,Enter 是指的 Enter 键)

bash 复制代码
sudo fdisk /dev/vdb
n   ← 新建分区
p   ← 主分区
1   ← 分区号,默认直接回车也行
[Enter] ← 起始扇区,直接回车
[Enter] ← 结束扇区,直接回车(使用整个硬盘)
w   ← 写入分区表并退出

上面分区创建好了,接下来我们格式化一下这个分区(和 win 系统一样不格式化硬盘是没办法用的)

sudo mkfs.ext4 /dev/vdb1 是对 /dev/vdb1 分区执行:

1.清空内容(无论之前有啥都抹掉)

2.安装 ext4 文件系统结构

3.准备好让 Linux 能挂载它、用它

bash 复制代码
sudo mkfs.ext4 /dev/vdb1

接着我们把这个磁盘挂载上,我查了一下发现我的根目录下面没有 /data 目录,所以创建一个 /data目录挂上

bash 复制代码
sudo mkdir -p /data
sudo mount /dev/vdb1 /data

然后我们再 df -h 看一下目录,可以看到这个500G的磁盘了

bash 复制代码
root@ecm-74de:/usr/local# df -h
Filesystem      Size  Used Avail Use% Mounted on
tmpfs           3.1G  1.1M  3.1G   1% /run
/dev/vda2       100G  8.0G   93G   8% /
tmpfs            16G     0   16G   0% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           3.1G   12K  3.1G   1% /run/user/0
/dev/vdb1       492G   28K  467G   1% /data

注意,到这里还没有结束,虽然我们刚才挂载了磁盘,但是这个时候只要你重启服务器,挂载就没了,所以我们还需要设置开机自动挂载

sudo blkid /dev/vdb1 先去查 UUID

bash 复制代码
root@ecm-74de:/usr/local# sudo blkid /dev/vdb1
/dev/vdb1: UUID="388fd84ed-1fd0-4851-9e7f2-985egf54deaad" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="e68cdbc1-01"

然后编辑 fstab:

bash 复制代码
sudo vi /etc/fstab

在里面加上一行

bash 复制代码
UUID=388fd84ed-1fd0-4851-9e7f2-985egf54deaad /data ext4 defaults 0 2 /data ext4 defaults 0 2
bash 复制代码
# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
# / was on /dev/vda2 during curtin installation
/dev/disk/by-uuid/3a5234311d-f14a-457f-bd484-5044832447ebc / xfs defaults 0 1
/swap.img       none    swap    sw      0       0
UUID=388fd84ed-1fd0-4851-9e7f2-985egf54deaad /data ext4 defaults 0 2

保存确认是否正常

bash 复制代码
sudo mount -a

如果没有报错就说明是正常的

最后,我们挂载磁盘的目的是为了防止系统盘不被撑爆,所以后面安装服务的时候就需要合理分配目录了,比如要装 MySQL,主服务我们还是可以放在系统盘,但是数据目录我们就可以放到挂载的 /data 目录下了

相关推荐
chlk12315 小时前
Linux文件权限完全图解:读懂 ls -l 和 chmod 755 背后的秘密
linux·操作系统
舒一笑16 小时前
Ubuntu系统安装CodeX出现问题
linux·后端
改一下配置文件16 小时前
Ubuntu24.04安装NVIDIA驱动完整指南(含Secure Boot解决方案)
linux
碳基沙盒17 小时前
OpenClaw 多 Agent 配置实战指南
运维
深紫色的三北六号1 天前
Linux 服务器磁盘扩容与目录迁移:rsync + bind mount 实现服务无感迁移(无需修改配置)
linux·扩容·服务迁移
SudosuBash1 天前
[CS:APP 3e] 关于对 第 12 章 读/写者的一点思考和题解 (作业 12.19,12.20,12.21)
linux·并发·操作系统(os)
哈基咪怎么可能是AI2 天前
为什么我就想要「线性历史 + Signed Commits」GitHub 却把我当猴耍 🤬🎙️
linux·github
十日十行2 天前
Linux和window共享文件夹
linux
木心月转码ing3 天前
WSL+Cpp开发环境配置
linux
蝎子莱莱爱打怪4 天前
Centos7中一键安装K8s集群以及Rancher安装记录
运维·后端·kubernetes