Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).

#1 15-05-2011 15:58:48

Ovopack
Membre
Lieu : Lyon
Distrib. : Wheezy
(G)UI : Gnome-panel
Inscription : 25-04-2011

Automatisation de l'installation

Bonjour, je suis nouveau sur linux et j'aurrais aimé un peu d'aide pour un script d'automatisation.

J'ai appris beaucoup de chose en a peine 1 mois mais il y a quand même point sur lequel je bloque. Voila mon problème :

Après avoir découvert Debian, et moi qui suis très "Je veux un PC propre à tout prix", j'ai été dégouter en voyant qu'en installant gnome, il y avait evolution avec. Pour le retirer, j'ai cherché pendant des heures et j'ai trouver le moyen : installer toutes les dépendances de gnome-core sauf evolution : et ca marche! Ayant découvert ca, je me suis fait un script qui installe seulement les utilitaires que je souhaite :

- J'installe debian avec seulement les utilitaires de bases et ceux pour les ordinateurs portables
- J'execute mon script.

Le seul problème c'est que je dois à chaques fois tout retélécharger.... Y-a-til un moyen de stocker les packets sur un disque dur et des les installer avec aptitude?

Voici mon scprit, il se compose de install.sh, install1.sh et après avoir effectué la connexion internet, j'execute install2.sh.

