在Ubuntu系统中,如果默认的/bin/sh
链接指向了dash
,而你希望将其更改为指向bash
,可以通过以下步骤操作:
sudo rm /bin/sh
sudo ln -s /bin/bash /bin/sh
但是,这种做法并不推荐,因为某些系统服务和脚本依赖于dash
作为轻量级且符合POSIX标准的shell。Ubuntu系统将/bin/sh
链接到dash
是为了提高系统的启动速度和脚本执行效率。
为了更改默认登录shell(对于用户来说),可以使用chsh
命令来改变特定用户的登录shell:
chsh -s /bin/bash [username]
这里?[username]
?替换为你想要更改其默认shell的用户名。
如果你确实需要系统全局地重新配置默认的/bin/sh
为bash
,不推荐直接修改符号链接,而是应使用Ubuntu的配置工具进行操作。然而,通常并没有官方推荐的方法通过配置工具去全局更改?/bin/sh
?的指向。上述的?sudo dpkg-reconfigure dash
?在一些情况下可能有效,但这不是为了切换?/bin/sh
?到?bash
?而设计的。
总之,在大多数情况下,确保?/bin/sh
?脚本兼容dash是最佳实践,而不是强制将其改为bash。若因特定应用或脚本需求必须使用bash,应在那些脚本中明确指定用bash执行,例如:#!/bin/bash
。