在 Alpine Linux 中安裝 bash shell

類別: IT
標籤: linux

如何在我的 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-installExecuting busybox-1.26.2-r5.triggerOK: 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='\[email protected]\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 頁面以獲取更多資訊。

在 Alpine Linux 中安裝 bash shell原文請看這裡