1、把系统写到u盘和sd卡上各一份。并从SD卡启动(避免更改分区时冲突)
2、从SD卡启动后,可以用Raspberry给SD卡扩容(Not necessary)
3、sudo fdisk /dev/sda 键入m查看帮助
键入p 显示当前分区表
如下:
Device Boot StartEnd Blocks Id System
/dev/sda18192 122879 57344 c W95 FAT32 (LBA)1
/dev/sda2***** ***** 30248960 83 Linux
键入d 删除分区 ,选择2 删除sda2分区
键入n新建分区,键入p选择主分区,键入2选择分区号2(即sda2)。
系统会让你选择起始地址和终止地址,分别选择最大的和最小的。
键入w保存分区表
从SD卡重启系统。用sudo mkdir /mnt/udisk &&sudo mount /dev/sda2 /mnt/udisk 将U盘挂载
键入 df -h查看是否扩容。
这样你的树莓派u盘可能已经扩容成功了。没有成功就继续进行下一步:
sudo e2fsck -f /dev/sda2
sudo resize2fs /dev/sda2
这两步似乎可以修复分区中的错误,在我的计算机上显示如下:
pi@raspberrypi ~ $ sudo e2fsck -f /dev/sda2
e2fsck 1.42.5 (29-Jul-)
/dev/sda2: recovering journal
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
Free blocks count wrong (128847, counted=128849).
Fix<y>? yes
Free inodes count wrong (109961, counted=109962).
Fix<y>? yes
/dev/sda2: ***** FILE SYSTEM WAS MODIFIED *****
/dev/sda2: 86262/196224 files (0.1% non-contiguous), 655791/784640 blocks
pi@raspberrypi ~ $
pi@raspberrypi ~ $ sudo resize2fs /dev/sda2
resize2fs 1.42.5 (29-Jul-)
Resizing the filesystem on /dev/sda2 to 7562240 (4k) blocks.
The filesystem on /dev/sda2 is now 7562240 blocks long.
4、sudo vi /boot/cmdline.txt
把root改成:root=/dev/sda2
重启之后成功运行,查看空间:
pi@raspberrypi ~ $ df -h
Filesystem Size Used Avail Use% Mounted on
rootfs29G 2.4G 25G 9% /
/dev/root 29G 2.4G 25G 9% /
devtmpfs 214M 0 214M 0% /dev
tmpfs44M 240K 44M 1% /run
tmpfs5.0M 0 5.0M 0% /run/lock
tmpfs88M 0 88M 0% /run/shm
/dev/mmcblk0p1 56M 19M 37M 34% /boot
/dev/sda2 29G 2.4G 25G 9% /mnt/u
参考资料:
/RPi_Resize_Flash_Partitions