今天买的4T机械硬盘到了,准备给我的服务器加装上,用来作为Nextcloud的存储硬盘。把硬盘安装好后就迫不及待的进行挂载,挂载的操作倒是挺顺利的,但是无论怎么操作Ubuntu系统识别到的大小居然都是2T,最后没办法,又将硬盘挂载到我的Windows电脑上,结果你猜怎么着... Windows电脑识别到的居然是4T。那现在已经确定不是硬件问题了,绝对是我在Ubuntu上挂载出现问题了。
上面已经介绍了我在Ubuntu上执行挂载操作,一切步骤和我之前挂载的2T硬盘时候一模一样,结果没想到识别到的大小也是一样的!
为了搞清楚到底发生了什么,我又对硬盘重新进行了初始化和分区,结果还是一样的,系统识别到的硬盘大小还是2T。于是我在百度上找到了A5互联发表的一篇文章,说可能是使用了老的主引导记录的不能识别2T及以上的硬盘,要用新的GPT分区方案来实现超2T的硬盘,于是我去搜索了一下MBR分区方案和GPT分区方案的区别。
MBR和GPT是两种不同的分区方案,下面我给大家整理一下两个分区方式的区别,刚好来一块学习学习:
容量限制:
分区数量:
兼容性:
其他区别:
MBR分区方案适用于较小的硬盘和旧版计算机,最大支持容量约为2TB。 GPT分区方案适用于大容量硬盘和现代计算机,允许创建超过2TB的单个分区。选择分区方案应根据硬件需求和操作系统兼容性来决定。
这么一看4T硬盘只能识别到2T就不难理解了,这也就是为什么我之前安装2T的时候没遇到这个问题,结果按照相同的步骤就出现了不能识别的问题。
知道了是因为分区方式造成的,那么现在就好解决了,将硬盘的分区方式改成GPT方式应该就行了,说干就干,下面给大家介绍一下如何将硬盘分区方式由原来的MBR方案改成GPT方式。
在开始更改分区之前可以使用下面的命令来查看一下你的系统是不是支持GPT分区
sudo parted -l
我的Ubuntu系统打印如下:
Model: ATA KINGSTON SA400S3 (scsi)
Disk /dev/sda: 240GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 1049kB 538MB 537MB fat32 EFI System Partition boot, esp
2 538MB 240GB 240GB ext4
可以看到打印中有 Partition Table: gpt
的字样,这也就说明我们系统的分区表类型确实是GPT的,那就放心了,看来系统是支持的。下面就开始实际操作
1、首先将硬盘插到服务器上,然后运行下面的命令查看硬盘的设备名称
sudo fdisk -l
我这里识别到的新硬盘是/dev/sdb
2、使用 parted
对硬盘进行格式化
sudo parted /dev/sdb
依次执行以下操作:
键入 mklabel gpt
回车来创建 GPT 分区表。
键入 mkpart primary ext4 0% 100%
回车来创建一个占据整个硬盘的主分区,并使用 ext4
文件系统。
键入 quit
回车退出 parted 界面。
3、创建文件系统
sudo mkfs.ext4 /dev/sdb
4、创建挂载点并挂载硬盘
sudo mkdir /mnt/[挂载点名称]
sudo mount /dev/[新分区设备名称] /mnt/[挂载点名称]
5、添加自动挂载
上面的挂载方式在关机后就会恢复,下面通过改 /etc/fstab
文件的方式实现自动挂载
sudo nano /etc/fstab
在文件末尾添加以下行
/dev/[新分区设备名称] /mnt/[挂载点名称] ext4 defaults 0 2
保存并退出编辑器
通过执行完上面的挂载操作,我的4T硬盘终于被识别到了!!!
通过今天的折腾也学到了不少知识,至少知道了MBR和GPT分区的区别,之前重来没关注过MBR分区方式居然最大只能支持2T的硬盘。除了这些关于硬盘的挂载其实还有很多的知识点可以讲解,比如你知道如果硬盘之前在Linux的A目录挂载,里面存储的也有东西,那我现在想要把硬盘在不进行初始化的情况下挂载到B目录,你觉得挂载后你进入目录B看到的是空文件呢还是挂载之前目录A下的文件呢?
如果识别到的是B目录以及空文件夹,那A目录里原本储存的文件去哪里了呢?如果我还想要之前的文件该怎么操作呢?如果我想将一个硬盘A换成容量更大的硬盘B,并且保留原来的文件还在原来的位置该如何操作?(其实就是更换新硬盘的基本操作)
上面的问题大家可以百度一下,应该比较好理解,这些都是折腾电脑的基操,毕竟买服务器就是用来折腾的!
推荐阅读
01 |加入嵌入式交流群 |
02 |嵌入式资源获取 |
03 |STM32中断优先级详解 |
04 |STM32下载程序新思路--使用串口下载程序 |