2017-08-02 114 views
1

我想在将它放到闪存之前去掉我的Yocto Linux。不需要的软件,手册页,POCO示例代码和其他文档只是浪费资源,特别是仅具有128MB闪存的i.MX28 EVK。如何剥离我的Yocto Linux?

的local.conf文件看起来如下:

$ gedit conf/local.conf & 
... 
IMAGE_INSTALL_append = " poco nginx canutils vsftpd curl fcgi spawn-fcgi net-snmp util-linux ubiattach-klibc ubimkvol-klibc ubiformat-klibc minicom net-tools zeroconf avahi-autoipd mtd-utils u-boot-fw-utils ethtool" 
... 

我BitBake的形象 “核心 - 图像 - 基地”。

我想知道,有没有办法可以删除所有不需要的文件?

有人可以帮我解雇我的Yocto Linux吗?

+0

你需要ngix?你打算提供网页吗?他们将储存在哪里?在同一个128MB?如果没有运行ngix,你真的需要hte fcgi和vsftpd吗?这个问题可能更适合https://www.superuser.com – Tschallacka

+0

是的,我需要所有这些。目前一切正常。 – BachehKaraji

回答

2

当你看着几招core-image-base和包括core-image类(core-image-base.bb & core-image.bbclass),你会发现只有packagegroup-core-bootpackagegroup-base-extended中的图像。

对于那些描述:

默认情况下,我们安装packagegroup核心引导和packagegroup基扩展包; 这给了我们工作(仅限控制台)rootfs。

这让我们假设它不应该被删除,所以你不能删除'Yocto-way'上的许多软件/文件。你可以做的是编写补丁,手动删除文件或看看如何build a tiny system with Yocto (Link to Development Manual)

您可以通过在local.conf改变DISTRO变量激活此分布:

DISTRO = "poky-tiny" 
0

这是一个最小的控制台形象的例子: 食谱核心/图片/ core-image-small.bb

DESCRIPTION = "Minimal console image." 
IMAGE_INSTALL= "\ 
base-files \ 
base-passwd \ 
busybox \ 
sysvinit \ 
initscripts \ 
${ROOTFS_PKGMANAGE_BOOTSTRAP} \ 
${CORE_IMAGE_EXTRA_INSTALL} \ 
" 
IMAGE_LINGUAS = " " 
LICENSE = "MIT" 
inherit core-image 
IMAGE_ROOTFS_SIZE ?= "8192" 

这个配方产生一个约6.4MB的图像。如果您通过将DISTRO = "poky-tiny"添加到conf/local.conf来使用poky-tiny,则图像大约为4MB。

要构建这个,你将需要添加 INSANCE_SKIP_glibc-locale = "installed-vs-shipped"

你也可以使用PACKAGE_CLASSES ?= package_ipk包管理器,因为它是最轻的,并从生产的根文件系统完全移除package-management功能。

如果您选择有packagegroup-core-boot在你的形象,你可以使用了BusyBox的MDEV设备管理器代替的udev通过在conf/local.conf

VIRTUAL-RUNTIME_dev_manager = "mdev" 

如果您正在运行在块设备上的根文件系统,使用ext2的规定,而不是不带日志的ext3或ext4

通过在bbappend中提供自己的配置文件,仅配置基本小程序来配置BusyBox。

检查glibc配置,可通过配置变量DISTRO_FEATURES_LIBC更改该配置。您可以在poky-tiny分配中找到示例。

考虑切换到一个比较笨的C库。使用uclibcmusl而不是标准的glibc http://www.etalabs.net/compare_libcs.html

使用MUSL的,在local.conf中

TCLIBC = "musl" 

添加meta-muslconf/bblayers.conf

+0

谢谢你的指导.. – BachehKaraji