PS : j'ai rajouté des commandes modifications de config (comme compiz et les blacklists) mais je n'ai pas pu tout inclure (comme la gestion de l'alimentation)


install.sh

./install1.sh > log1
alsamixer

echo ==================================================

echo Login as Ovopack
echo startx
echo install video driver
echo reboot
echo Connect to internet
echo Login as root and ./install2.sh IN log2


install1.sh

echo Copying sources.list and preferences
cp sources.list /etc/apt/
cp preferences /etc/apt/

aptitude update

echo done


echo Installing gnome


#######  gnome-www-browser

aptitude -y install linux-headers-$(uname -r) desktop-base dmz-cursor-theme eog evince file-roller gnome-about gnome-applets gnome-control-center gnome-disk-utility gnome-icon-theme gnome-keyring gnome-menus gnome-panel gnome-power-manager gnome-screensaver gnome-session gnome-settings-daemon gnome-terminal gnome-themes gtk2-engines gvfs gvfs-backends nautilus policykit-1-gnome yelp

aptitude -y install network-manager-gnome gedit ntfs-3g

echo done

echo Installing gdm3


aptitude -y install gdm3

rmmod rt2800usb
rmmod iwlagn
echo blacklist iwlagn >> /etc/modprobe.d/blacklist.conf
echo blacklist rt2800usb >> /etc/modprobe.d/blacklist.conf
echo blacklist iwlagn >> /etc/modprobe.d/blacklist.conf
depmod -a
update-initramfs -u
dpkg -i firmware-ralink_0.28_all.deb

echo done


install2.sh

wget -q http://download.virtualbox.org/virtualbox/debian/oracle_vbox.asc -O- | apt-key add -
aptitude update

echo Installing utilities



aptitude -y install gcc make automake build-essential gksu netspeed gnome-netstatus-applet gnome-applets gnome-bluetooth gnome-nettool gnome-system-log gnome-system-tools gnome-screenshot gnome-search-tool update-manager-gnome update-notifier nautilus-open-terminal nautilus-gksu


echo done

echo Installing compiz


aptitude -y install compiz compizconfig-settings-manager compiz-fusion-plugins-main compiz-gnome compiz-gtk

echo done

echo Installing softwares


aptitude -y install alacarte baobab cheese deskbar-applet gcalctool gconf-editor cpufire-applet deluge iceweasel icedove gimp vlc amsn xdg-utils inkscape alarm-clock-applet openoffice.org openoffice.org-l10n-fr openoffice.org-help-fr openoffice.org-gnome dia-gnome etherape gparted planner screenlets timer-applet zapping armagetronad mumble virtualbox wine

gconftool-2 --type string --set /desktop/gnome/session/required_components/windowmanager compiz

echo done


echo install finished


Voila merci d'avance!

PS : l'anglais, c'est normal tongue

Hors ligne

#2 15-05-2011 21:05:22

e-miel
Membre
Distrib. : Squeeze 6.0.3
Noyau : 2.6.32-5-amd64
(G)UI : Xfce 4.6.2
Inscription : 02-04-2011

Re : Automatisation de l'installation

Si tu télécharges les *.iso de Debian, tu peux les monter dans /etc/fstab puis redémarrer (ou écrire mount -a si tu veux les tester sans redémarrer) puis les définir comme dépôts pour aptitude (dans /etc/apt/sources.list). Si tu choisis les *.iso de BluRay, tu auras au maximum 2 montages supplémentaires au démarrage, et là tu pourras installer et réinstaller Debian autant que tu veux à la vitesse de l'éclair (car aucun téléchargement nécessaire) et sans que ton disque-dur ne grouille de petits fichiers avec l'espace inutilisable qui va avec (puisqu'un ISO est une archive en lecture seule, donc les fichiers y sont concaténés).

Autre solution : tu télécharges les *.deb qui t'intéressent, tu les mets dans un dossier et tu lances dpkg-scanpackages qui va te créer la liste de paquets pour aptitude.

Pourquoi as-tu écrit iwlagn deux fois :

echo blacklist iwlagn >> /etc/modprobe.d/blacklist.conf
echo blacklist rt2800usb >> /etc/modprobe.d/blacklist.conf
echo blacklist iwlagn >> /etc/modprobe.d/blacklist.conf


Sinon tu peux écrire :

echo -e "blacklist iwlagn\nblacklist rt2800usb" >> /etc/modprobe.d/blacklist.conf


ou

cat >> /etc/modprobe.d/blacklist.conf <<- EOF
        blacklist iwlagn
        blacklist rt2800usb
EOF


ce qui limitera à un seul OPEN, un seul WRITE et un seul CLOSE la modification de blacklist.conf.

Évite d'écrire :

echo Bla bla bla


écris plutôt :

echo "Bla bla bla"


car l'interpréteur de commande verra Bla, bla et bla comme 3 arguments différents (donc passés séparément à echo qui les affichera séparés d'un espace parce qu'echo est programmé comme ça) alors que les guillemets feront de Bla bla bla un seul argument comprenant déjà les espaces.

Autre remarque : tu peux inclure le contenu de install1.sh dans install.sh :

(
        echo "Copying sources.list and preferences"
        cp sources.list preferences /etc/apt/

        Toutes les lignes de commandes de install1.sh sont à déposer ici.
) > Log

alsamixer

cat <<- EOF
        ==================================================

        Login as Ovopack
        startx
        install video driver
        reboot
        Connect to internet
        Login as root and ./install2.sh IN log2
EOF


Tu peux automatiser le paramétrage de ta connexion Wifi en rajoutant 2 lignes à la fin de /etc/network/interfaces.

Je ne comprends pas bien à quoi servent tes fichiers de Log. Généralement les fichiers de Log sont destinés à être consultés ultérieurement, donc contiennent la date de chaque évènement (commande date) voire la durée d'exécution (commande time). Si tu voulais juste clouer le bec à aptitude, tu peux lui rajouter des -q pour le rendre de plus en plus silencieux.

Dernière modification par e-miel (15-05-2011 23:51:21)

Hors ligne

#3 30-08-2011 04:40:25

Ovopack
Membre
Lieu : Lyon
Distrib. : Wheezy
(G)UI : Gnome-panel
Inscription : 25-04-2011

Re : Automatisation de l'installation

Salut e-miel (voui, 3 mois plus tard). Je passais dans le coin et je suis retombé sur ce post mais je n'ai jamais reçu de notification d'email voila pourquoi je ne suis jamais revenu... (je suis pourtant abonné à la discution!)

Alors, depuis le temps, j'ai fais pas mal d'amélioration (explication plus bas):

install.sh

echo amd64 version!!!!
echo + reboot?

sleep 10

mkdir /mnt/iso-install1
mkdir /mnt/iso-install2
mkdir /mnt/iso-install3
mkdir /mnt/iso-install4
mkdir /mnt/iso-install5
mkdir /mnt/iso-install6
mkdir /mnt/iso-install7
mkdir /mnt/iso-install8

chmod +x ./montage\ amd64
./montage\ amd64

chmod +x install1.sh
chmod +x install2.sh
./install1.sh | tee log1
alsamixer

reboot


install1.sh

echo umask 077 >> /etc/.profile

chmod -R 600 /home/********

echo tmpfs

echo tmpfs /tmp     tmpfs defaults 0 0 >> /etc/fstab
echo tmpfs /var/log tmpfs defaults 0 0 >> /etc/fstab
echo tmpfs /var/tmp tmpfs defaults 0 0 >> /etc/fstab
echo tmpfs /var/lock tmpfs defaults 0 0 >> /etc/fstab

echo Copying sources.list
cp sources /etc/apt/sources.list

apt-key add oracle_vbox.asc

aptitude update

echo done

aptitude -y install debian-keyring

echo Installing gnome


#######  gnome-www-browser

aptitude -y install linux-headers-$(uname -r) desktop-base dmz-cursor-theme eog evince file-roller gnome-about gnome-applets gnome-control-center gnome-disk-utility gnome-icon-theme gnome-keyring gnome-menus gnome-panel gnome-power-manager gnome-screensaver gnome-session gnome-settings-daemon gnome-terminal gnome-themes gtk2-engines gvfs gvfs-backends nautilus policykit-1-gnome yelp

aptitude -y install network-manager-gnome gedit ntfs-3g

echo done

echo Installing gdm3


aptitude -y install gdm3

rmmod rt2800usb
rmmod iwlagn
echo blacklist rt2800usb >> /etc/modprobe.d/blacklist.conf
echo blacklist iwlagn >> /etc/modprobe.d/blacklist.conf
depmod -a
update-initramfs -u
dpkg -i firmware-ralink_0.28_all.deb

modprobe aes
modprobe dm-crypt
modprobe dm-mod

#chmod +x ati-driver-installer-11-7-x86.run
#./ati-driver-installer-11-7-x86.run
#aticonfig --initial
#aticonfig --sync-video=on --vs=on

echo done


install2.sh

echo amd64 version!!!!
echo Connection Internet?
echo tee log2?
sleep 15

chmod +x ./montage\ amd64
./montage\ amd64

aptitude update

aptitude -y install debian-keyring debian-multimedia-keyring debian-backports-keyring

aptitude update

aptitude -y full-upgrade

aptitude -y remove --purge xserver-xorg-video-radeon
aptitude -y install linux-headers-2.6-$(uname -r|sed 's,[^-] -[^-] -,,')
aptitude -y install fglrx-glx fglrx-modules-dkms fglrx-control fglrx-driver fglrx-atieventsd fglrx-glx-ia32
aticonfig --initial
aticonfig --sync-video=on --vs=on

echo                                                 Installing utilities

aptitude -y install gcc
aptitude -y install make
aptitude -y install automake
aptitude -y install build-essential
aptitude -y install gksu
aptitude -y install netspeed
aptitude -y install gnome-netstatus-applet
aptitude -y install gnome-applets
aptitude -y install gnome-bluetooth
aptitude -y install gnome-nettool
aptitude -y install gnome-system-log
aptitude -y install gnome-system-tools
aptitude -y install gnome-screenshot
aptitude -y install gnome-search-tool
aptitude -y install update-manager-gnome
aptitude -y install update-notifier
aptitude -y install nautilus-open-terminal
aptitude -y install nautilus-gksu
aptitude -y install testdisk
aptitude -y install laptop-mode-tools
aptitude -y install firestarter
aptitude -y install gparted
aptitude -y install bleachbit
aptitude -y install dsniff
aptitude -y install gnome-user-share
aptitude -y install rar
aptitude -y install wireshark
aptitude -y install gconf-editor
aptitude -y install xdg-utils
aptitude -y install etherape
aptitude -y install cryptsetup
aptitude -y install samba-*
aptitude -y install gadmin-samba

echo done

echo                                                 Installing utilities 2

aptitude -y install redshift
aptitude -y install p7zip-full
aptitude -y install libdvdcss2
aptitude -y install sun-java6-bin sun-java6-fonts sun-java6-jre sun-java6-plugin
aptitude -y install usbutils
aptitude -y install flashplugin-nonfree
aptitude -y install ntpdate
aptitude -y install startupmanager
aptitude -y install firmware-linux
aptitude -y install plymouth
aptitude -y install v86d
aptitude -y install hdparm

echo done

echo                                                 Installing compiz

#aptitude -y install compiz compizconfig-settings-manager compiz-fusion-plugins-main compiz-gnome compiz-gtk compiz-fusion-plugins-extra

#aptitude -y install fusion-icon

#gconftool-2 --type string --set /desktop/gnome/session/required_components/windowmanager compiz

echo done

echo                                                 Installing softwares



aptitude -y install unetbootin

aptitude -y install alacarte
aptitude -y install baobab
aptitude -y install cheese
aptitude -y install deskbar-applet
aptitude -y install gcalctool
aptitude -y install cpufire-applet
aptitude -y install deluge
aptitude -y install iceweasel
aptitude -y install icedove
aptitude -y install gimp
aptitude -y install vlc
aptitude -y install amsn
aptitude -y install inkscape
aptitude -y install openoffice.org openoffice.org-l10n-fr openoffice.org-help-fr openoffice.org-gnome
aptitude -y install dia-gnome
aptitude -y install planner
aptitude -y install screenlets
aptitude -y install timer-applet
aptitude -y install mumble
aptitude -y install virtualbox
aptitude -y install wine
aptitude -y install vinagre
aptitude -y install vino


echo done

echo                                                 Installing games

aptitude -y install tremulous
aptitude -y install armagetronad

echo done

aptitude update
aptitude -y safe-upgrade
aptitude clean

hdparm -c1 -d1 /dev/sda

chmod +x config
./config


echo                                                 install finished
reboot


montage amd64

mount -o loop -t iso9660 ../iso/debian-6.0.2.1-amd64-DVD-1.iso /mnt/iso-install1
mount -o loop -t iso9660 ../iso/debian-6.0.2.1-amd64-DVD-2.iso /mnt/iso-install2
mount -o loop -t iso9660 ../iso/debian-6.0.2.1-amd64-DVD-3.iso /mnt/iso-install3
mount -o loop -t iso9660 ../iso/debian-6.0.2.1-amd64-DVD-4.iso /mnt/iso-install4
mount -o loop -t iso9660 ../iso/debian-6.0.2.1-amd64-DVD-5.iso /mnt/iso-install5
mount -o loop -t iso9660 ../iso/debian-6.0.2.1-amd64-DVD-6.iso /mnt/iso-install6
mount -o loop -t iso9660 ../iso/debian-6.0.2.1-amd64-DVD-7.iso /mnt/iso-install7
mount -o loop -t iso9660 ../iso/debian-6.0.2.1-amd64-DVD-8.iso /mnt/iso-install8


config

gedit /etc/fstab
adduser unknown

nano configu
chmod +x configu
./configu


configu

mkdir /home/****
chown -R *********:******** /home/********
chmod -R 600 /home/*******


sources.list (sans preferences) :

deb file:///mnt/iso-install1 squeeze main contrib non-free
deb file:///mnt/iso-install2 squeeze main contrib non-free
deb file:///mnt/iso-install3 squeeze main contrib non-free
deb file:///mnt/iso-install4 squeeze main contrib non-free
deb file:///mnt/iso-install5 squeeze main contrib non-free
deb file:///mnt/iso-install6 squeeze main contrib non-free
deb file:///mnt/iso-install7 squeeze main contrib non-free
deb file:///mnt/iso-install8 squeeze main contrib non-free

## squeeze
deb http://ftp.fr.debian.org/debian/ squeeze main contrib non-free
deb-src http://ftp.fr.debian.org/debian/ squeeze main contrib non-free
 
## squeeze security
deb http://security.debian.org/ squeeze/updates main contrib non-free
deb-src http://security.debian.org/ squeeze/updates main contrib non-free

## squeeze updates
deb http://ftp.fr.debian.org/debian/ squeeze-updates main contrib non-free
deb-src http://ftp.fr.debian.org/debian/ squeeze-updates main contrib non-free
 
## squeeze multimedia
deb http://www.debian-multimedia.org squeeze main contrib non-free
deb-src http://www.debian-multimedia.org squeeze main contrib non-free

## squeeze-backports
deb http://backports.debian.org/debian-backports squeeze-backports main contrib non-free


Alors dans l'ordre, je me suis mis aux partitions cryptées et au LVM mais après avoir tout bien compris, les partitions cryptées me suffiront. Après l'installation de linux de base, je redémarre, je monte mon DD externe et je lance install.sh qui me monte mes iso (voui, j'y avais déjà pensé tongue ). Je précise la version amd64 car j'ai un autre portable, lui en 32 donc je dois lui faire ouvrir "montage i386" a la place, fait pour le 32 (oui, ca me fais 2x8 iso = 16iso de 4.5Go...).

Bref, ensuite une fois le montage fait, install1.sh se lance ce qui va m'installer mes outils et ma config de base. Ensuite après un reboot, je me connecte à internet (wifi donc clé à mettre et je configure en ip manuel). Je lance ensuite install2.sh | tee log2 ce qui m'installe tout mes logiciels, utilitaires et ma config avancée. Pour les aptitudes, ils étaient assez regroupés au niveau des arguments donnés mais je me suis rendu compte qu'ils continuaient d'aller chercher les packets sur internet :s donc dans le doute, j'en ai séparé mais rien ne fait. Cependant, hors connexion, il va bien les cherchers dans les iso mais à chaques packets, il me demande confirmation car il ne considèrent pas les iso comme officiels (et là, j'en ai marre de taper "yes" tout le temps).

Donc j'ai toujours ce problème de téléchargement. Cela vient-il de mon sources.list, du fait que mes iso ne sont pas reconnu comme officiel ou autre chose?

Normalement, selon mon sources.list, aptitude devrait d'abord alors chercher dans les iso, sauf s'il ne trouve pas le paquet ou qu'il existe une version supérieur dans les dépots (sauf backport qui à par défaut une priorité de 1 je crois)

Ps : les logs sont là pour que je puisse vérifier que mon installation s'est bien passée (je vais quand même pas rester pendant les 3 heures de téléchargement...)

Dernière modification par Ovopack (30-08-2011 04:54:18)

Hors ligne

Pied de page des forums