busybox đã thâm căn cố đế trong Alpine Linux như thế lào?

Bài này nằm trong 1 loạt bài tech mổ xẻ Alpine Linux để biết vì sao Alpine Linux nhỏ, nhẹ hơn nhiều so với các bản Linux khác.

Team docker thường build container image xài Alpine Linux container chạy các phần mềm, ứng dụng đóng gói dạng container.

Alpine Linux xài busybox chứ hổng xài systemd.

busybox là tiến trình số 1 ở không gian người dùng (userspace), quản lí tất cả các tiến trình khác ở không gian người dùng

busybox là 1 cái hộp không có quởn chút nào, nó làm việc suốt ngày đêm với các lệnh thụt ra thụt vô như con dao đa năng của lính Thụy sĩ.

busybox thích hợp cho các hệ thống nhúng mình dây chạy Linux. Mình dây tiếng Ăng Lê là slim.

Hầu hết các hệ thống nhúng (embedded system) xài Linux.

busybox The Swiss Army Knife of Embedded Linux

Alpine Linux có nhiều lệnh nhưng thật ra nằm trong busybox như hình dưới

/sbin/acpid:             symbolic link to /bin/busybox
/sbin/adjtimex:          symbolic link to /bin/busybox
/sbin/arp:               symbolic link to /bin/busybox
/sbin/blockdev:          symbolic link to /bin/busybox
/sbin/fbsplash:          symbolic link to /bin/busybox
/sbin/fdisk:             symbolic link to /bin/busybox
/sbin/findfs:            symbolic link to /bin/busybox
/sbin/fsck:              symbolic link to /bin/busybox
/sbin/fstrim:            symbolic link to /bin/busybox
/sbin/getty:             symbolic link to /bin/busybox
/sbin/halt:              symbolic link to /bin/busybox
/sbin/hwclock:           symbolic link to /bin/busybox
/sbin/ifconfig:          symbolic link to /bin/busybox
/sbin/ifenslave:         symbolic link to /bin/busybox
/sbin/init:              symbolic link to /bin/busybox
/sbin/inotifyd:          symbolic link to /bin/busybox
/sbin/ip:                symbolic link to /bin/busybox
/sbin/ipaddr:            symbolic link to /bin/busybox
/sbin/iplink:            symbolic link to /bin/busybox
/sbin/ipneigh:           symbolic link to /bin/busybox
/sbin/iproute:           symbolic link to /bin/busybox
/sbin/iprule:            symbolic link to /bin/busybox
/sbin/iptunnel:          symbolic link to /bin/busybox
/sbin/klogd:             symbolic link to /bin/busybox
/sbin/loadkmap:          symbolic link to /bin/busybox
/sbin/logread:           symbolic link to /bin/busybox
/sbin/losetup:           symbolic link to /bin/busybox
/sbin/mdev:              symbolic link to /bin/busybox
/sbin/mkdosfs:           symbolic link to /bin/busybox
/sbin/mkfs.vfat:         symbolic link to /bin/busybox
/sbin/mkswap:            symbolic link to /bin/busybox
/sbin/nameif:            symbolic link to /bin/busybox
/sbin/nologin:           symbolic link to /bin/busybox
/sbin/pivot_root:        symbolic link to /bin/busybox
/sbin/poweroff:          symbolic link to /bin/busybox
/sbin/raidautorun:       symbolic link to /bin/busybox
/sbin/reboot:            symbolic link to /bin/busybox
/sbin/route:             symbolic link to /bin/busybox
/sbin/setconsole:        symbolic link to /bin/busybox
/sbin/slattach:          symbolic link to /bin/busybox
/sbin/swapoff:           symbolic link to /bin/busybox
/sbin/swapon:            symbolic link to /bin/busybox
/sbin/switch_root:       symbolic link to /bin/busybox
/sbin/sysctl:            symbolic link to /bin/busybox
/sbin/syslogd:           symbolic link to /bin/busybox
/sbin/tunctl:            symbolic link to /bin/busybox
/sbin/udhcpc:            symbolic link to /bin/busybox
/sbin/vconfig:           symbolic link to /bin/busybox
/sbin/watchdog:          symbolic link to /bin/busybox
/sbin/zcip:              symbolic link to /bin/busybox

