#1 Le 24/08/2011, à 19:04
- doraste
Problème(s) dans mon script postinstallation
Bonjour à tous,
J'aurais besoin de votre aide pour écrire un script postinstallation personnel pour Ubuntu 11.04.
J'ai déjà effectué une première ébauche en m'inspirant des script trouvés sur le net, hélas celle ci ne fonctionne pas
Merci d'être indulgent ceci est mon premier script sous linux ...
Le code est le suivant :
#!/bin/bash
#
#Recherche de la version d'Ubuntu
#
UNBUNTUVERSION=`lsb_release -cs`
#
#Ajout des nouveaux dépôt
#
sh -c 'echo "deb http://fr.archive.ubuntu.com/ubuntu/ $UBUNTUVERSION main universe multiverse restricted \n" >> /etc/apt/sources.list'
sh -c 'echo "deb http://security.ubuntu.com/ubuntu $UBUNTUVERSION-security main universe multiverse restricted \n" >> /etc/apt/sources.list'
sh -c 'echo "deb http://fr.archive.ubuntu.com/ubuntu/ $UBUNTUVERSION-updates main universe multiverse restricted \n" >> /etc/apt/sources.list'
sh -c 'echo "deb http://fr.archive.ubuntu.com/ubuntu/ $UBUNTUVERSION-proposed main universe multiverse restricted \n" >> /etc/apt/sources.list'
sh -c 'echo "deb http://archive.canonical.com/ubuntu $UBUNTUVERSION partner \n" >> /etc/apt/sources.list'
sh -c 'echo "deb http://packages.medibuntu.org/ $UBUNTUVERSION free non-free \n" >> /etc/apt/sources.list'
sh -c 'echo "deb http://dl.google.com/linux/deb/ stable main \n" >> /etc/apt/sources.list'
#
#Ajout des PPA
#
add-apt-repository ppa:tualatrix/ppa
add-apt-repository ppa:ubuntu-wine
add-apt-repository ppa:shutter
add-apt-repository ppa:libreoffice/ppa
#
#Ajout des clés
#
wget -q http://packages.medibuntu.org/medibuntu-key.gpg -O- | sudo apt-key add -
wget -q https://dl-ssl.google.com/linux/linux_signing_key.pub -O- | sudo apt-key add -
apt-key --update
#
#Mise à jour des listes
#
apt-get update
apt-get upgrade
#
#Initialisations
#
SUPPRESSION=""
AJOUT=""
#
#Création de la liste des logiciels à installer
#
AJOUT=$AJOUT"ubuntu-restricted-extras "
AJOUT=$AJOUT"non-free-codecs "
AJOUT=$AJOUT"libdvdcss2 "
AJOUT=$AJOUT"gstreamer0.10-plugins-ugly "
AJOUT=$AJOUT"regionset "
AJOUT=$AJOUT"libdvdnav4 "
AJOUT=$AJOUT"flashplugin-installer "
AJOUT=$AJOUT"libreoffice "
AJOUT=$AJOUT"libreoffice-gnome "
AJOUT=$AJOUT"texlive "
AJOUT=$AJOUT"texlive-lang-french "
AJOUT=$AJOUT"texlive-latex-extra "
AJOUT=$AJOUT"aspell-fr "
AJOUT=$AJOUT"latexila "
AJOUT=$AJOUT"inkscape "
AJOUT=$AJOUT"gimp "
AJOUT=$AJOUT"homebank "
AJOUT=$AJOUT"emacs "
AJOUT=$AJOUT"build-essential "
AJOUT=$AJOUT"samba "
AJOUT=$AJOUT"amule "
AJOUT=$AJOUT"google-chrome-stable "
AJOUT=$AJOUT"linuxdcpp "
AJOUT=$AJOUT"googleearth-4.3 "
AJOUT=$AJOUT"vlc "
AJOUT=$AJOUT"vlc-plugin-pulse "
AJOUT=$AJOUT"shutter "
AJOUT=$AJOUT"cheese "
AJOUT=$AJOUT"skype "
AJOUT=$AJOUT"deja-dup "
AJOUT=$AJOUT"revelation "
AJOUT=$AJOUT"hplip "
AJOUT=$AJOUT"hplip-gui "
AJOUT=$AJOUT"gnome-games "
AJOUT=$AJOUT"bleachbit "
AJOUT=$AJOUT"ubuntu-tweak "
AJOUT=$AJOUT"compizconfig-settings-manager "
AJOUT=$AJOUT"wine "
AJOUT=$AJOUT"gparted "
AJOUT=$AJOUT"language-support-fr "
AJOUT=$AJOUT"startupmanager "
#
#Création de la liste des logiciels à supprimer
#
SUPPRESSION=$SUPPRESSION"orca "
SUPPRESSION=$SUPPRESSION"gok gok-doc "
#
#Suppressions et installations
#
apt-get -y remove --purge $SUPPRESSION
apt-get -y install $AJOUT
#
#Autorisation d'affichage des notifications
#
gsettings set com.canonical.Unity.Panel systray-whitelist "['all']"
#
#Nettoyage du système
#
apt-get autoremove
apt-get clean
apt-get autoclean
Je comptais ensuite exécuter ce script en me plaçant dans le répertoire qui le contient et en tapant :
sudo ./nomduscript.sh
N'hésitez pas à me signaler les erreurs que y trouvez. Et si vous avez des conseils le débutant que je suis les prend volontier^^
Hors ligne
#2 Le 26/08/2011, à 12:09
- rogue-spectre
Re : Problème(s) dans mon script postinstallation
Salut,
C'est quoi qui ne marche pas ? Tu n'arrives pas à lancer le script ? Tu as pensé à le rendre exécutable ?
chmod +x ./nomduscript.sh
Sinon pour savoir ou est-ce que ça plante tu peux éventuellement insérer des affichages à l'écran
echo "on fait un truc "
Bonne journée
All who gain power are afraid to lose it
Utilisateur clavier [BÉPO] pour "plus de mots et moins de maux" : www.bepo.fr
Hors ligne
#3 Le 26/08/2011, à 15:58
- doraste
Re : Problème(s) dans mon script postinstallation
Salut,
Merci pour ta réponse.
J'avais déjà pensé à le rendre exécutable.
Cependant insérer des echo "bidule" pour tester les différentes parties je n'y avais pas pensé. Merci pour cette idée, ça va m'aider.
Bonne soirée
Hors ligne
#4 Le 27/08/2011, à 11:54
- doraste
Re : Problème(s) dans mon script postinstallation
Bonjour,
Maintenant mon script fonctionne mais j'ai un autre problème (mineur). Je ne parviens pas à rendre la fonction "apt-add-repository ppa:..." silencieuse. En effet dés que le script l’exécute j'ai un message de la forme :
gpg: requête de la clé 0624A220 du serveur hkp keyserver.ubuntu.com
gpg: clé 0624A220: « Launchpad PPA for TualatriX » n'a pas changé
gpg: Quantité totale traitée: 1
gpg: inchangée: 1
Pourtant ma commande est :
add-apt-repository ppa:tualatrix/ppa > /dev/null
Le /dev/null devrait empêcher l'affichage.
Je n'obtiens du texte en sortie que pour les PPA. Lorsque je fais "apt-add-repository http..." rien ne s'affiche.
Si vous avez une idée ...
Hors ligne
#5 Le 27/08/2011, à 13:07
- Bousky
Re : Problème(s) dans mon script postinstallation
sh -c 'echo "deb http://archive.canonical.com/ubuntu $UBUNTUVERSION partner \n" >> /etc/apt/sources.list'
Pourquoi faire si compliqué, et pas juste « echo "deb …" >> … » ? Si tu veux que « \n » soit interprété comme un saut de ligne, il faut ajouter l'option « -e » à echo.
Il y a deux sorties sur un programme : la sortie standard et la sortie d'erreurs. « > » redirige la sorti standard, « 2> » redirige les deux, « &> » redirige les deux, donc :
add-apt-repository ppa:tualatrix/ppa &> /dev/null
Mais si j'étais toi, je ne le ferais pas, ça peut toujours être utile de savoir pourquoi quelque-chose ne s'est pas passé comme prévu…
Linux qui plante complètement ? Plus rien ne répond ? On peut toujours le redémarrer proprement :
Alt + SysRq + REISUB (Retourne En Islande Sur Un Bateau !)
Hors ligne