busybox
oblíbený mezi vestavěnými systémy Linux.
BusyBox kombinuje malé verze mnoha běžných unixových utilit do jediného malého spustitelného souboru. Poskytuje náhradu za většinu utilit, které obvykle najdete v GNU fileutils, shellutils atd. Utility v BusyBox mají obecně méně možností než jejich plnohodnotné GNU příbuzné; nicméně zahrnuté možnosti poskytují očekávanou funkčnost a chovají se velmi podobně jako jejich protějšky GNU. BusyBox poskytuje poměrně kompletní prostředí pro jakýkoli malý nebo vestavěný systém.
BusyBox byl napsán s ohledem na optimalizaci velikosti a omezené zdroje. Je také extrémně modulární, takže můžete snadno zahrnout nebo vyloučit příkazy (nebo funkce) v době kompilace. To usnadňuje přizpůsobení vestavěných systémů. Chcete-li vytvořit fungující systém, stačí přidat několik uzlů zařízení do /dev, několik konfiguračních souborů do /etc a linuxové jádro.
Z jakéhokoli jména coreutilu můžete udělat odkaz na binární soubor busybox a bude to fungovat. můžete také spustit busybox <command>
a bude to fungovat. Příklad:pokud jste na Gentoo a nemáte nainstalovaný vi
přesto můžete spustit busybox vi filename
a budete ve vi. Je to
-
Arch Linux – komunita/busybox
-
Gentoo Linux - sys-apps/busybox
-
Alpine Linux – založený na BusyBox a uClibc, zde je přehled
To je starší téma, chápu. Toto řešení však nebylo nikdy zmíněno a na Googlu se objevuje poměrně vysoko pro „Linux s uživatelskou zemí bsd“.
Existuje další řešení:dědictví. Vím, že to funguje na Archu a je to zabaleno v AUR (podívejte se například na gnu2sysv). To nahradí balíček coreutils Arch a poskytne ekvivalenty dědictví. O celé věci si můžete přečíst na wiki archu:https://wiki.archlinux.org/index.php/Base2heirloom
Podívejte se na uutils.
Toto je multiplatformní implementace GNU coreutils, která je napsána v Rustu. Má licenci MIT. V době psaní této odpovědi není 100℅ úplná (chybí některé důležité odpovědi jako ls
a cp
), ale mnoho dalších je hotovo.