Rumah > Artikel > Operasi dan penyelenggaraan > apa itu linux busybox
busybox ialah alat pembangunan untuk membangunkan perisian di bawah sistem Linux Ia adalah perisian yang menyepadukan lebih daripada 300 arahan dan alatan Linux yang paling biasa digunakan. Ringkasnya, BusyBox adalah seperti kotak alat yang besar Ia menyepadukan dan memampatkan banyak alat dan arahan Linux, dan juga termasuk shell sistem Linux sendiri. BusyBox ialah alternatif terbaik untuk GNU Coreutils, terutamanya jika saiz kecil sistem pengendalian adalah penting.
Persekitaran pengendalian tutorial ini: sistem linux7.3, komputer Dell G3.
BusyBox semakin popular sekarang, terutamanya dalam kalangan pengguna Docker, banyak imej Docker menggunakan BusyBox untuk memberikan anda imej yang minimum.
Ini boleh mengelirukan terutamanya kepada ramai pengguna jika anda mengambil mudah arahan Linux, anda fikir ls, mv dan arahan lain seperti itu adalah sebahagian daripada Linux, sedangkan sebenarnya arahan ini adalah sebahagian daripada pakej GNU Coreutils sebahagian daripada , dan kebanyakan pengedaran Linux diprapasang.
GNU Coreutils hampir merupakan pembekal de facto pelbagai arahan UNIX/Linux, hampir kerana sentiasa ada alternatif, dan BusyBox ialah salah satu alternatif kepada GNU Coreutils.
busybox ialah alat pembangunan untuk membangunkan perisian di bawah sistem Linux.
BusyBox ialah projek sumber terbuka yang menyediakan pelaksanaan diperkemas bagi kira-kira 400 arahan UNIX/Linux biasa.
BusyBox ialah perisian yang menyepadukan lebih daripada 300 arahan dan alatan Linux yang paling biasa digunakan. BusyBox merangkumi beberapa alatan mudah, seperti ls, cat, echo, dsb., serta beberapa alatan yang lebih besar dan lebih kompleks, seperti grep, find, mount dan telnet. Sesetengah orang memanggil BusyBox sebagai alat Swiss Army Knife of Linux. Ringkasnya, BusyBox adalah seperti kotak alat yang besar Ia menyepadukan dan memampatkan banyak alat dan arahan Linux, dan juga termasuk shell sistem Linux sendiri.
Pelaksanaan BusyBox mengalih keluar pilihan arahan yang tidak biasa, jarang digunakan, semuanya kurang daripada 1 MB, imej minimum ini adalah sebab mengapa ia popular dalam sistem terbenam dan dunia IoT, serta dalam dunia pengkomputeran awan.
Jangan lihat saiznya, BusyBox mempunyai skop sed dan awk seperti editor klasik (sekali lagi dalam versi stripped down), ia juga mengandungi shell sendiri, malah ia mengandungi arahan init yang boleh dimulakan sebagai PID 1, Ini bermakna BusyBox boleh dikonfigurasikan sebagai pengganti Systemd, OpenRC, dll.
BusyBox ialah alternatif terbaik untuk GNU Coreutils, terutamanya apabila saiz kecil sistem pengendalian adalah penting.
BusyBox menyediakan anda arahan Linux yang popular seperti mv, mkdir, ls, dsb., tetapi ia hanya termasuk pilihan biasa untuk arahan ini. Minimalisme ini ialah USP BusyBox.
Ia bergantung pada keperluan anda, sebenarnya, kebanyakan orang tidak akan memerlukan semua pilihan arahan itu. Sesetengah arahan Linux mempunyai lebih 50 pilihan, dan saya yakin anda tidak pernah menggunakan semua pilihan untuk satu arahan Linux.
BusyBox mengurangkan pilihan yang jarang digunakan, contohnya arahan ls mempunyai pilihan G yang mengalih keluar nama kumpulan daripada keluaran senarai panjang (ls -l).
Sekarang, saya rasa anda tidak memerlukan pilihan ini, itulah sebabnya ia tidak wujud dalam pelaksanaan ls BusyBox, jika anda memerlukannya yang tidak mengandungi output nama kumpulan, anda hanya perlu menggunakan perintah cut atau awk untuk tujuan ini.
Berikan contoh lain. Ini ialah halaman bantuan untuk arahan mv daripada GNU Coreutils:
Usage: mv [OPTION]... [-T] SOURCE DEST or: mv [OPTION]... SOURCE... DIRECTORY or: mv [OPTION]... -t DIRECTORY SOURCE... Rename SOURCE to DEST, or move SOURCE(s) to DIRECTORY. Mandatory arguments to long options are mandatory for short options too. --backup[=CONTROL] make a backup of each existing destination file -b like --backup but does not accept an argument -f, --force do not prompt before overwriting -i, --interactive prompt before overwrite -n, --no-clobber do not overwrite an existing file If you specify more than one of -i, -f, -n, only the final one takes effect. --strip-trailing-slashes remove any trailing slashes from each SOURCE argument -S, --suffix=SUFFIX override the usual backup suffix -t, --target-directory=DIRECTORY move all SOURCE arguments into DIRECTORY -T, --no-target-directory treat DEST as a normal file -u, --update move only when the SOURCE file is newer than the destination file or when the destination file is missing -v, --verbose explain what is being done -Z, --context set SELinux security context of destination file to default type --help display this help and exit --version output version information and exit
Sekarang, berikut ialah halaman bantuan untuk arahan mv daripada BusyBox:
Usage: mv [-fin] SOURCE DEST or: mv [-fin] SOURCE... DIRECTORY Rename SOURCE to DEST, or move SOURCE(s) to DIRECTORY -f Don't prompt before overwriting -i Interactive, prompt before overwrite -n Don't overwrite an existing file
Nampak perbezaannya?
Anda boleh mendapatkan BusyBox dalam pelbagai cara.
Jika anda hanya mahu mengalami BusyBox pada pengedaran Linux semasa anda, anda boleh memasangnya menggunakan pengurus pakej pengedaran anda (seperti Apt atau DNF atau Yum).
Di Ubuntu, anda boleh memasang BusyBox menggunakan arahan berikut:
sudo apt install busybox
Selepas itu, jika anda ingin menjalankan versi BusyBox arahan, anda perlu menambah busybox di hadapan ia.
busybox cat sample.txt
Jika BusyBox tidak melaksanakan arahan, ia akan menyebabkan ralat "Applet tidak dijumpai".
abhishek@LHB:~$ busybox xyz xyz: applet not found
Sebagai alternatif, anda boleh memuat turun imej Docker BusyBox dan mengalaminya dalam bekas yang sedang berjalan.
Pastikan anda telah memasang Docker, tarik imej docker rasmi:
docker pull busybox
Jalankan bekas daripada imej dan masukkan shell BusyBox:
docker run -it --rm busybox
Anda berada di sini Setiap arahan Linux yang anda jalankan datang daripada BusyBox. Anda tidak perlu menyatakannya secara eksplisit.
Ringkasnya, anda tidak perlu menggunakan BusyBox pada sistem Linux biasa, anda sudah mempunyai versi penuh arahan Linux daripada GNU Coreutils. Tidak perlu memasang versi lite.
Tetapi BusyBox mempunyai kegunaannya dalam bidang khas, seperti semasa mengkonfigurasi sistem pengendalian Linux yang minimum untuk peranti terbenam atau IoT. Ini juga benar apabila anda ingin memastikan saiz imej Docker anda kecil.
Cadangan berkaitan: "Tutorial Video Linux"
Atas ialah kandungan terperinci apa itu linux busybox. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!