将 ./bin/sh 从链接到 dash 更改为链接到 bash

将 ./bin/sh 从链接到 dash 更改为链接到 bash

多年来,我一直使用 Red Hat Enterprise Linux Workstations,它将 /bin/sh 链接到 bash。Ubuntu 将 /bin/sh 链接到 dash。我的大多数脚本都以“#! /bin/bash”开头。少数脚本不是;这些是错误。我尝试修复所有错误,但可能遗漏了一些。

更重要的是,我的环境中似乎有些东西 dash 不喜欢。当 at 运行时,会出现一条我无法理解的错误消息,尽管这似乎是 at 唯一的问题。但是,cron 有一个更严重的问题。它无法播放声音。这个问题可能与 dash 无关,但我想消除这种可能性。所以我的问题是:

如果我将 /bin/sh 从链接到 dash 更改为链接到 bash,这会让 ubuntu 感到不高兴吗?

答案1

Ubuntu 使用短跑作为许多启动和核心任务的解释器。这样做的主要原因是使用比 bash 更快、内存消耗更少、总体上更高效的解释器。

您可以在 Ubuntu 上阅读有关 dash 的更多信息(包括与开发人员相关的问题)本 wiki 文档

关于 dash 错误(上面的 wiki 中也提到了):并非所有 bash 支持的命令语法都完全受 dash 支持。这可能会导致语法和/或解释错误。

更改/bin/shsymlinc 可能会导致意外结果,最好避免这样做,除非您绝对确定自己在做什么。

相关内容