如何将密码从 bash 脚本传递到 aptitude 以安装 mysql?

2022-01-24 00:00:00 bash ubuntu installation debian mysql

我正在编写一个简单的 bash 脚本来在 Ubuntu 上安装 MySQL.

I am writing a simple bash script to install MySQL on Ubuntu.

#!/bin/bash
apt-get update

# Install MySQL5 
aptitude -y install mysql-server mysql-client libmysqlclient15-dev

但是 MySQL 会提示输入密码并进行确认.如何传递根密码.有没有可以使用的回声?

However MySQL prompts for a password and confirmation. How do I pass along a root password. Is there an echo I can use?

推荐答案

这样容易多了..

在没有密码提示的情况下在ubuntu上安装mysql

sudo debconf-set-selections <<< 'mysql-server-5.1 mysql-server/root_password password your_password'
sudo debconf-set-selections <<< 'mysql-server-5.1 mysql-server/root_password_again password your_password'
sudo apt-get -y install mysql-server

如果您的 shell 不支持 here-strings(zsh、ksh93 和 bash 支持它们),请使用:

If your shell doesn't support here-strings (zsh, ksh93 and bash support them), use:

echo ... | sudo debconf-set-selections 

相关文章