/bin/arch:          symbolic link to /bin/busybox
/bin/ash:           symbolic link to /bin/busybox
/bin/base64:        symbolic link to /bin/busybox
/bin/bbconfig:      symbolic link to /bin/busybox
/bin/cat:           symbolic link to /bin/busybox
/bin/chattr:        symbolic link to /bin/busybox
/bin/chgrp:         symbolic link to /bin/busybox
/bin/chmod:         symbolic link to /bin/busybox
/bin/chown:         symbolic link to /bin/busybox
/bin/cp:            symbolic link to /bin/busybox
/bin/date:          symbolic link to /bin/busybox
/bin/dd:            symbolic link to /bin/busybox
/bin/df:            symbolic link to /bin/busybox
/bin/dmesg:         symbolic link to /bin/busybox
/bin/dnsdomainname: symbolic link to /bin/busybox
/bin/dumpkmap:      symbolic link to /bin/busybox
/bin/echo:          symbolic link to /bin/busybox
/bin/ed:            symbolic link to /bin/busybox
/bin/egrep:         symbolic link to /bin/busybox
/bin/false:         symbolic link to /bin/busybox
/bin/fatattr:       symbolic link to /bin/busybox
/bin/fdflush:       symbolic link to /bin/busybox
/bin/fgrep:         symbolic link to /bin/busybox
/bin/fsync:         symbolic link to /bin/busybox
/bin/getopt:        symbolic link to /bin/busybox
/bin/grep:          symbolic link to /bin/busybox
/bin/gunzip:        symbolic link to /bin/busybox
/bin/gzip:          symbolic link to /bin/busybox
/bin/hostname:      symbolic link to /bin/busybox
/bin/ionice:        symbolic link to /bin/busybox
/bin/iostat:        symbolic link to /bin/busybox
/bin/ipcalc:        symbolic link to /bin/busybox
/bin/kbd_mode:      symbolic link to /bin/busybox
/bin/kill:          symbolic link to /bin/busybox
/bin/link:          symbolic link to /bin/busybox
/bin/linux32:       symbolic link to /bin/busybox
/bin/linux64:       symbolic link to /bin/busybox
/bin/ln:            symbolic link to /bin/busybox
/bin/login:         symbolic link to /bin/busybox
/bin/ls:            symbolic link to /bin/busybox
/bin/lsattr:        symbolic link to /bin/busybox
/bin/lzop:          symbolic link to /bin/busybox
/bin/makemime:      symbolic link to /bin/busybox
/bin/mkdir:         symbolic link to /bin/busybox
/bin/mknod:         symbolic link to /bin/busybox
/bin/mktemp:        symbolic link to /bin/busybox
/bin/more:          symbolic link to /bin/busybox
/bin/mountpoint:    symbolic link to /bin/busybox
/bin/mpstat:        symbolic link to /bin/busybox
/bin/mv:            symbolic link to /bin/busybox
/bin/netstat:       symbolic link to /bin/busybox
/bin/nice:          symbolic link to /bin/busybox
/bin/pidof:         symbolic link to /bin/busybox
/bin/ping:          symbolic link to /bin/busybox
/bin/ping6:         symbolic link to /bin/busybox
/bin/pipe_progress: symbolic link to /bin/busybox
/bin/printenv:      symbolic link to /bin/busybox
/bin/ps:            symbolic link to /bin/busybox
/bin/pwd:           symbolic link to /bin/busybox
/bin/reformime:     symbolic link to /bin/busybox
/bin/rev:           symbolic link to /bin/busybox
/bin/rm:            symbolic link to /bin/busybox
/bin/rmdir:         symbolic link to /bin/busybox
/bin/run-parts:     symbolic link to /bin/busybox
/bin/sed:           symbolic link to /bin/busybox
/bin/setpriv:       symbolic link to /bin/busybox
/bin/setserial:     symbolic link to /bin/busybox
/bin/sh:            symbolic link to /bin/busybox
/bin/sleep:         symbolic link to /bin/busybox
/bin/stat:          symbolic link to /bin/busybox
/bin/stty:          symbolic link to /bin/busybox
/bin/sync:          symbolic link to /bin/busybox
/bin/tar:           symbolic link to /bin/busybox
/bin/touch:         symbolic link to /bin/busybox
/bin/true:          symbolic link to /bin/busybox
/bin/uname:         symbolic link to /bin/busybox
/bin/usleep:        symbolic link to /bin/busybox
/bin/watch:         symbolic link to /bin/busybox
/bin/zcat:          symbolic link to /bin/busybox

Có tất cả bao nhiêu lệnh Linux nằm trong busybox trên Alpine Linux

Con dao đa năng của lính Tây (Thụy Sĩ) trong Alpine Linux có bao nhiêu lưỡi dao? 129 lưỡi dao nha

Chi tiết các lệnh nằm trong bài học

Alpine Linux có gì đặc biệt mà Docker hay xài để build container image

Đối với các bạn đã bỏ ra 1 đống tiền mua các bằng cấp, chứng chỉ công nghệ thông tin nhưng tiếc tiền mua khóa học này thì có thể xem đây là bài tập Linux hay bài tập Docker hay bài tập DevOps dành cho các bạn.