Je vais installer quelques ordinateurs à usage général sur l'un des bancs de travail de mon laboratoire.
Il y a toute une série de référentiels PPA et d'applications à partir des référentiels Ubuntu que j'aimerais installer après une installation initiale d'Ubuntu.
Est-il possible d'écrire un script qui installera toutes ces applications et PPA en une fois, m'obligeant à ne double-cliquer que sur le script exécutable et à saisir le mot de passe de l'administrateur?
J'imagine que ce serait assez simple. Quelqu'un pourrait-il m'indiquer un bref tutoriel ou peut-être même fournir un modèle de script afin que je puisse ajouter les noms PPA et les packages apt-get install?
Merci.
J'ai utilisé le script simple ci-dessous pour ajouter les PPA texworks et Ubuntu GIS, puis installer texworks et Quantum Gis à partir de leurs sources respectives. Vous pouvez le développer en ajoutant les autres PPA et les noms de package à la ligne de commande apt-get install.
#!/bin/bash
echo "Adding PPAs"
add-apt-repository ppa:texworks
add-apt-repository ppa:ubuntugis/ubuntugis-unstable
echo "updating repositories"
apt-get update
echo "Installing packages"
apt-get install texworks qgis
echo "Finished adding PPAs and insatlling applications"
exit 0
Un script bash ferait ce que vous demandez très facilement.
Voici un lien vers un bon guide de script bash que j'utilise: http://tldp.org/LDP/abs/html/
Pour le dire simplement, vous devez appeler 3 commandes pour installer à partir d'un PPA
Si vous voulez passer directement à un exemple, j'ai écrit un article de blog d'un de ces scripts automatisés bash pour installer des applications de différentes sources:
Dans le script, je demande les autorisations root pour le script à l'avance, de sorte que les commandes ne doivent pas nécessairement être exécutées avec Sudo, comme vous l'avez demandé.
Un exemple spécifique d'installation à partir d'un PPA est présenté dans l'article lors de l'installation d'une version différente de libnotify.
Pour une installation sans surveillance d'une liste de paquets et l'ajout de plusieurs ppa à notre système, nous pouvons utiliser le script suivant:
#! /bin/bash
# Save as e.g. 'uptodate' and make executable
# Usage:
# Sudo ./uptodate <mysources> <packages>
Sudo cp $1 /etc/apt/sources.list.d/mysource.list
Sudo apt-get update
xargs -a "$2" Sudo apt-get -y install
Le script a deux arguments. Le premier est un fichier (par exemple, mysources
) dans le répertoire du script où nous avons enregistré une liste de nos sources de logiciels conformément aux spécifications de sources.list , par exemple:
deb http://ppa.launchpad.net/<maintainer>/<name>/<ubuntu> <release> main
deb http://ppa.launchpad.net/<other_maintainer>/<name>/<ubuntu> <release> main
...
Remplacer toutes les variables par les valeurs souhaitées
Le deuxième argument est un fichier (par exemple packages
) avec une liste de packages que nous souhaitons installer au format par exemple:
packagename
otherpackage
...
Enregistrez le script avec, par exemple, le nom uptodate
, rendez-le exécutable et exécutez-le à partir d'un terminal:
cd /directory/of/script
Sudo ./uptodate mysources packages
Il copie simplement notre liste mysources
dans /etc/sources.list.d/mysources.list
, met à jour les informations sur les paquets et installe tous les paquets de la liste packages
que nous avons fournie en utilisant xargs .
Remarque: il se peut que nous devions également télécharger une clé valide à partir du tableau de bord du tableau de bord pour pouvoir l'installer à partir du ppa que nous avons ajouté.
Sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 72D340A3
Remplacez la clé de signature (ici 72D340A3) par la clé appropriée
Remarque 2: Il est judicieux d'exécuter le script dans un terminal et non par un double-clic car nous souhaitons connaître les erreurs.