我使用以下 bash 脚本在 Fedora 29 上运行我的本地网络服务器。执行脚本后,需要输入两次 root 密码。
#!/bin/bash
systemctl enable httpd.service
systemctl start httpd.service
systemctl start mariadb.service
如何在上面的脚本中保存 root 密码并在提示时传递相同的密码?
提前感谢您的合作。
我使用以下 bash 脚本在 Fedora 29 上运行我的本地网络服务器。执行脚本后,需要输入两次 root 密码。
#!/bin/bash
systemctl enable httpd.service
systemctl start httpd.service
systemctl start mariadb.service
如何在上面的脚本中保存 root 密码并在提示时传递相同的密码?
提前感谢您的合作。
更好的是使用sudo
命令并配置您的用户以无密码执行systemctl
命令
#!/bin/bash
sudo systemctl enable httpd.service
sudo systemctl start httpd.service
sudo systemctl start mariadb.service
这通常是一个坏主意,原因有很多。你不应该传递密码,更不用说明文了。还允许无密码执行命令,更不用说root
可能是灾难性的了。
当其他人可以访问您的系统时,绝对禁止Romeo Ninov 建议将其配置systemctl
为在没有任何提示的情况下执行,即使您自己工作也是一种糟糕的做法。
更好的主意是在 youtsudoers
文件中添加一个新条目,允许您使用 sudo 调用此脚本及其内容,而无需提示您输入root
密码。
查看这篇文章,了解如何实现这一目标。