前言:在安装好Go环境之后万事俱备只欠东风的情况下,我充满了喜悦,正准备go get -u github.com/gogits/gogs,然而fatal: write error: No space left on device说我的磁盘不足了哇,说多了都是泪,想了想会不会是SD卡还有一部分剩余的容量没有使用呢,果然不出我所料。
首先来查看一下系统的磁盘情况
代码语言:javascript复制df -h
Paste_Image.png
你会发现:树莓派只识别出2.9G的容量,虽然如此,但是还是由办法解决的。
解决办法:
代码语言:javascript复制pi@raspberrypi ~ $ df -h #查看当前磁盘大小,总大小只有2.9GB
Filesystem Size Used Avail Use% Mounted on
rootfs 2.9G 2.8G 15M 100% /
/dev/root 2.9G 2.8G 15M 100% /
devtmpfs 214M 0 214M 0% /dev
tmpfs 44M 244K 44M 1% /run
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 88M 0 88M 0% /run/shm
/dev/mmcblk0p1 56M 19M 37M 34% /boot
tmpfs 88M 0 88M 0% /tmp
pi@raspberrypi ~ $ cat /sys/block/mmcblk0/mmcblk0p2/start # 查看第二分区的起始地址,后面会用到
122880
pi@raspberrypi ~ $ sudo fdisk /dev/mmcblk0 #使用fdisk操作磁盘
Command (m for help): d #d,删除分区
Partition number (1-4): 2 # 2,删除第二分区
Command (m for help): n #创建一个新分区
Partition type:
p primary (1 primary, 0 extended, 3 free)
e extended
Select (default p): p #创建主分区
Partition number (1-4, default 2): 2 #分区2
First sector (2048-7744511, default 2048): 122880 #输入第一次得到的第二分区起始扇区
Last sector, sectors or size{K,M,G} (122880-7744511, default 7744511): #最后一个sector,默认即可Enter
Using default value 7744511
Command (m for help): w #将上面的操作写入分区表
The partition table has been altered!
Calling ioctl() to re-read partition table.
WARNING: Re-reading the partition table failed with error 16: Device or resource busy.
The kernel still uses the old table. The new table will be used at
the next reboot or after you run partprobe(8) or kpartx(8)
Syncing disks.
pi@raspberrypi ~ $ sudo reboot #设置完成需要重启,sudo reboot
Paste_Image.png
重启完成之后,此时查询也还是没有变化的,还需要如下命令
代码语言:javascript复制sudo resize2fs /dev/mmcblk0p2
这时你再来查询树莓派的系统磁盘的容量就扩展啦,看图!
Paste_Image.png
这样就可以解决树莓派只识别出SD卡2.9G的容量的问题!