在具有基本服务器环境的 Ubuntu 机器上将 root 的 shell 从 Bash 更改为 Zsh 是一个危险的步骤吗?
我所说的基本服务器环境是指:LAMP、PHPmyadmin、CSF-LFD、Maldet、Make。
我考虑这次用 Zsh 完全重新安装服务器环境,但是当我在我的托管平台 DigitalOcean 上安装 Ubuntu 时,它会自动附带 Bash。
我用来实际建立良好、稳定的服务器环境的服务器环境设置脚本通常包括这些(除了各种apt-get
):
heredocuments(尤其是 cat heredocs)、sed
操作、awk
操作、wget
s、echo
字符串、bash 字符串(提前查看示例)、哈希注释等。这些东西在 Zsh 中也应该正常工作吗?
我所说的 Bash 字符串是指,例如:
bash -c "echo 'alias www=\"cd /var/www/html\"' >> /etc/bash.bashrc"
注意:我考虑使用 Zsh 的原因是为了享受预执行行为。
答案1
我认为重新安装所有环境有点过度了。zsh
是一个包与许多其他产品一样,您可以直接运行sudo apt install zsh
并使用它。
我还没有亲自测试过,但使用诸如、、等zsh
外部命令时应该没有什么区别。您应该检查 shell 功能的支持情况,例如apt-get
sed
awk
wget
定界符和echo
(这是 Bash 中的内部命令)。只要您不卸载 Bash(不要卸载),您的“Bash 字符串”就应该可以工作,但它可能不会影响zsh
。
当然,您应该在将更改部署到生产环境之前对其进行测试(像任何其他更改一样)。