万博网页版登陆页派(raspberry pi)把文件系统写在一个img文件中(大小约为2GB)
实际使用中,再用写SD卡工具 Win32 Disk Imager复制到SD卡上,即可用于实际系统中
但是有一个问题,就是假如你的SD卡是8G的,由于img文件是2G,其余的6G是用不了的。
总共2G的大小,系统占了1G多,装多几个软件就装不了了。
这个问题,又让我研究了两小时。 后来发现,要调整主分区的大小。
以下是我在Qemu虚拟机上具体操作的:
首先用qemu带的工具qemu-img.exe 调整img文件的大小,
退出qemu虚拟机,在Windows中使用以下命令,将img文件增加1024MB
qemu-img resize 2012-12-16-wheezy-raspbian.img +1024M
然后,启动qemu虚拟机,进入raspberry pi系统后
首先,查看一下硬盘使用情况,命令如下:
df -h
然后用fdisk命令进行分区操作 (实际操作前最好先熟悉一下fdisk的用法)
命令格式:
fdisk <存储设备名> //如: fdisk /dev/sda
进入fdisk 后,使用单键命令
m 显示Help
p 列出所有分区
d 删除分区
n 新建分区
w 存盘退出
q 不存盘退出
对主设备进行fdisk,命令如下:
sudo fdisk /dev/sda
(如果是在物理机器上操作,命令应是 sudo fdisk /dev/mmcblk0)
按 p 键 列出所有分区,可见有两个或三个分区
第一个分区是 FAT32分区,是引导用的
第二个分区是Linux 主分区
第三个分区是Linux Swap交换文件分区(虚拟机中可能没有)
用笔记下Linux 主分区的Start Sector号 (我的img文件中是122880)
按 d 键 Partition Number (分区号) 选 2, 删除linux主分区(第2个区)
如果有linuxSwap分区,再按d键 Partition Number (分区号) 选 3, 删除linuxSwap分区(第3个区)
按 p 键 列出所有分区,可见只剩第一个分区了
按 n 键,重新创建linux主分区
Partition Type(分类类型) 选 P (Primary)
Partition Number (分区号) 选 2
First Sector(起始Sector) 一定要输入刚才记下来的Start Sector号(我的是122880)
Last Sector (终止Sector)用默认值,直接回车
按 p 键 列出所有分区,可见有两个分区,linux主分区在第2个,起始位置是原位置
按 w 键 存盘退出fdisk
接下来,立即重启,不要做任何其它事情
sudo reboot
重启并登录后,立即用以下命令
sudo resize2fs /dev/sda2
(如果是在物理机器上操作,命令应是sudo resize2fs /dev/mmcblk0p2)
该命令将把第二个分区扩展到新的空间中
查看一下硬盘使用情况,OK了
df -h
上述操作的原理是:
首先删除了linux主分区和Swap分区,重建的主分区起始Sector位置与原主分区一致,再resize2fs,则原主分区数据完全没变,但改变了主分区的大小。
明白了,SD卡有多大,就做多大的img文件,再写到卡中就可以了