Rumah  >  Artikel  >  Operasi dan penyelenggaraan  >  apa itu linux busybox

apa itu linux busybox

青灯夜游
青灯夜游asal
2022-11-11 10:20:273361semak imbas

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.

apa itu linux busybox

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.

Apakah BusyBox?

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.

Adakah masalah anda tidak mendapat rangkaian penuh pilihan arahan Linux dengan 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).

apa itu linux busybox

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?

Bagaimana untuk mendapatkan BusyBox?

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.

apa itu linux busybox

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!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:apakah konteks dalam linuxArtikel seterusnya:apakah konteks dalam linux