问题描述:

  Ubuntu 16.04系统,系统盘为240G固态硬盘,还有1T机械硬盘,现要再添加一个4T硬盘。

问题分析:

  使用GTP对硬盘进行分区并挂载硬盘的方法,一般而言服务器上挂载的硬盘都是比较大的,传统的对硬盘进行分区需要在终端敲sudo fdisk进行操作

  但是,当挂载的硬盘的容量大于2T的时候,是无法通过sudo fdisk进行分区的,这个时候必须要进行GPT进行分区,并且设置为开机启动。

    fdisk 分区,硬盘超过2T,只能生成2T分区。

      $ sudo fdisk /dev/sda

      Device does not contain a recognized partition table.
      The size of this disk is 3.7 TiB (4000787030016 bytes). DOS partition table format can not be used on drives for volumes larger than 2199023255040 bytes for 512-byte sectors. Use GUID partition table format (GPT).

      Created a new DOS disklabel with disk identifier 0x721e33d2.

解决方法:

  1、使用GTP对硬盘进行分区 

    终端输入 sudo fdisk -l  查看机器上都插了哪些安装盘,看到/dev/sda,并且没有进行分区且大小为3.7T,是要挂载的硬盘。

$ sudo fdisk -l
Disk /dev/nvme0n1: 238.5 GiB, 256060514304 bytes, 500118192 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xb091dbe9

Device Boot Start End Sectors Size Id Type
/dev/nvme0n1p1 * 2048 498116607 498114560 237.5G 83 Linux
/dev/nvme0n1p2 498118654 500117503 1998850 976M 5 Extended
/dev/nvme0n1p5 498118656 500117503 1998848 976M 82 Linux swap / Solaris

Disk /dev/sda: 3.7 TiB, 4000787030016 bytes, 7814037168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes

Disk /dev/sdb: 1.8 TiB, 2000398934016 bytes, 3907029168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: dos
Disk identifier: 0x2ef87b1f

Device Boot Start End Sectors Size Id Type
/dev/sdb1 * 2048 1126399 1124352 549M 7 HPFS/NTFS/exFAT
/dev/sdb2 1128446 3907028991 3905900546 1.8T 5 Extended
/dev/sdb5 1128448 3874134015 3873005568 1.8T 83 Linux
/dev/sdb6 3874136064 3907028991 32892928 15.7G 82 Linux swap / Solaris

Partition 2 does not start on physical sector boundary.

    然后运行如下命令: 

      sudo parted /dev/sda #进入parted

      mklabel gpt #将磁盘设置为gpt格式,

      mkpart logical 0 -1 #将磁盘所有的容量设置为GPT格式

      print #查看分区结果

      这个时候应该是默认进行分了一个/dev/sda1这个分区

      然后退出parted,在终端输入 sudo mkfs.ext4 -F /dev/sda1 

         将刚刚分出来的sda1格式化为ext4的格式,然后就可以设置开机自动挂载了。

  2、设置开机自动挂载

    查看硬盘/dev/sda1 对应的UUID

      sudo blkid   

    注意: 唯一的sda1的UUID号。

      再事先准备好一个地方来做挂载点,比如我这里是/DATA4T然后再用命令打开配置文件:

    终端输入  sudo vim /etc/fstab

    然后在文件末尾添加

      UUID=7941f2c5-d582-4414-85c5-6d199a701795 /DATA4T       ext4    defaults 0       0

    最后重启电脑。

    由于/DATA4T 是在根目录下,为便于操作,需将其用户属性从 root改成 普通用户。

附录:

  常用相关命令:

  1. lsblk -f 可以查看硬盘UUID
  2. fdisk -l 查看硬盘
  3. mkfs.ext4 /dev/vdb 格式化硬盘
  4. blkid 查看磁盘的UUID

参考:

  在Ubuntu 16.04下使用GPT分区并挂载硬盘(主要) 

Ubuntu16.04 挂载硬盘(简单实用)(挂载参考)

ubuntu16.04 挂载硬盘  

Ubuntu环境下挂载新硬盘

  sudo fdisk /dev/sdb分区 操作详解
一、硬盘分区 | Hard disk add new partition

1、显示硬盘及所属分区情况。在终端窗口中输入如下命令:

sudo fdisk -l
 

显示当前的硬盘及所属分区的情况。如下图所示:
系统提示:DIsk /dev/sdb doesn't contain a valid partition table。

2、对硬盘进行分区。在终端窗口中输入如下命令:

sudo fdisk /dev/sdb
 

如下图所示:
在Command (m for help)提示符后面输入m显示一个帮助菜单。

在Command (m for help)提示符后面输入n,执行 add a new partition 指令给硬盘增加一个新分区。
 出现Command action时,输入e,指定分区为扩展分区(extended)。
 出现Partition number(1-4)时,输入1表示只分一个区。
 后续指定起启柱面(cylinder)号完成分区。

在Command (m for help)提示符后面输入p,显示分区表。
系统提示如下:
Device Boot                 Start                End                   Blocks          Id             System
/dev/sdb1                           1            26108           209712478+           5          Extended

在Command (m for help)提示符后面输入w,保存分区表。
系统提示:The partition table has been altered!

在终端窗口中输入如下命令:

sudo fdisk -l
 

如下图所示:
系统已经识别了硬盘 /dev/sdb 的分区。

二、硬盘格式化 | Format hard disk

1、显示硬盘及所属分区情况。在终端窗口中输入如下命令:

sudo mkfs -t ext4 /dev/sdb
 

说明:
-t ext4 表示将分区格式化成ext4文件系统类型。

 

  

最新文章

  1. 在thinkPHP3.2.3框架下实现手机和PC端浏览器的切换
  2. ngx_http_proxy_module模块.md
  3. PHP进程通信基础——信号量+共享内存通信
  4. ActiveMQ初体验(转)
  5. No Javascript on this page
  6. AOP——代理技术
  7. cocos2dx 3.x(精灵的碰撞检测,点击移动与拖动精灵)
  8. 图解Javascript上下文与作用域
  9. Spark及其应用场景初探
  10. pywinauto如何获取gridwindow控件的屏幕位置
  11. N次剩余
  12. Saiku图表导出时中文显示问题的解决方法
  13. Delphi代码中嵌入ASM代码(简单明了)
  14. self-question
  15. java集合系列——List集合之ArrayList介绍(二)
  16. 题目1010:A + B
  17. ORACLE 数据库选择性导出表中数据&导入已存在表数据
  18. kubernetes的安装
  19. spring boot 的maven设置阿里云仓库
  20. 重构JS代码 - 让JS代码平面化

热门文章

  1. mapper映射文件配置之insert、update、delete(转载)
  2. linux 最大文件打开数
  3. springboot 配置quart多数据源
  4. 深入理解vue 修饰符sync
  5. JAVA笔记24-IO流(2)-节点流举例
  6. 【leetcode】1172. Dinner Plate Stacks
  7. 各种注意事项(还有c++的一些操作)
  8. JS中for循环嵌套
  9. Python如何快速初始化一个二维数组
  10. clojure的delay future promise