ΠΠΎΠ΄ΡΠ»ΡΠ½ΡΠΉ Ρ Π°ΡΠ°ΠΊΡΠ΅Ρ BusyBox Π΄Π°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΡΠΎΡΠΌΠΈΡΠΎΠ²Π°ΡΡ ΠΎΠ΄ΠΈΠ½ ΡΠ½ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠΉ ΡΠ°ΠΉΠ», ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ Π² ΡΠ΅Π±Π΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΡΠΉ Π½Π°Π±ΠΎΡ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΡ Π² ΠΏΠ°ΠΊΠ΅ΡΠ΅ ΡΡΠΈΠ»ΠΈΡ (ΠΊΠ°ΠΆΠ΄Π°Ρ ΡΡΠΈΠ»ΠΈΡΠ° Π΄ΠΎΡΡΡΠΏΠ½Π° Π² ΡΠΎΡΠΌΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»ΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΡΡΠ»ΠΊΠΈ Π½Π° Π΄Π°Π½Π½ΡΠΉ ΡΠ°ΠΉΠ»). Π Π°Π·ΠΌΠ΅Ρ, ΡΠΎΡΡΠ°Π² ΠΈ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΡ ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΠΈ ΡΡΠΈΠ»ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ Π²Π°ΡΡΠΈΡΠΎΠ²Π°ΡΡ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΠΏΠΎΡΡΠ΅Π±Π½ΠΎΡΡΠ΅ΠΉ ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ Π²ΡΡΡΠ°ΠΈΠ²Π°Π΅ΠΌΠΎΠΉ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ, Π΄Π»Ρ ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ±ΠΎΡΠΊΠ°. ΠΠ°ΠΊΠ΅Ρ ΡΠ°ΠΌΠΎΠ΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΡΠΉ, ΠΏΡΠΈ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΠ±ΠΎΡΠΊΠ΅ Ρ uclibc Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ΠΏΠΎΠ²Π΅ΡΡ ΡΠ΄ΡΠ° Linux ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π»ΠΈΡΡ ΡΠΎΠ·Π΄Π°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°ΠΉΠ»ΠΎΠ² ΡΡΡΡΠΎΠΉΡΡΠ² Π² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ /dev ΠΈ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΈΡΡ ΡΠ°ΠΉΠ»Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ. ΠΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ ΠΏΡΠΎΡΠ»ΡΠΌ Π²ΡΠΏΡΡΠΊΠΎΠΌ 1.30 ΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ ΡΠΈΠΏΠΎΠ²ΠΎΠΉ ΡΠ±ΠΎΡΠΊΠΎΠΉ BusyBox 1.31 ΡΠΌΠ΅Π½ΡΡΠΈΠ»ΠΎΡΡ Π½Π° 86 Π±Π°ΠΉΡ (Ρ 1008478 Π΄ΠΎ 1008392 Π±Π°ΠΉΡ).
BusyBox ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΠΌ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠΌ Π² Π±ΠΎΡΡΠ±Π΅ Ρ Π½Π°ΡΡΡΠ΅Π½ΠΈΠ΅ΠΌ GPL Π² ΠΏΡΠΎΡΠΈΠ²ΠΊΠ°Ρ
. ΠΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ Software Freedom Conservancy (SFC) ΠΈ Software Freedom Law Center (SFLC) ΠΎΡ Π»ΠΈΡΠ° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² BusyBox ΠΊΠ°ΠΊ ΡΠ΅ΡΠ΅Π·
Π Π²Π΅ΡΡΠΈΠΈ BusyBox 1.31 Π²ΡΠ΄Π΅Π»ΡΡΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ:
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Ρ Π½ΠΎΠ²ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ: ts (ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° ΠΈ ΡΠ΅ΡΠ²Π΅ΡΠ° Π΄Π»Ρ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° TSP (Time-Stamp Protocol)) ΠΈ i2ctransfer (ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈ ΠΎΡΠΏΡΠ°Π²ΠΊΠ° ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ I2C);
- Π udhcp Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΎΠΏΡΠΈΠΉ DHCP
100 (ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΎ ΡΠ°ΡΠΎΠ²ΠΎΠΌ ΠΏΠΎΡΡΠ΅) ΠΈ 101 (Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΡΠ°ΡΠΎΠ²ΠΎΠ³ΠΎ ΠΏΠΎΡΡΠ° Π² ΠΠ TZ) Π΄Π»Ρ IPv6; - Π udhcpd Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΏΡΠΈΠ²ΡΠ·ΠΎΠΊ ΠΈΠΌΡΠ½ Ρ ΠΎΡΡΠΎΠ² ΠΊ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°ΠΌ;
- Π ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡΡ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠ°Ρ ash ΠΈ hush ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ ΡΠΈΡΠ»ΠΎΠ²ΡΠ΅ Π»ΠΈΡΠ΅ΡΠ°Π»Ρ «BASE#nnnn». ΠΡΠΈΠ²Π΅Π΄Π΅Π½Π° ΠΊ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΠΈ Ρ bash ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ulimit, Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ ΠΎΠΏΡΠΈΠΈ «-i RLIMIT_SIGPENDING» ΠΈ «-q RLIMIT_MSGQUEUE». ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° «wait -n». ΠΠΎΠ±Π°Π²Π»Π΅Π½Ρ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΡΠ΅ Ρ bash ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ EPOCH;
- Π ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠ΅ hush ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ «$-«, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Ρ Π°ΠΊΡΠΈΠ²ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΎΠΏΡΠΈΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ;
- Π bc ΠΈΠ· upstream ΠΏΠ΅ΡΠ΅Π½Π΅ΡΡΠ½ ΠΊΠΎΠ΄ Π΄Π»Ρ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΏΠΎ ΡΡΡΠ»ΠΊΠ΅, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° void-ΡΡΠ½ΠΊΡΠΈΠΉ ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ°Π±ΠΎΡΡ ΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ ibase Π΄ΠΎ 36;
- Π brctl Π²ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΏΠ΅ΡΠ΅Π²Π΅Π΄Π΅Π½Ρ Π½Π° ΡΠ°Π±ΠΎΡΡ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΏΡΠ΅Π²Π΄ΠΎ-Π€Π‘ /sys;
- ΠΠ±ΡΠ΅Π΄ΠΈΠ½ΡΠ½ ΠΊΠΎΠ΄ ΡΡΠΈΠ»ΠΈΡ fsync ΠΈ sync;
- Π£ΡΠΎΠ²Π΅ΡΡΠ΅Π½ΡΡΠ²ΠΎΠ²Π°Π½Π° ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ httpd. Π£Π»ΡΡΡΠ΅Π½Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° HTTP-Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ² ΠΈ ΡΠ°Π±ΠΎΡΠ° Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ ΠΏΡΠΎΠΊΡΠΈ. Π ΡΠΏΠΈΡΠΎΠΊ MIME-ΡΠΈΠΏΠΎΠ² Π²ΠΊΠ»ΡΡΠ΅Π½Ρ SVG ΠΈ JavaScript;
- Π losetup Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΎΠΏΡΠΈΡ «-c» (ΠΏΡΠΈΠ½ΡΠ΄ΠΈΡΠ΅Π»ΡΠ½Π°Ρ ΠΏΠ΅ΡΠ΅ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° ΡΠ°Π·ΠΌΠ΅ΡΠ° ΡΠ°ΠΉΠ»Π°, ΡΠ²ΡΠ·Π°Π½Π½ΠΎΠ³ΠΎ c loop-ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎΠΌ), Π° ΡΠ°ΠΊΠΆΠ΅ ΠΎΠΏΡΠΈΡ Π΄Π»Ρ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ°Π·Π΄Π΅Π»ΠΎΠ². Π mount ΠΈ losetup ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠ°Π±ΠΎΡΡ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ /dev/loop-control;
- Π ntpd Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ SLEW_THRESHOLD ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΎ Ρ 0.125 Π΄ΠΎ 0.5;
- Π sysctl Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΏΡΠΈΡΠ²ΠΎΠ΅Π½ΠΈΡ ΠΏΡΡΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ;
- Π watch Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π΄ΡΠΎΠ±Π½ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ Π² ΠΎΠΏΡΠΈΠΈ «-n SEC»;
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π·Π°ΠΏΡΡΠΊΠ° mdev Π² ΡΠΎΡΠΌΠ΅ ΡΠΎΠ½ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ°;
- Π ΡΡΠΈΠ»ΠΈΡΠ΅ wget ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ ΡΠ»Π°Π³ «-o» Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΡΠ°ΠΉΠ»Π° Π΄Π»Ρ Π·Π°ΠΏΠΈΡΠΈ Π»ΠΎΠ³Π°. ΠΠΎΠ±Π°Π²Π»Π΅Π½Ρ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ ΠΎ Π½Π°ΡΠ°Π»Π΅ ΠΈ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΠΈ Π·Π°Π³ΡΡΠ·ΠΊΠΈ;
- Π telnetd Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΊΠΎΠΌΠ°Π½Π΄Ρ AYT IAC;
- Π vi Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° ‘dG'(ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ ΠΎΡ ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΡΡΡΠΎΠΊΠΈ Π΄ΠΎ ΠΊΠΎΠ½ΡΠ° ΡΠ°ΠΉΠ»Π°);
- Π ΠΊΠΎΠΌΠ°Π½Π΄Ρ dd Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΎΠΏΡΠΈΡ ‘oflag=append’;
- Π ΡΡΠΈΠ»ΠΈΡΡ top Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ ΡΠ»Π°Π³ ‘-H’ Π΄Π»Ρ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΡΠ΅ΠΆΠΈΠΌΠ° ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ ΠΏΠΎΡΠΎΠΊΠΎΠ².
ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π΄Π²Π΅ Π½Π΅Π΄Π΅Π»ΠΈ Π½Π°Π·Π°Π΄
ΠΠ· Π½ΠΎΠ²ΡΠ΅ΡΡΠ² Toybox 0.8.1 ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΠΌΠ΅ΡΠΈΡΡ:
- ΠΠΎΡΡΠΈΠ³Π½ΡΡ ΡΡΠΎΠ²Π΅Π½Ρ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΠΈ, Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΡΠΉ Π΄Π»Ρ ΡΠ±ΠΎΡΠΊΠΈ Android Π² ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΠΈ Π½Π° Π±Π°Π·Π΅ ΡΡΠΈΠ»ΠΈΡ Toybox.
- Π ΡΠΎΡΡΠ°Π² Π²ΠΊΠ»ΡΡΠ΅Π½Ρ Π½ΠΎΠ²ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ mcookie ΠΈ devmem, ΠΈΠ· ΡΠ΅ΡΡΠΎΠ²ΠΎΠΉ Π²Π΅ΡΠΊΠΈ ΠΏΠ΅ΡΠ΅Π½Π΅ΡΠ΅Π½Ρ ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΠ°Π½Π½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ tar, gunzip ΠΈ zcat.
- ΠΠ»Ρ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½Π° Π½ΠΎΠ²Π°Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ vi.
- Π ΠΊΠΎΠΌΠ°Π½Π΄Ρ find Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΎΠΏΡΠΈΠΉ «-wholename/-iwholename»,
«-printf» ΠΈ «-context»; - Π grep Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΎΠΏΡΠΈΡ «—exclude-dir»;
- Π echo ΠΏΠΎΡΠ²ΠΈΠ»Π°ΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΎΠΏΡΠΈΠΈ «-E».
- Π mount Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° «UUID».
- Π ΠΊΠΎΠΌΠ°Π½Π΄Ρ date Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ ΡΡΡΡ ΡΠ°ΡΠΎΠ²ΠΎΠ³ΠΎ ΠΏΠΎΡΡΠ°, Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ TZ.
- Π sed Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΡΡ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ΠΎΠ² (+N).
- Π£Π»ΡΡΡΠ΅Π½Π° ΡΠΈΡΠ°Π΅ΠΌΠΎΡΡΡ Π²ΡΠ²ΠΎΠ΄Π° ps, top ΠΈ iotop.
ΠΡΡΠΎΡΠ½ΠΈΠΊ: opennet.ru