Question

Je suis en train de créer un script qui télécharge automatiquement les paquets pour les nouveaux serveurs. Cependant, certaines choses comme « serveur MySQL » ne peut pas installé automatiquement parce que vous devez les configurer dans l'interface ncurses premier. Je l'ai regardé à travers les pages de manuel et ne peut pas trouver quoi que ce soit approprié.

Je ne me soucie pas si je dois télécharger / modifier un fichier de configuration plus tard -. J'ai juste besoin les paquets appropriés installés

Quelqu'un sait ce qu'il faut faire en plus saisissant archives tar et construire moi-même?

UPDATE découvert que pour des choses comme mysql-server vous pouvez juste faire:

DEBIAN_FRONTEND='noninteractive' apt-get install -yq mysql-server

attendez cependant ressemble à quelque chose que je vais avoir besoin de soleil java6-jdk; ont pas encore évalué

Était-ce utile?

La solution

Pour les paquets qui posent des questions par debconf (qui est ce qui met l'affichage ncurses), vous pouvez pré-répondre aux questions. Pour le soleil java, les questions peuvent être pré-réponses en suivant les instructions à http://www.davidpashley.com/blog/debian/java-license

Autres conseils

ossramblings.com :

Tout d'abord, installez votre package normalement; puis, extraire les réponses de configuration à partir des fichiers de données debconf:

sudo apt-get install debconf-utils
sudo debconf-get-selections | grep mypackage > something.seed

Ensuite, pour les autres installations, vous pouvez l'appliquer avant d'installer le paquet:

sudo debconf-set-selections ./something.seed

Tout paquet Debian qui utilise debconf pour obtenir des valeurs de configuration peut être exécuté sans surveillance. L'astuce est que debconf recherche d'abord pré-installé réponses à toute configuration question qui a un paquet donné.

réponses de configuration préinstaller

Il suffit de créer un fichier dans le format suivant,

# Use one line for each question
package-name question-name question-type answer
package-name question-name question-type really long \
answer here
package-name question-name question-type answer
...

et l'introduire dans le système comme ceci:

$ debconf-set-selections my-selections-file

Maintenant, vous êtes prêt à apt-get install, comme d'habitude.

One-off

Étant donné que cette commande lit également de stdin, vous pouvez faire:

$ echo "man-db man-db/auto-update boolean true" | debconf-set-selections

Trouver des réponses par défaut

Comment savez-vous quels paquets utiliser ces réponses de configuration? Eh bien, si vous avez déjà installé le paquet en question de manière interactive, vous pouvez interroger votre système local pour voir quelles valeurs sont actuellement configurées. debconf-get-selections imprime une liste de toutes les réponses de configuration pour le système actuel. Par exemple

$ debconf-get-selections | grep '^man'

renvoie le message suivant sur mon système:

man-db  man-db/install-setuid   boolean false
man-db  man-db/auto-update      boolean true

Vous devrez peut-être installer le paquet debconf-utils pour rendre cette commande disponible.

Exemple

# Preset values to questions which would otherwise be asked while
# installing packages.
# Use debconf-set-selections to install
openssh-server  openssh-server/permit-root-login        boolean false
man-db  man-db/install-setuid   boolean false
man-db  man-db/auto-update      boolean true

Sources

Je ne sais pas exactement ce que la configuration des besoins mysql-serveur, mais vous pouvez essayer quelque chose comme attendre

Je regarderais dans -apt Cron. Je ne l'ai pas essayé moi-même, mais il est la description du paquet semble prometteur.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top