Erstellen Sie ein Skript zur Installation der Software nach einer Neuinstallation?


10

Ich bewege mich in letzter Zeit zwischen mehreren neuen Maschinen (neuer Laptop, neuer Computer bei der Arbeit usw.). Ich möchte ein Bash-Skript erstellen, um die gesamte von mir verwendete Software zu installieren. Ninite ist nicht reich genug. Ich habe keine Erfahrung mit Bash-Skripten, ich lerne es. Ich plane, die Paketnamen aptitude searchzu finden (falls sie in den Repositorys vorhanden sind) und mehrere Zeilen von zu erstellen aptitude install.

Nach der Installation von Ubuntu muss ich nur noch aptitude installieren und das Skript ausführen.

  1. Wird das Skript eine Zeile nach der anderen ausgeführt (und nicht parallel und schlägt fehl)?
  2. Kann ich eine "unbeaufsichtigte Installation" durchführen, damit das Installationsprogramm nicht zur Beantwortung auffordert (vordefinieren Sie die Antworten oder die Standardeinstellung des Benutzers)?
  3. Gibt es eine Möglichkeit, einige Systemeinstellungen per Bash-Skript zu definieren?

Wenn Sie mehr brauchen, fügen Sie es bitte in Ihre Frage @tibo
Rinzwind

Antworten:


8

Ja zu allen 3 Fragen.

Zur letzten Frage zu den Einstellungen: dconf-toolsFür viele von ihnen können Sie das Paket (im Beispiel enthalten) verwenden. Und gconftool-2für einige andere (obwohl letzteres ausläuft). Ich habe am Ende des Beispiels eine Zeile hinzugefügt. Sie können so nach ihnen suchen gsettings list-recursively | grep plugins.power|more. Dies zeigt alles an, was mit den Energieeinstellungen zusammenhängt.

Wenn Sie bedingte Befehle benötigen, können Sie &&Folgendes verwenden : {Befehl && Befehl2} gibt Befehl 2 nur aus, wenn Befehl 1 nicht fehlschlägt.


Erstellen Sie eine Textdatei, machen Sie sie ausführbar und fügen Sie ausführbare Codeteile hinzu. Beispiel mit einigen zufälligen Dingen, die ich nach der Installation mache (dazu gehört das Verknüpfen meines Hauses mit einer separaten CD (die bei der Neuinstallation nicht formatiert wird):

# Aktivieren Sie Quellen, fügen Sie PPAs hinzu und aktualisieren Sie Quellen: 
sudo sed 's / # deb / deb /' -i /etc/apt/sources.list

sudo add-apt-repository ppa: tiheum / equinox
sudo add-apt-repository ppa: am-monkeyd / nautilus-elementar-ppa
sudo apt-get update
sudo apt-get upgrade

# Symlinking Home-Ordner.
cd / discworld2 /
mkdir Desktop / Downloads / Bilder / Videos / Öffentlich / Musik / Vorlagen / Dokumente / 
CD
rm -rf Desktop / Downloads / Bilder / Videos / Öffentlich / Musik / Vorlagen / Dokumente / 
ln -s / discworld2 / Desktop / Desktop
ln -s / discworld2 / Dokumente / Dokumente
ln -s / discworld2 / Downloads / Downloads
ln -s / discworld2 / Bilder / Bilder
ln -s / discworld2 / Templates / Templates
ln -s / discworld2 / Videos Videos

# Software hinzufügen:
sudo apt-get install -y dconf-tools powertop htop compizconfig-einstellungs-manager flut vlc smplayer shutter chrom-browser käse gtk2-motoren-equinox faenza-icon-theme equinox-theme

# nautilus neu starten (erforderlich, um elementar zu aktivieren):
nautilus -q

# Sperrbildschirm entfernen

gsettings set org.gnome.desktop.screensaver lock-enabled false

# Ändern der Energieverwaltung für Einstellungen (ALTE Methode):

gconftool-2 --set --type string / apps / gnome-power-manager / kritische_batterie herunterfahren 
gconftool-2 --set --type bool / apps / gnome-power-manager / batterie_reduzieren false
gconftool-2 --set --type bool / apps / gnome-power-manager / idle_dim_battery false
gconftool-2 --set --type string / apps / gnome-power-manager / lid_ac leer
gconftool-2 --set --type string / apps / gnome-power-manager / lid_battery leer
gconftool-2 --set --type string / apps / gnome-power-manager / sleep_computer_ac 0
gconftool-2 --set --type string / apps / gnome-power-manager / sleep_computer_battery 0
gconftool-2 --set --type string / apps / gnome-power-manager / power interaktiv

Vielen Dank! zwei Fragen: 1. Warum benutzt du apt-getund nicht aptitude? Ich dachte, dass Eignung besser mit Abhängigkeiten umgeht? 2. Wie können Sie apt-getden Benutzer dazu bringen , keine Fragen zu stellen?
Roy Tsabari

1. Ich benutze immer apt-get. Wenn Sie Eignung nutzen möchten, fahren Sie fort. ABER das Mischen der 2 ist eine schlechte Praxis;) 2. Diese haben nicht um Bestätigung gebeten, aber bei Bedarf können Sie die -yOption hinzufügen .
Rinzwind

1
aptitude ist nicht einmal mehr standardmäßig installiert. Ich kenne keinen Grund, es zu benutzen. Seien Sie auch vorsichtig mit dem obigen Skript. Es scheint für ältere Ubuntu-Versionen geschrieben worden zu sein.
Mniess

@mniess wo siehst du das
Roy Tsabari

@tibo war es in 1 der Changelogs für 11.10 oder 12.04;) man aptitudegibt es heutzutage No manual entry for aptitude.
Rinzwind

2

Mit Ubuntu One können Sie installierte Anwendungen zwischen Computern synchronisieren. Die Option ist im Software-Center-Menü verfügbar.


Ist es noch anwendbar?
Nikhil

@ Nikil nein. Dieses Software-Center existiert nicht mehr. Ubuntu Once wird auch nicht synchronisiert. Im Moment würde ich dpkg --get-selections > packages.txtdas Ergebnis mit synaptic verwenden und importieren.
Mniess
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.