Próbuję zainstalować kilka plików .deb bez konieczności interakcji z nimi. Na przykład serwer MySQL poprosi o interaktywne menu do wprowadzenia hasła administracyjnego podczas konfiguracji dpkg.
Próbowałem.
export DEBIAN_FRONTEND=noninteractive && export DEBIAN_PRIORITY=critical && sudo /usr/bin/dpkg -i ./files/*
Wiem, że mogę po prostu wyodrębnić pliki bez konfiguracji. Próbuję utworzyć skrypt bash, aby wdrożyć serwer wstępnie skonfigurowany domyślnej instalacji Apache, php, mySQL itp. Jednak ta „interaktywna instalacja” powoduje problemy.
Wszelkie pomysły, jak to wyłączyć? lub obejść?
Dzięki
Odpowiedzi:
Jesteś na dobrej drodze. Zdecydowanie chcesz użyć
DEBIAN_FRONTEND=noninteractive
. W przypadku krytycznych pytań, których nie można zignorować, należy wstępnie zapisaćdebconf
bazę danych z niezbędnymi odpowiedziami.debconf
Strona człowiek ma wszelkie dane o tym, jak to osiągnąć.źródło
W przypadku ogólnej nieinteraktywnej nakładki możesz spróbować:
Aby skonfigurować poświadczenia MySQL, możesz użyć pliku konfiguracyjnego serwera (np.
~/.my.cnf
), Takiego jak:Aby wybrać określone opcje, użyj
debconf-set-selections
np .:źródło
To powinno działać:
Musiałem umieścić puste linie między liniami powyżej lub sformatowane jako jedna długa linia. W każdym przypadku możesz użyć polecenia „skrypt”, aby zapisać dane wejściowe podczas złożonych instalacji, a następnie zmodyfikować dane wyjściowe w skrypcie, aby zautomatyzować go w kolejnych instalacjach (
man script
).źródło