Alpine镜像中如何安装telnet
作者:morris131
Alpine镜像是一个基于Alpine Linux发行版构建的Docker镜像,具有以下特点和优势:
- 小巧轻量:Alpine Linux的基础镜像非常小巧,通常只有几MB大小(例如,只有5 MB左右,对比Ubuntu系列镜像接近200 MB),这使得它启动更快,占用更少的磁盘空间。
- 安全可靠:Alpine Linux专注于提供一个安全的操作系统,它采用了musl libc来替代glibc,musl libc被认为更加安全,且对于容器化应用来说,足够满足需求。
- 易于定制:Alpine镜像提供了一个简单的基础环境,可以根据需要添加所需的软件包,定制自己的镜像。Alpine Linux使用了apk包管理工具,安装和卸载软件包非常方便。
- 社区支持:Alpine Linux拥有一个活跃的社区,提供了大量的文档和支持。在Docker社区中,有很多基于Alpine镜像的开源项目和Dockerfile,可以方便地获取和使用。
Alpine镜像的广泛应用得益于其小巧、安全、易于定制和活跃的社区支持等特点,特别是在容器化应用场景下,它成为了首选的基础镜像。使用Alpine镜像可以带来多个好处,包括镜像下载速度加快,镜像安全性提高,主机之间的切换更方便,占用更少磁盘空间等。
此外,Alpine Linux提供了自己的包管理工具apk,使得用户可以通过apk命令直接查询和安装各种软件。Alpine镜像也适用于更多常用场景,是一个优秀的可以适用于生产的基础系统/环境。
Alpine镜像安装软件
Alpine镜像安装telnet
Alpine镜像中的telnet在3.7版本后被转移至busybox-extras包中:
$ apk update $ apk add busybox-extras $telnet smtp.163.com 25 #telnet 确认指定端口是否开启
Alpine镜像安装MySQL客户端
$ apk add --no-cache mysql-client
BusyBox
BusyBox命令工具是一个面向嵌入式系统的工具集合,它提供了一个精简的Unix工具集合,包括了许多常用的命令和工具。
BusyBox的主要特点
- 轻量级:BusyBox的可执行文件非常小巧,适用于资源受限的环境。
- 功能强大:包含了许多常见的Unix命令,如ls、cat、cp、mv、rm等,用于文件和目录管理、网络管理、系统管理、软件包管理以及系统设置等。
- 灵活性:提供了许多编译选项,可以根据需求选择需要的工具,并排除不需要的工具。
- 兼容性:BusyBox的工具与传统的Unix工具具有相似的命令行接口和功能,可以方便地替代传统的Unix工具。
BusyBox的常用命令
BusyBox包含了许多常见的Unix命令,其中一些常见的命令包括:
- ls:列出文件和目录。
- cp:复制文件和目录。
- mv:移动文件和目录。
- rm:删除文件和目录。
- cat:查看文件内容。
- find:搜索文件和目录。
- ifconfig、route:用于网络配置和路由表管理。
- ps、top、kill:用于进程查看和管理。
- tar、gzip:用于打包和压缩文件。
- mount、umount:用于挂载和卸载文件系统。
busybox提供的所有命令如下:
$ busybox BusyBox v1.36.1 (2023-11-07 18:53:09 UTC) multi-call binary. BusyBox is copyrighted by many authors between 1998-2015. Licensed under GPLv2. See source distribution for detailed copyright notices. Usage: busybox [function [arguments]...] or: busybox --list[-full] or: busybox --install [-s] [DIR] or: function [arguments]... BusyBox is a multi-call binary that combines many common Unix utilities into a single executable. Most people will create a link to busybox for each function they wish to use and BusyBox will act like whatever it was invoked as. Currently defined functions: [, [[, acpid, add-shell, addgroup, adduser, adjtimex, arch, arp, arping, ash, awk, base64, basename, bbconfig, bc, beep, blkdiscard, blkid, blockdev, brctl, bunzip2, bzcat, bzip2, cal, cat, chattr, chgrp, chmod, chown, chpasswd, chroot, chvt, cksum, clear, cmp, comm, cp, cpio, crond, crontab, cryptpw, cut, date, dc, dd, deallocvt, delgroup, deluser, depmod, df, diff, dirname, dmesg, dnsdomainname, dos2unix, du, dumpkmap, echo, egrep, eject, env, ether-wake, expand, expr, factor, fallocate, false, fatattr, fbset, fbsplash, fdflush, fdisk, fgrep, find, findfs, flock, fold, free, fsck, fstrim, fsync, fuser, getopt, getty, grep, groups, gunzip, gzip, halt, hd, head, hexdump, hostid, hostname, hwclock, id, ifconfig, ifdown, ifenslave, ifup, init, inotifyd, insmod, install, ionice, iostat, ip, ipaddr, ipcalc, ipcrm, ipcs, iplink, ipneigh, iproute, iprule, iptunnel, kbd_mode, kill, killall, killall5, klogd, last, less, link, linux32, linux64, ln, loadfont, loadkmap, logger, login, logread, losetup, ls, lsattr, lsmod, lsof, lsusb, lzcat, lzma, lzop, lzopcat, makemime, md5sum, mdev, mesg, microcom, mkdir, mkdosfs, mkfifo, mkfs.vfat, mknod, mkpasswd, mkswap, mktemp, modinfo, modprobe, more, mount, mountpoint, mpstat, mv, nameif, nanddump, nandwrite, nbd-client, nc, netstat, nice, nl, nmeter, nohup, nologin, nproc, nsenter, nslookup, ntpd, od, openvt, partprobe, passwd, paste, pgrep, pidof, ping, ping6, pipe_progress, pivot_root, pkill, pmap, poweroff, printenv, printf, ps, pscan, pstree, pwd, pwdx, raidautorun, rdate, rdev, readahead, readlink, realpath, reboot, reformime, remove-shell, renice, reset, resize, rev, rfkill, rm, rmdir, rmmod, route, run-parts, sed, sendmail, seq, setconsole, setfont, setkeycodes, setlogcons, setpriv, setserial, setsid, sh, sha1sum, sha256sum, sha3sum, sha512sum, showkey, shred, shuf, slattach, sleep, sort, split, stat, strings, stty, su, sum, swapoff, swapon, switch_root, sync, sysctl, syslogd, tac, tail, tar, tee, test, time, timeout, top, touch, tr, traceroute, traceroute6, tree, true, truncate, tty, ttysize, tunctl, udhcpc, udhcpc6, umount, uname, unexpand, uniq, unix2dos, unlink, unlzma, unlzop, unshare, unxz, unzip, uptime, usleep, uudecode, uuencode, vconfig, vi, vlock, volname, watch, watchdog, wc, wget, which, who, whoami, whois, xargs, xxd, xzcat, yes, zcat, zcip
busybox-extras提供的所有命令如下:
$ busybox-extras BusyBox v1.36.1 (2024-06-12 06:28:12 UTC) multi-call binary. BusyBox is copyrighted by many authors between 1998-2015. Licensed under GPLv2. See source distribution for detailed copyright notices. Usage: busybox [function [arguments]...] or: busybox --list[-full] or: busybox --install [-s] [DIR] or: function [arguments]... BusyBox is a multi-call binary that combines many common Unix utilities into a single executable. Most people will create a link to busybox for each function they wish to use and BusyBox will act like whatever it was invoked as. Currently defined functions: arch, conspy, dnsd, dumpleases, fakeidentd, ftpd, ftpget, ftpput, httpd, inetd, readahead, tcpsvd, telnet, telnetd, tftp, tftpd, udhcpd
BusyBox的优缺点
优点:轻量级、功能强大、灵活性和兼容性好。
缺点:由于BusyBox的设计目标是提供一个精简的工具集,因此某些高级功能可能不支持;对于不熟悉BusyBox的用户来说,可能需要一些时间来适应其命令行接口和工具的使用方式。
总的来说,BusyBox是一个在嵌入式系统和资源受限环境中广泛使用的工具集合,它为用户提供了轻量级、功能强大和灵活的命令行工具集。
补充:Alpine安装telnet、curl等命令
镜像加速:
sed -i 's/dl-cdn.alpinelinux.org/mirrors.ustc.edu.cn/g' /etc/apk/repositories
apk库更新:
apk update
安装curl:
apk add curl
安装telnet
apk add busybox-extras
到此这篇关于Alpine镜像中安装telnet的文章就介绍到这了,更多相关Alpine安装telnet内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!