#1 Le 24/07/2012, à 10:24
- gguillaume017
Tentative de création d'un script de Post Install d'Ubuntu 12.04
Bonjour tout le monde !
J'essaie de créer un script de post install, le voici (pas fini, j'actualiserais dès que j'en aurais un peu plus !)
Bon, j'ai fini ! Je publie tout ça :
Pour Gnome, avec questions : http://ubuntuone.com/3fdQ0OcFltRHNbHqtIL0je (testé)
Pour Gnome, par défaut : http://ubuntuone.com/6Rbnw4xVgcl7qoDLRFyp9r (testé)
Pour KDE, avec questions : http://ubuntuone.com/6U5yS6GowDQ64PH77EixBC (testé)
Pour KDE, par défaut : http://ubuntuone.com/2274ERxwkmaZMKTzKOdiqJ
Pour les débutants que ça tente : téléchargez le script qui vous convient.
Pour le lancer :
sudo bash /chemin/ou/le/script/est/enregistré/nom_du_script
Les logiciels inclus proviennent des dépôts et contiennent : éditeur vidéo/audio/images/tags ; convertisseur audio/vidéo ; codecs/
J'aimerais savoir si il est possible de poser une question et si oui, comment. Le but est de demander si le personne veut installer Conky ou non, si oui, il y a installation, si non, on passe au suivant. -->> Résolu
Autre question, pour installer le logiciel Skype il faut avoir activé le dépôt partenaire, alors, comment, en ligne de commande, et, intégré au script, je peux faire pour modifier le sources.list (parce qu'en fait, il faut juste supprimer le ' # ' devant le dépôts Partenaire du fichier .. -->> Résolu
edit 2 : Je vais en faire un autre, plus simple avec uniquement un enchaînement de commandes, sans aucune demande de confirmation.
Merci d'avance
Dernière modification par gguillaume017 (Le 02/08/2012, à 12:45)
#2 Le 24/07/2012, à 10:40
- franckyfoys
Re : Tentative de création d'un script de Post Install d'Ubuntu 12.04
Bonjour,
pour ce qui est du fichier sources.list, j'aurais choisi de le réecrire en entier,
rm -f /etc/apt/sources.list
et tu réecris le fichier sous cette forme
cat deb http://archive.ubuntu.com/ubuntu [b]precise[/b] main restricted universe multiverse > /etc/apt/sources.list
attention a ta version (ici version 12.04)
pour poser une question dans un script, je laisse la main a d'autre :-)
Hors ligne
#3 Le 24/07/2012, à 10:44
- franckyfoys
Re : Tentative de création d'un script de Post Install d'Ubuntu 12.04
Hors ligne
#4 Le 24/07/2012, à 10:52
- gguillaume017
Re : Tentative de création d'un script de Post Install d'Ubuntu 12.04
Ah, merci !
Je connais tee pour ajouter du texte à un fichier (me semble que c'est ça !), mais je suis pas fan pour la réécriture du sources.list, je vais essayer quand même !
edit : je teste pour la question. -->> impeccable !
Dernière modification par gguillaume017 (Le 24/07/2012, à 10:59)
#5 Le 24/07/2012, à 11:38
- arieugon
Re : Tentative de création d'un script de Post Install d'Ubuntu 12.04
Bonjour gguillaume017
J'ai eu la même idée et je me suis mis au boulot. Tout d'abord je voulais que le programme (ensemble de scripts) fonctionne avec des fichiers de configuration.
Tout d'abord le fichier postinstall.conf
################################################################
# postinstall.conf
################################################################
# Fichier de configuration qui sera utilisé pour les opérations
# de postinstallation.
# Lors de l'exécution de scripts ce fichier est lu et chaque
# occurence est lu et interpété de la façon suivante:
# variable=valeur (valeur ne peut en contenir qu'une seule). Les
# autres valeurs nécessaires seront saisis lors de l'exécution
# des scripts.
################################################################
################################################################
# Nom de l'utilisateur
################################################################
user=toto
################################################################
# partition où seront stockées les données des utilisateurs
# par exemple datas=/dev/sda7 et pointMontage=/mnt/sda7 en
# fonction du partitionnement réalisé.
################################################################
datas=/dev/sda9
pointMontage=/mnt/sda9
################################################################
# Fichiers de configuration qui contiennent la liste des
# logiciels supplémentaire à installer
################################################################
filepackageslist=packages.list
################################################################
# Groupe commun à tous les utilsateurs et son ID de groupe
################################################################
usersGroupe=maison
IDusersGroupe=999
################################################################
# fichier de log
################################################################
logFile=/var/log/postinstall.log
Le fichier packages.list qui contient les logiciels à installer
# Si le premier caractere est '#' la ligne sera ignorée
# les lignes blanches sont également ignorées
# Enlever les '#' devant les logiciels que vous voulez
# installer.
#############################################"
# Logiciels
#############################################"
# Pour organiser son temps
korganizer
# Pour graver les CD/DVD et réaliser d'autres opérations
k3b
# Lecteur de musique
amarok
# Lecteur à tout faire
vlc
# Pour scanner à partir de son imprimante
xsane
# pour réaliser des sauvegardes sur disques externes
grsync
# Pour faire fonctionner sa webcam
cheese
# Mise en page et publications
#scribus
# Pour faire du montage Vidéo
#kdenlive
#openshot
#pitivi
#avedimux
# Montage sonore
#audacity
# Retouche photo et images
#mypaint
#gimp
# Dessin images vectoriels
#inkscape
# Logiciel pour imagerie médicale
#amide
# creation images et animation 3D
#blender
# Astronomie
#stellarium
# Outils de virtualisation
virtualbox
# Télécharger des anciennes émission de ARTE
#arte+7recorder-5
# Conjugaison des verbes français
#verbiste
# Cartographie d'idées
#wym
#freemind
#labyrinth
# Editeur de diagramme
#dia
# Etude de le bible
#bibletime
# dictionnaire français-latin
#felix-latin
# interface multimédia plein écran
#xbmc
#############################################
# Library et Outils supplémentaires
#############################################
# pour configurer les fonctions fraphique de Compiz-Fusion
compizconfig-settings-manager
# pour configurer l'interface graphique Unity
myunity
# pour gérer les groupes (en plus des utilisateurs)
users-admin
# Pour gérer les sources d'installation (lancer software-properties-gtk en console)
software-properties-common
# Pour lire les DVD (non optionnel)
libdvdcss2
libdvdread4
# Pour effectuer des opérations sur les fichiers son et vidéo (non optionnel)
ffmpeg
# Pour lire les fichier mp3 (non optionnel)
lame
# Pour avoir les menus de Libre Office dans la barre du haut
lo-menubar
# installateur de paquet
synaptic
gdebi
# Affichages widget (enlever les 2 '#')
#conky-all
#cairo-dock
# outils sytème supplémentaires
indicator-appmenu-tools
gnome-system-tools
gnome-tweak-tool
mesa-utils
dconf-editor
# Editeur de partitions
#gparted
Une librairie de fonctions libScripts qui seront utilisées dans le script principal postinstall
#!/bin/bash
########################################
# Pour tracer les opérations effectuées
########################################
ecrirDansLog() {
echo "${1} : le `date "+%D à %T"`" >> ${logFile}
# Affiche aussi l'action à l'écran
echo "${1}"
}
#######################
# effectuer une saisie
#######################
saisir() {
read -p "$1" reponse
ecrirDansLog "INFO : ${message} ${reponse}"
echo "${reponse}"
}
##########################################
# Installer les logiciels supplémentaires
##########################################
listerPackages() {
cat packages.list | grep -v ^# | grep -v ^$ | grep -v ' '
}
installerLogiciels() {
for logiciel in `listerPackages` ; do
# N'installe le logiciel que s'il n'est pas déjà installé
if [ -z $(which ${logiciel}) ]; then
ecrirDansLog "INFO : Installation de ${logiciel} en cours"
apt-get install -y ${logiciel} > /dev/null
retourApt=$?
if [ ${retourApt} == 0 ] ; then
ecrirDansLog "OK : Installation de ${logiciel} réalisé"
else
ecrirDansLog "ERREUR : Installation de ${logiciel} a échoué"
fi
else
ecrirDansLog "INFO : ${logiciel} est déjà installé"
fi
done
}
######################################################
# Pour ajouter une partition à monter dans /etc/fstab
######################################################
UUIDdevice() {
# Retourne l'UUID de la partition spécifiée
echo `blkid $1 | sed -e 's/UUID=\"/?/' | awk -F ? '{print $2}' | awk -F \" '{print $1}'`
}
typeDevice() {
# Retourne le type de partition spécifiée
echo `blkid $1 | sed -e 's/TYPE=\"/?/' | awk -F ? '{print $2}' | awk -F \" '{print $1}'`
}
creerPointDeMontage() {
if [ -d ${pointMontage} ]; then
ecrirDansLog "INFO : Point de montage ${pointMontage} existe déjà"
else
mkdir ${pointMontage}
ecrirDansLog "INFO : Point de montage ${pointMontage} créé"
fi
}
creerEntreeFstab() {
creerPointDeMontage
# vérifie si l'entrée ne figure pas déjà
grep ${pointMontage} /etc/fstab > /dev/null
retourGrep=$?
if [ "$retourGrep" = "0" ]; then
ecrirDansLog "INFO : /etc/fstab déjà configuré pour le montage de ${pointMontage}"
else
dossier=$(echo ${datas} | awk -F / '{print $3}')
# traite le type de partition
tPartition=`typeDevice ${datas}`
[[ ${tPartition} == ext2 ]] && typePartition=ext2
[[ ${tPartition} == ext3 ]] && typePartition=ext3
[[ ${tPartition} == ext4 ]] && typePartition=ext4
[[ ${tPartition} == ntfs ]] && typePartition=ntfs-3g
[[ ${tPartition} == vfat ]] && typePartition=vfat
[[ -e /etc/fstab.last ]] && cp /etc/fstab /etc/fstab.last
echo "# partition de données ${datas} monté sur ${pointMontage}" >> /etc/fstab
echo "UUID=`UUIDdevice ${datas}` ${pointMontage} ${typePartition} rw 0 0" >> /etc/fstab
ecrirDansLog "INFO : Partition de données ${datas} du type ${typePartition} monté sur ${pointMontage}"
fi
}
##############################################
# Configuration pour qu'un utilisateur puisse
# partager ses fichers dans /home/partage
##############################################
creerGroupeMaison() {
# S'il n'existe pas on le créé
[[ -n `grep ${usersGroupe} '/etc/group'` ]] || echo "${usersGroupe}:x:${IDusersGroupe}:" >> /etc/group \
|| ecrirDansLog "INFO : groupe ${usersGroupe} créé dans /etc/group " \
&& ecrirDansLog "INFO : groupe ${usersGroupe} déjà créé dans /etc/group "
}
creerDossierPartage() {
# création du dossier 'partage' dans la partition de données
[[ -n `mount | grep ^"${datas} on"` ]] || mount ${datas} ${pointMontage} || chmod 770 ${pointMontage}
if [ -d ${pointMontage}/partage ]; then
ecrirDansLog "INFO : ${pointMontage}/partage existe déjà"
else
mkdir ${pointMontage}/partage > /dev/null
# modification des droits pour que tous le monde puisse accéder à 'partage'
chmod 1770 ${pointMontage}/partage > /dev/null
ecrirDansLog "INFO : ${pointMontage}/partage créé"
fi
}
modifierCompteUtilisateur() {
[[ -n `mount | grep ^"${datas} on"` ]] || mount ${datas} ${pointMontage} || chmod 770 ${pointMontage}
if [ -d ${pointMontage}/${user} ]; then
ecrirDansLog "INFO : ${pointMontage}/${user} existe déjà"
else
mkdir ${pointMontage}/${user} > /dev/null
chown ${user}:${usersGroupe} ${pointMontage}/${user}
numGroupeUtilisateur=`grep ^${user} /etc/group | awk -F : '{print $3}'`
numUtilisateur=`grep ^${user} '/etc/passwd' | awk -F : '{print $3}'`
# Si le numéro de groupe est le même que celui de l'utilisateur on le modifie
if [ $numUtilisateur = $numGroupeUtilisateur ]; then
# On modifie la ligne dans /etc/passd
sed "s/${numUtilisateur}/${IDusersGroupe}/2" /etc/passwd >> /etc/passwd.new
mv /etc/passwd /etc/passwd.last ; mv /etc/passwd.new /etc/passwd
fi
fi
}
###########################################################
# Modifier les droits par defauts dans /home/user/.profile
# qui passent de 022 à 077
###########################################################
modifierDroitsParDefaut() {
# modification du fichier .profile
if [ -e /home/${user}/.profile ]; then
mv /home/${user}/.profile /home/${user}/.profile.orig
fi
if [ -e /home/${user}/.profile.orig ]; then
sed 's/#umask 022/umask 077/g' /home/${user}/.profile.orig >> /home/${user}/.profile
chown ${user}:${usersGroupe} /home/${user}/.profile
chown ${user}:${usersGroupe} /home/${user}/.profile.orig
ecrirDansLog "INFO : Les droits par défaut on été modifié dans /home/${user}/.profile"
fi
}
##########################################
# remplacement des dossiers du /home/user
# par des liens sur partition de données
##########################################
remplacerDossierParLien() {
ecrirDansLog "INFO : Le dossier /home/${user}/${dossier} existe "
cp -R /home/${user}/${dossier}/* ${pointMontage}/${user}/${dossier}/. > /dev/null
rm -Rf /home/${user}/${dossier}/* > /dev/null
#rmdir --ignore-fail-on-non-empty /home/${user}/${dossier} > /dev/null
mv /home/${user}/${dossier} /home/${user}/.${dossier}
ln -s ${pointMontage}/${user}/${dossier} /home/${user}/${dossier}
if [ -n `ls -1F | grep @$ | awk -F @ '{print $1}' | grep ${dossier} ` ] ; then
ecrirDansLog "OK : Lien /home/${user}/${dossier} sur ${pointMontage}/${user}/${dossier} a bien été créé "
else
ecrirDansLog "ERREUR : Lien /home/${user}/${dossier} n'a pas été créer "
fi
}
creerLiens() {
# Création de liens à la place des dossiers de /home/user
[[ -n `mount | grep ^"${datas} on"` ]] || mount ${datas} ${pointMontage} || chmod 770 ${pointMontage}
[[ -e /home/${user}/examples.desktop ]] && rm /home/${user}/examples.desktop > /dev/null
[[ -e /home/${user}/Données ]] || ln -s ${pointMontage}/${user} /home/${user}/Données
# Conversion des dossiers existants en liens sur la partition de données
for dossier in `ls -1F /home/${user} | grep /$ | awk -F '/' '{print $1}'`; do
if [ -d ${pointMontage}/${user}/${dossier} ]; then
ecrirDansLog "INFO : Le dossier ${pointMontage}/${user}/${dossier} existe déjà "
[[ -d /home/${user}/${dossier} ]] && remplacerDossierParLien
else
mkdir ${pointMontage}/${user}/${dossier} > /dev/null
chown ${user}:${usersGroupe} ${pointMontage}/${user}/${dossier} > /dev/null
ecrirDansLog "INFO : Création du dossier ${pointMontage}/${user}/${dossier} "
[[ -d /home/${user}/${dossier} ]] && remplacerDossierParLien
fi
done
# création du lien 'partage'
creerDossierPartage
[[ -e /home/${user}/Partage ]] || ln -s ${pointMontage}/partage /home/${user}/Partage > /dev/null || ecrirDansLog "INFO : Création du lien /home/${user}/Partage "
}
Le programme principal postinstall
#!/bin/bash
####################
# Préambule #
####################
# si le script n'est pas lancé avec le compte 'root' on sort
[[ $USER != root ]] && echo "Le script doit être lancer avec les droit administrateur : $ sudo $0" && exit 1
# fichier librairie qui contient les fonctions utilisées dans ce script
source ./libScripts
# Récupération des informations de 'postinstall.conf' pour mise en place
# de l'environnement (variables globales).
while read line ; do
ligneLue=`echo $line | grep -v \# | grep -v ^' ' | grep -v ^$`
[[ "${ligneLue}" != "" ]] && export `echo "${ligneLue}"`
done < postinstall.conf
# affiche l'utilisateur concerné et demande confirmation
clear
echo " ############################"
echo " /!\\ ATTENTION "
echo " ############################"
echo ""
if [ "${user}" = "" ]; then
echo " Il n'y pas d'utilisateur indiqué dans le"
echo " fichier de configuration 'postinstall.conf'."
echo ""
exit 1
else
echo " L'utilsateur concerné par l'ensemble des actions"
echo " que vous allez réaliser est : ${user}."
echo ""
read -p " Si c'est OK tapez O pour continuer, sinon tapez N pour quitter : " reponse
echo ""
case $reponse in n|N|q|Q) exit 1 ;; esac
fi
####################
# Fin de préambule #
####################
##########################################################
# enlever les '#' des opérations que vous voulez réaliser
##########################################################
#set -x
#----------------------- Concerne tous les utilisateurs----------------------
##########################################################################
# Crée le point de montage indiqué dans postinstall.log
##########################################################################
#creerPointDeMontage
##########################################################################
# Crée le point d'entrée dans /etc/fstab
##########################################################################
#creerEntreeFstab
##########################################################################
# Crée tout simplement le groupe commun à tous les utilisateurs
##########################################################################
#creerGroupeMaison
##########################################################################
# Met en place de dossier Partage qui permettra aux utilisateurs
# d'échanger des fchiers
##########################################################################
#creerDossierPartage
##########################################################################
# Intalle les logiciels supplémentaires indiquées dans
# le fichier 'packages.list'.
##########################################################################
installerLogiciels
#------------- À utiliser pour chaque utilisateur : Modifier le nom --------------
#-------------- de l'utilisateur dans le fichier postinstall.conf ----------------
##########################################################################
# Modifie les droits d'accès de l'utilisateurs pour éviter que chacun
# puisse aller voir ce que fait l'autre
##########################################################################
#modifierCompteUtilisateur
##########################################################################
# Modifie le fichier .profile pour être en harmonie avec l'action
# réalisée ci-dessus
##########################################################################
#modifierDroitsParDefaut
##########################################################################
# Remplace les dossiers par des liens qui pointent sur la partition
# de données
##########################################################################
#creerLiens
#set +x
Voilà. C'est encore à mettre au point, mais il y a quelques idées que vous pouvez utiliser. Cette architecture logiciel permet d'avoir un programme principal très lisible et la souplesse d'ajouter de nouveaux logiciels dans un fichier sans avoir à modifier du code. L'ajout de nouveau dépôt n'est pas traité. Amusez vous bien.
Vous pouvez vous inspirer du code pour créer d'autres fonctions. Je ne fais pas de support sur ce que j'ai écrit. Les programmes sont commentés.
Linuxement ;O)
Portable ASUS K73E : Ubuntu XFCE 20.04 / Ubuntu DDE 20.04 / Debian 10 /Debian 11 (testing) / Devuan 3
Le tout en multi-boot Grub Legacy.
Hors ligne
#6 Le 24/07/2012, à 11:51
- gguillaume017
Re : Tentative de création d'un script de Post Install d'Ubuntu 12.04
@arieugon : Merci de ton aide !
A la base, je voulais juste un truc tout simple pour pouvoir installer plus facilement/faciliter l'installation de distributions Linux chez des amis fraîchement "convertis" au logiciels libres, mais ton travail m'a l'air très intéressant. J'essaie de faire quelque chose de simple pour éviter que j'y passe des heures
#7 Le 24/07/2012, à 12:16
- franckyfoys
Re : Tentative de création d'un script de Post Install d'Ubuntu 12.04
J'ai pas trouvé une solution parfaite pour juste supprimer le #
voila ou j'en suis:
grep partner /etc/apt/sources.list |sed -e "s/#//" >> /etc/apt/sources.list
ca decoupe bien les lignes correspondantes au depot partner mais ca ne supprime pas les 2 lignes existantes (donc pas super propre)
dans l'attente de mieux ....
Hors ligne
#8 Le 24/07/2012, à 13:03
- gguillaume017
Re : Tentative de création d'un script de Post Install d'Ubuntu 12.04
Bon, ben, après lecture du man, j'ai compris a quoi servait sed ! (trop de commandes à retenir !)
Comment ça, ça ne supprime pas les deux lignes existantes ?
#9 Le 24/07/2012, à 13:10
- xavier4811
Re : Tentative de création d'un script de Post Install d'Ubuntu 12.04
Utilisez l'option "in place" pour remplacer, la tu ajoute les 2 lignes a la fin avec >>
sed -i -e's/motif_ou_regex/remplacement/' file
---------------------
EDIT
sed -i -e'/partner/ s/#//g' /etc/apt/sources.list
Dernière modification par xavier4811 (Le 24/07/2012, à 13:24)
Hors ligne
#10 Le 24/07/2012, à 13:22
- franckyfoys
Re : Tentative de création d'un script de Post Install d'Ubuntu 12.04
a oui pas mal l'option -i
sed -i -e '/partner/ s/#//' /etc/apt/sources.list
Hors ligne
#11 Le 24/07/2012, à 13:33
- gguillaume017
Re : Tentative de création d'un script de Post Install d'Ubuntu 12.04
Yep'
ça marche, mais ça m'a laissé un espace dans le sources.list (sur ma Quantal)
deb http://archive.canonical.com/ubuntu quantal partner
deb-src http://archive.canonical.com/ubuntu quantal partner
L'update marche bien, j'ajoute au script.
Dernière modification par gguillaume017 (Le 24/07/2012, à 13:35)
#12 Le 24/07/2012, à 13:48
- franckyfoys
Re : Tentative de création d'un script de Post Install d'Ubuntu 12.04
dans ce cas fait le en 2 lignes
sed -i -e '/partner/ s/#//' /etc/apt/sources.list
et
sed -i -e '/partner/ s/# //' /etc/apt/sources.list
(la modif est l'espace apres le #)
Hors ligne
#13 Le 24/07/2012, à 13:54
- xavier4811
Re : Tentative de création d'un script de Post Install d'Ubuntu 12.04
dans ce cas fait le en 2 lignes
sed -i -e '/partner/ s/#//' /etc/apt/sources.list
et
sed -i -e '/partner/ s/# //' /etc/apt/sources.list
(la modif est l'espace apres le #)
Juste la 2ème, pas les 2.
La 1ère vas supprimer le #, donc la 2ème a la suite ne trouvera pas l'expression "# " et ne changera rien.
Hors ligne
#14 Le 24/07/2012, à 14:06
- gguillaume017
Re : Tentative de création d'un script de Post Install d'Ubuntu 12.04
Celle ci a marché chez moi :
sed -i -e '/partner/ s/#//' /etc/apt/sources.list
#15 Le 24/07/2012, à 17:37
- nesthib
Re : Tentative de création d'un script de Post Install d'Ubuntu 12.04
au lieu de s/# // utilise plutôt s/^# *//, pour éviter de casser la ligne si tu as un commentaire après la déclaration du dépôt, et pour gérer l'éventuelle absence d'espace :
deb http://archive.ubuntu.com/ubuntu precise main universe # commentaire X
GUL Bordeaux : Giroll – Services libres : TdCT.org
Hide in your shell, scripts & astuces : applications dans un tunnel – smart wget – trouver des pdf – install. auto de paquets – sauvegarde auto – ♥ awk
⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdn
Hors ligne
#16 Le 24/07/2012, à 17:40
- gguillaume017
Re : Tentative de création d'un script de Post Install d'Ubuntu 12.04
Merci, je te fais confiance et c'est remplacé, je n'ai pas encore commenté les opérations, je crois que j'ai fini, si ça tente quelqu'un de vérifier l'absence d'erreurs, qu'il se fasse plaisir, je le remercie par avance
#17 Le 01/08/2012, à 15:22
- gguillaume017
Re : Tentative de création d'un script de Post Install d'Ubuntu 12.04
Je viens de le tester et la commande sed me renvoie :
Activation du dépôt Partenaires de Canonical
sed: -e expression #1, char 11: unknown command: `/'
#18 Le 01/08/2012, à 15:37
- xavier4811
Re : Tentative de création d'un script de Post Install d'Ubuntu 12.04
sed: -e expression #1, char 11: unknown command: `/'
Peut tu poster la commande sed que tu a utilisé ?
Hors ligne
#19 Le 01/08/2012, à 15:44
- gguillaume017
Re : Tentative de création d'un script de Post Install d'Ubuntu 12.04
sed -i -e '/partner/ /^# *//' /etc/apt/sources.list
#20 Le 01/08/2012, à 15:50
- xavier4811
Re : Tentative de création d'un script de Post Install d'Ubuntu 12.04
sed -i -e '/partner/ s/^# *//' /etc/apt/sources.list
Hors ligne
#21 Le 01/08/2012, à 15:57
- gguillaume017
Re : Tentative de création d'un script de Post Install d'Ubuntu 12.04
Aucun retour de message d'erreur, merci à toi
#22 Le 01/08/2012, à 16:02
- xavier4811
Re : Tentative de création d'un script de Post Install d'Ubuntu 12.04
Il te manquait le plus important , la commande "s" pour substitute
Hors ligne
#23 Le 01/08/2012, à 16:09
- gguillaume017
Re : Tentative de création d'un script de Post Install d'Ubuntu 12.04
Merci à vous tous de m'avoir aidé et j'espère que ça pourra servir à quelqu'un !
#24 Le 24/10/2012, à 15:11
- ek0892
Re : Tentative de création d'un script de Post Install d'Ubuntu 12.04
oui ça m' a servi .
j'ai ajouté :
sudo sed -i -e '/partner/ s/^## */###/' /etc/apt/sources.list
sudo sed -i -e '/partner/ s/^# *//' /etc/apt/sources.list
la première ligne ajout un # s'il y a deux ##, ça évite de retirer les ## des ligne de commentaires, surtout si tu lances plusieurs fois ton scripts, sans cela du casse ton fichier
Dernière modification par ek0892 (Le 24/10/2012, à 15:11)
Hors ligne
#25 Le 24/10/2012, à 16:20
- nesthib
Re : Tentative de création d'un script de Post Install d'Ubuntu 12.04
Si tu ne veux prendre en compte que les lignes de dépôt il te suffit de faire :
sudo sed -i '/partner/s/^# *deb/deb/' /etc/apt/sources.list
GUL Bordeaux : Giroll – Services libres : TdCT.org
Hide in your shell, scripts & astuces : applications dans un tunnel – smart wget – trouver des pdf – install. auto de paquets – sauvegarde auto – ♥ awk
⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdn
Hors ligne