转载:http://aofengblog.blog.163.com/blog/static/6317021201101502540117/
Ubuntu系统的硬盘空间不够用了,需要增加新的硬盘扩容。将硬盘分区、格式化、自动挂载配置的整个过程记下来,备忘。
运行环境 | Enviroment
Ubuntu 16.0 【原作者为10.10】
一、硬盘分区 | 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 System
/dev/sdb1 1 26108 209712478+ 5 Extended
在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文件系统类型。
注意:在格式 化完成后系统有如下提示:
This filesystem will be automatically checked every 28 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
表示系统为了保证文件系统的完整,每加载28次或每隔180天就要完整地检查文件系统,可以使用命令 tune2fs -c 或 tune2fs -i 来调整默认值 。
三、挂载硬盘分区 | 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
附录1:fdisk命令详解 | Appendix part 1: fdisk command syntax
fdisk 命令的语法如下:
fdisk [-b sectorsize] device
fdisk -l [-u] [device...]
fdisk -s partition...
fdisk -v
说明:
-b <sectorsize> 指定每个分区的大小。也可以执行fdisk device(如:fdisk /dev/sdb)后,在系统提示时指定。
-l 列出指定的外围设备的分区表状况。如果仅执行 fdisk -l ,系统会列出已知的分区。
-u 搭配"-l"参数列表,会用分区数目取代柱面数目,来表示每个分区的起始地址。
-s <parttion> 将指定的分区的大小输出到标准输出上,单位为区块。
-v 显示fdisk的版本信息。
附录2:mkfs命令详解 | Appendix part 2: mkfs command syntax
mkfs 命令的语法如下:
mkfs [-V] [-t fstype] [fs-options] filesys
说明:
-V 显示简要的使用方法。
-t <fstype> 指定要建立何种文件系统,如:ext3, ext4。
fs 指定建立文件系统时的参数。
-v 显示版本信息与详细的使用方法。
附录3:mount命令详解 | Appendix part 3: mount command syntax
mkfs 命令的语法如下:
mount [-afFnrsvw] [-t vfstype] [-L label] [-o options] device dir
mount [-lhv]
说明:
-a 加载文件/etc/fstab中设置的所有设备。
-f 不实际加载设备。可与-v等参数同时使用以查看mount的执行过程。
-F 需与-a参数同时使用。所有在/etc/fstab中设置的设备会被同时加载,可加快执行速度。
-t vfstype 指定加载的文件系统类型,如:ext3, ext4。
-L label 给挂载点指定一个标签名称。
-l 显示分区的label。
-h 显示帮助信息。
-v 显示mount的版本信息。
device 要挂载的分区或文件。如果device是一个文件,挂载时须加上 -o loop参数。
dir 分区的挂载点。
附录4:fstab配置详解 | Appendix part 4: fstab detail configuration
/etc/fstab 中一共有6列:
file system:指定要挂载的文件系统的设备名称(如:/dev/sdb)。也可以采用UUID,UUID可以通过使用blkid命令来查看(如:blkid /dev/sdb)指定设备的UUID号。
mount point:挂载点。就是自己手动创建一个目录,然后把分区挂载到这个目录下。
type:用来指定文件系统的类型。如:ext3, ext4, ntfs等。
option dump:0表示不备份;1表示要将整个<file system>中的内容备份。此处建议设置为0。
pass:用来指定fsck如何来检查硬盘。0表示不检查;挂载点为分区/(根分区)必须设置为1,其他的挂载点不能设置为1;如果有挂载ass设置成大于1的值,则在检查完根分区后,然后按pass的值从小到大依次检查,相同数值的同时检查。如:/home 和 /boot 的pass 设置成2,/devdata 的pass 设置成3,则系统在检查完根分区,接着同时检查/boot和/home,再检查/devdata。
个人实践总结
(1)在Ubuntu系统中,我设置自动挂在分区是PASS设置为0,重启时才正常,其他值都会导致启动不了。
本文转自careluck51CTO博客,原文链接: http://blog.51cto.com/brave8898/1969453,如需转载请自行联系原作者