现在,当您在SD卡上刷新新的Jessie映像(发布于2016-05-10)并首次启动时,它将自动在整个SD卡上扩展文件系统。我想停止该脚本。我想要这个的原因是因为从SD卡备份图像时,它消耗了16 GB的磁盘空间,我想节省该空间。我正在使用16 GB SD卡。
现在,当您在SD卡上刷新新的Jessie映像(发布于2016-05-10)并首次启动时,它将自动在整个SD卡上扩展文件系统。我想停止该脚本。我想要这个的原因是因为从SD卡备份图像时,它消耗了16 GB的磁盘空间,我想节省该空间。我正在使用16 GB SD卡。
Answers:
看起来这将是最新更新的一部分;桌面版和精简版:
https://www.raspberrypi.org/blog/another-update-raspbian/
刷新新的Raspbian映像时,文件系统将在首次启动时自动扩展为使用卡上的所有空间。
在Ubuntu上,您可以编辑映像以停止自动文件系统扩展。
这是使用2016-05-10-raspbian-jessie-lite.img的示例。
尝试这个:
fdisk -lu ./2016-05-10-raspbian-jessie-lite.img
您将获得以下信息:
Device Boot Start End Blocks Id System
2016-05-10-raspbian-jessie-lite.img1 8192 137215 64512 c W95 FAT32 (LBA)
2016-05-10-raspbian-jessie-lite.img2 137216 2707455 1285120 83 Linux
因此对于引导部分,您的偏移量是(Start * 512)= 8192 * 512 = 4194304
对于Raspbian文件系统,您的偏移量为(开始* 512)= 137216 * 512 = 70254592
mkdir boot
sudo mount -t vfat -o loop,offset=4194304 2016-05-10-raspbian-jessie-lite.img boot
如果要查看/编辑Raspbian文件系统。虽然不需要。
mkdir test
sudo mount -t ext4 -o loop,offset=70254592 2016-05-10-raspbian-jessie-lite.img test
然后,您需要修改./boot/cmdline.txt文件。
sudo gedit ./boot/cmdline.txt
从:
dwc_otg.lpm_enable = 0 console = serial0,115200 console = tty1 root = / dev / mmcblk0p2 rootfstype = ext4 lift = deadline fsck.repair = yes rootwait quiet init = / usr / lib / raspi-config / init_resize.sh
至:
dwc_otg.lpm_enable = 0 console = serial0,115200 console = tty1 root = / dev / mmcblk0p2 rootfstype = ext4电梯=最后期限fsck.repair =是rootroot安静
sudo umount ./boot
如果您挂载了Raspbian文件系统:
sudo umount ./test
现在,将新映像刷新到SD卡。
在您的Pi上启动后,它不会自动扩展。
或者,您可以将原始图像刷新到SD卡上。
在将其插入Raspberry Pi之前。
编辑文件: /boot/cmdline.txt
删除以下文本: init=/usr/lib/raspi-config/init_resize.sh
这不再适用于Stretch发行版(没有要删除的init参数)。
pishrink.sh(从github下载脚本)脚本接受-s标志,该标志将防止在下次重新引导时扩展。您需要Linux机器或虚拟机来运行脚本。该脚本通过重写/etc/rc.local来工作,以扩展文件系统(默认)或保持不变(如果提供了-s标志)。
在Windows 10笔记本电脑上,您可以使用win32diskimager从SD卡获取映像,而我使用了来自osboxes.org的Lubuntu映像在VirtualBox下运行。