《Linux From Scratch》第三部分:构建LFS系统 第六章:安装基本的系统软件- 6.36. Bash-4.3.30

简介:

             Bash 软件包包含 Bourne-Again Shell。

大概编译时间: 1.9 SBU
需要磁盘空间: 57 MB

6.36.1. 安装 Bash

首先,安装下面的补丁修复上游解决的一些 bug:

patch -Np1 -i ../bash-4.3.30-upstream_fixes-1.patch

准备编译 Bash:

./configure --prefix=/usr                       \
            --bindir=/bin                       \
            --docdir=/usr/share/doc/bash-4.3.30 \
            --without-bash-malloc               \
            --with-installed-readline

新配置选项的含义:

--with-installed-readline

该选项告诉 Bash 使用系统中已经安装的 readline 库而不是使用自带的 readline 版本。

编译软件包:

make

如果不需要运行测试套件的话跳转到 “安装软件包 ”。

准备测试,确保 nobody 用户可以写源文件树:

chown -Rv nobody .

现在,以 nobody 用户身份运行测试:

su nobody -s /bin/bash -c "PATH=$PATH make tests"

安装软件包:

make install

运行新编译的 bash 程序(替换正在运行的那个):

exec /bin/bash --login +h
[Note]

注意

参数使 bash 进程成为一个可交互的登录 shell 并停用散列使得新程序可用的时候就能发现。

6.36.2. Bash 软件包内容

安装的程序: bash, bashbug, 和 sh (链接到 bash)
安装目录: /usr/share/doc/bash-4.3.30

简要介绍

bash

广泛使用的命令解释器;在执行一个命令之前进行多种扩展和替换,使得该解释器成为一个强大的工具

bashbug

一个 shell 脚本,用于帮助用户撰写和发送标准格式的关于 bash 的 bug 报告邮件

sh

bash 程序的符号链接;当以 sh 调用时,在符合 POSIX 标准的情况下,bash 尽可能地模仿历史版本的启动过程

相关文章
|
2月前
|
Linux 测试技术 网络安全
Linux系统之安装OneNav个人书签管理器
【10月更文挑战第19天】Linux系统之安装OneNav个人书签管理器
114 5
Linux系统之安装OneNav个人书签管理器
|
2月前
|
监控 Java Linux
Linux系统之安装Ward服务器监控工具
【10月更文挑战第17天】Linux系统之安装Ward服务器监控工具
61 5
Linux系统之安装Ward服务器监控工具
|
27天前
|
存储 安全 数据管理
如何在 Rocky Linux 8 上安装和配置 Elasticsearch
本文详细介绍了在 Rocky Linux 8 上安装和配置 Elasticsearch 的步骤,包括添加仓库、安装 Elasticsearch、配置文件修改、设置内存和文件描述符、启动和验证 Elasticsearch,以及常见问题的解决方法。通过这些步骤,你可以快速搭建起这个强大的分布式搜索和分析引擎。
38 5
|
2月前
|
JSON JavaScript Linux
Linux系统之安装cook菜谱工具
【10月更文挑战第15天】Linux系统之安装cook菜谱工具
39 2
Linux系统之安装cook菜谱工具
|
2月前
|
Ubuntu Linux 测试技术
Linux系统之Ubuntu安装cockpit管理工具
【10月更文挑战第13天】Linux系统之Ubuntu安装cockpit管理工具
168 4
Linux系统之Ubuntu安装cockpit管理工具
|
1月前
|
消息中间件 Linux RocketMQ
在Red Hat Enterprise Linux 9上使用Docker快速安装并部署
通过以上步骤,你可以在Red Hat Enterprise Linux 9上使用Docker快速安装并部署RocketMQ。这种方法不仅简化了安装过程,还提供了一个灵活的环境来管理和扩展消息队列系统。RocketMQ作为一款高性能的分布式消息系统,通过Docker可以实现快速部署和高效管理。
65 2
|
1月前
|
消息中间件 Linux RocketMQ
在Red Hat Enterprise Linux 9上使用Docker快速安装并部署
通过以上步骤,你可以在Red Hat Enterprise Linux 9上使用Docker快速安装并部署RocketMQ。这种方法不仅简化了安装过程,还提供了一个灵活的环境来管理和扩展消息队列系统。RocketMQ作为一款高性能的分布式消息系统,通过Docker可以实现快速部署和高效管理。
37 3
|
23天前
|
存储 缓存 Linux
【Linux】另一种基于rpm安装yum的方式
通过本文的方法,您可以在离线环境中使用RPM包安装YUM并进行必要的配置。这种方法适用于无法直接访问互联网的服务器或需要严格控制软件源的环境。通过配置本地YUM仓库,确保了软件包的安装和更新可以顺利进行。希望本文能够为您在特定环境中部署YUM提供实用的指导。
122 0
|
29天前
|
关系型数据库 MySQL Linux
Linux-安装Mariadb
本文介绍了在 Alibaba Cloud Linux 系统上安装和配置 MariaDB 10.5 的步骤。包括下载安装、初始化数据库、启动服务、处理启动失败的常见问题(如权限问题),以及如何连接数据库、设置密码和允许外部连接。通过这些步骤,您可以顺利完成 MariaDB 的安装和基本配置。
42 0
|
1月前
|
Linux
Linux - 如何编译源码安装软件
源码编译安装通常包括三个步骤:1) `./configure` 检测平台特征和依赖项,生成 Makefile;2) `make` 编译源码,生成可执行文件;3) `make install` 将可执行文件安装到指定目录并配置环境变量。
44 0