0x00 前言

最近在折腾树莓派,向sd卡写入镜像以后,linux系统根目录只有1.4G,sd卡大小为16G。本篇文章使用fdisk与resize2fs进行分区大小调整。

0x01 准备工作

使用ssh连接,停止数据库等服务,获得root权限。

0x02 开始操作

找到磁盘文件,通常是/dev/sda0

fdisk /dev/sda0   //选择磁盘
>p    //查看分区表,记下要扩容分区的start数据
>d    //删除分区
>3    //删除三号分区(视情况而定,删除要扩容的分区
>n    //新建分区
>p    //建立主分区
>3    //建立三号分区
>输入刚才记录的start数据
>     //直接回车使用默认值,默认全部分配
>wq   //保存并退出


df -h //看到分区大小依然没变
resize2fs /dev/sda0p3  //改变分区大小
df -h //分区成功扩容

0x03 方法的原理与局限性

原理是:不改变扇区起始位置,只修改分区的扇区范围,原本扇区内的数据不会被修改。

  1. 这个方法只适合扩展扇区位置最高的分区,而且只能在原来的分区后面追加新空间。
  2. 如果分区的扇区夹在其他几个分区之间,这个方法不适用。