在 Alpine Linux 中安装 bash shell

如何在我的 Alpine Linux LXD(Linux容器)虚拟机(VM)中安装 bash shell?

Alpine Linux 自带 BusyBox 工具。它被评为“嵌入式 Linux 的瑞士军刀”。BusyBox 将许多通用 UNIX 实用程序的小版本合并到一个 /bin/sh 路径下的小型可执行文件中。默认情况下,BusyBox 和 Alpine Linux 不包含 bash。

如何在 Alpine Linux 中安装 bash?

安装 bash 很容易,但这并不意味着 busybox 的命令符不见了。语法如下:

# apk update
# apk upgrade
# apk add bash

示例输出如下:

(1/5) Installing ncurses-terminfo-base (6.0-r7)
(2/5) Installing ncurses-terminfo (6.0-r7)
(3/5) Installing ncurses-libs (6.0-r7)
(4/5) Installing readline (6.3.008-r5)
(5/5) Installing bash (4.3.48-r1)
Executing bash-4.3.48-r1.post-install
Executing busybox-1.26.2-r5.trigger
OK: 14 MiB in 21 packages

安装 bash 文档,请输入:

# apk add bash-doc

安装 bash 自动命令补全,请运行:

# apk add bash-completion

示例如下:

图1:如何在 Alpine Linux 中成功运行 bash

使用 bash 作为 shell,需要输入 bash:

$ bash

需要从主机登录到 Alpine Linux LXD 虚拟机,请输入:

$ lxc exec alpine-lxd-vm-name-here bash

需要将 root shell 更改为 bash,请输入:

# vi /etc/passwd

查找用户名和默认 shell,比如 /bin/ash:

root:x:0:0:root:/root:/bin/ash

然后用 /bin/bash 替换:

root:x:0:0:root:/root:/bin/bash

自定义 bash shell

输出一个示例文件:

cat ~/.bashrc

示例输出:

alias update='apk update && apk upgrade'
export HISTTIMEFORMAT="%d/%m/%y %T "
export PS1='\u@\h:\W \$ ' alias l='ls -CF' alias la='ls -A' alias ll='ls -alF' alias ls='ls --color=auto' source /etc/profile.d/bash_completion.sh

请参阅自定义 bash shell 环境的 wiki 页面以获取更多信息。

猜你喜欢

转载自www.cnblogs.com/gaoyuechen/p/11944150.html