busybox
el favorito de los sistemas Embedded Linux.
BusyBox combina versiones diminutas de muchas utilidades comunes de UNIX en un solo ejecutable pequeño. Proporciona reemplazos para la mayoría de las utilidades que normalmente encuentra en GNU fileutils, shellutils, etc. Las utilidades en BusyBox generalmente tienen menos opciones que sus primos GNU con todas las funciones; sin embargo, las opciones que se incluyen brindan la funcionalidad esperada y se comportan de manera muy similar a sus contrapartes de GNU. BusyBox proporciona un entorno bastante completo para cualquier sistema pequeño o integrado.
BusyBox se ha escrito teniendo en cuenta la optimización del tamaño y los recursos limitados. También es extremadamente modular, por lo que puede incluir o excluir fácilmente comandos (o funciones) en el momento de la compilación. Esto facilita la personalización de sus sistemas integrados. Para crear un sistema que funcione, simplemente agregue algunos nodos de dispositivos en /dev, algunos archivos de configuración en /etc y un kernel de Linux.
Prácticamente puede hacer que cualquier nombre de coreutil sea un enlace al binario de busybox y funcionará. también puedes ejecutar busybox <command>
y funcionará Ejemplo:si está en Gentoo y no ha instalado su vi
sin embargo, puede ejecutar busybox vi filename
y estarás en vi. es
-
Arch Linux - comunidad/busybox
-
Gentoo Linux - sys-apps/busybox
-
Alpine Linux:basado en BusyBox y uClibc, aquí hay una descripción general
Este es un tema más antiguo, me doy cuenta. Sin embargo, esta solución nunca se mencionó y ocupa un lugar relativamente alto en Google para "Linux con bsd userland".
Hay otra solución:herencia. Sé que funciona en Arch, y está empaquetado en AUR (mira gnu2sysv, por ejemplo). Esto reemplazará el paquete coreutils de Arch y proporcionará los equivalentes heredados. Puede leer sobre todo en la wiki de arch:https://wiki.archlinux.org/index.php/Base2heirloom
Echa un vistazo a las utilidades.
Esta es una implementación multiplataforma de GNU coreutils que está escrita en Rust. Tiene licencia del MIT. Al momento de escribir esta respuesta, no está completa al 100℅ (faltan algunas cruciales como ls
y cp
), pero muchos otros ya están hechos.