Ubuntu系统的硬盘空间不够用了,需要增加新的硬盘扩容。将硬盘分区、格式化、自动挂载配置的整个过程记下来,备忘。 

 一、硬盘分区 | Hard disk add new partition
 
1、显示硬盘及所属分区情况。在终端窗口中输入如下命令: 

sudo fdisk -lu
 
显示当前的硬盘及所属分区的情况。如下图所示: 

系统提示: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             

/dev/sdb1                           1            26108           209712478+           5          

   
 在Command (m for help)提示符后面输入w,保存分区表。 

系统提示:The partition table has been altered! 

   
 
在终端窗口中输入如下命令:  
sudo fdisk -lu
  如下图所示:  
系统已经识别了硬盘 /dev/sdb 的分区。  
    
  
 二、硬盘格式化 | Format hard disk
  1、显示硬盘及所属分区情况。在终端窗口中输入如下命令  :  
sudo mkfs -t ext4 /dev/sdb
  说明:  
-t ext4 表示将分区格式化成ext4文件系统类型。  
    
        
 三、挂载硬盘分区 | Mount hard disk partition
  1、显示硬盘挂载情况。在终端窗口中输入如下命令  :  
sudo df -l
  新硬盘分区没有挂载,无法进入和查看。  

在终端窗口中输入如下命令  :  
sudo mount -t ext4 /dev/sdb /devdata
  说明:  
指定硬盘分区文件系统类型为ext4 ,同时将 /dev/sdb 分区挂载到目录 /devdata。  

再次在终端窗口中输入如下命令  :  
sudo df -l
  
新硬盘分区已经挂载,如下图最下面的红色方框内容。  
    
  2、配置硬盘在系统启动自动挂载。在文件 /etc/fstab 中加入如下配置  :  
# /devdata was on /dev/sdb
 UUID=37eaa526-5d96-4237-8468-603df5216ce9     /devdata     ext4     defaults     0     3      
   
    
   
==========================  /etc/fstab 配置 注意!!==========================
   
我    的设置与原作者不同,用上面无法成功自动挂载的话,请尝试下面的配置:
        
    

     其中,“/Projects”与“/AMAX”都是挂载点,可以根据需要自定义。 
   
    

     上面是ext4格式硬盘为例子。如果是ntfs,则“ext4”要修改为“auto”,“defaults”要修改为“nosuid,nodev,nofail”。 
   
    

     在Ubuntu,可以使用更直观的方式:用系统自带的Disks或者Disk Utility界面化工具。 
   
   
=========================================================================
      
 fdisk command syntax
  fdisk 命令的语法如下:  
fdisk [-b sectorsize] device     
 fdisk -l [-u] [device...]
 fdisk -s partition...
 fdisk -v  说明:  
•  
•   
•  
•      
•  

 mkfs command syntax
  mkfs 命令的语法如下:  
mkfs [-V] [-t fstype] [fs-options] filesys
  说明:  
•  
•  
•  
•  

 mount command syntax
  mkfs 命令的语法如下:  
mount [-afFnrsvw] [-t vfstype] [-L label]  [-o options] device dir
 mount [-lhv]  说明:  
•  
•    
•   
•  
•     
•    
•   
•    显示mount的版本信息。
•      
•            

 fstab detail configuration
  /etc/fstab 中一共有6列:  
•  /dev/sdb)指定设备的UUID号。
•  mount point:挂载点。就是自己手动创建一个目录,然后把分区挂载到这个目录下。
•  type:用来指定文件系统的类型。如:ext3, ext4, ntfs等。
•  option dump:0表示不备份;1表示要将整个中的内容备份。此处建议设置为0。
•  pass:用来指定fsck如何来检查硬盘。0表示不检查;挂载点为分区/(根分区)必须设置为1,其他的挂载点不能设置为1;如果有挂载ass设置成大于1的值,则在检查完根分区后,然后按pass的值从小到大依次检查,相同数值的同时检查。如:/home 和 /boot 的pass 设置成2,/devdata 的pass 设置成3,则系统在检查完根分区,接着同时检查/boot和/home,再检查/devdata。