|
Ria
Anmeldungsdatum: Aug. 4, 2009
Beiträge: 823
|

9. April 2012 14:02
Hallo Ubuntuianer, Ubuntu meint es zu gut, ich möchte nur eine Liste mit den Namen der Software um diese NEU installieren zu können,
also die richtigen Namen, die das Softwarecenter und oder Synaptic(zum richtigen Erkennen) braucht. Die z.B. "packages.list" ist doch bereits viel zu unübersichtlich, sorry. Gibt es da noch eine Möglichkeit oder muss man es sich doch auf einen Zettel schreiben?
(der Hintergrund ist, ich möchte bei einer neuen LTS absolut frisch installieren und die alten Paketinformationen müssen doch nach 3 Jahren nicht mehr stimmen oder) Gruss Ria
|
|
tomtomtom
Moderator & Supporter
Anmeldungsdatum: Aug. 22, 2008
Beiträge: 21238
Wohnort: Berlin
|

9. April 2012 14:21
Ria schrieb: ich möchte nur eine Liste mit den Namen der Software um diese NEU installieren zu können
dpkg --get-selections | awk '!/deinstall|purge|hold/ {print $1}' > packages.list erstellt eine Liste der installierten Software.
Weniger geht nicht, da stehen nur die Paketnamen drin. Wieder einspielt lässt sich das Ganze per xargs -a "packages.list" sudo apt-get install sofern alle Pakete in den Paketquellen verfügbar sind.
also die richtigen Namen, die das Softwarecenter und oder Synaptic(zum richtigen Erkennen) braucht.
Nur dpkg muss die Namen erkennen, alles andere ist Frontend.
Die z.B. "packages.list" ist doch bereits viel zu unübersichtlich, sorry.
Welche konkret? Es gibt verschiedene Möglichkeiten, eine solche zu erstellen.
|
|
Ria
(Themenstarter)
Anmeldungsdatum: Aug. 4, 2009
Beiträge: 823
|

9. April 2012 16:17
Hallo tomtomtom,
Welche konkret? Es gibt verschiedene Möglichkeiten, eine solche zu erstellen.
das war die: COLUMNS=200 dpkg-query -l > packages_list.list ja es gibt jede Menge zu dem Thema, danke Dir, Dein Vorschlag verkürzt schon etwas mehr. Scheint auch nur das anzuzeigen, was man gefahrlos löschen kann, denke ich. Ubuntu installiert mir von Haus aus einerseits viel nützliches, andererseits jede Menge, was ich noch nie ausprobiert habe. Am liebsten wäre mir eine Liste NUR der Programme, die ich nachträglich selber installiert habe. Alles andere bekommt man ja eh wieder neu(Neuinstallation). Gruss Ria
|
|
adjua
Anmeldungsdatum: Jan. 19, 2009
Beiträge: 943
|

9. April 2012 16:41
Das stimmt so nicht. Die Standardprogramme ändern sich ständig. Ich verwalte meine zusätzlichen Programme, eventuelle Fremdquellen und pakete, dienman downloaden muss, in einem Textfile, das ich dann mittels Bash-Skripts bei einer Neuinstallation auslese. Das installiert mit dann alles auf einmal, wenn ich wirklich neu aufsetzen muss oder will. Aber eine Unterscheidung, ob das System ein Programm oder Paket mitgeliefert hat oder ob Du es selber installiert hast, gibt's meines Wissens nicht. Schliesslich benutzen beide Methoden dieselben Befehle ...
|
|
Ria
(Themenstarter)
Anmeldungsdatum: Aug. 4, 2009
Beiträge: 823
|

9. April 2012 17:20
Hallo zusammen, @ adjua
Schliesslich benutzen beide Methoden dieselben Befehle ...
ja OK, ich will es auch nicht übertreiben, schließlich zu Windows sind hier die Vorteile ja schon Emens genug.
Dann benutze ich den Vorschlag von tomtomtom, dass mit dem bash kenne ich nicht, bzw. mache sowas wenn verkehrt...  Gruss Ria
|
|
adjua
Anmeldungsdatum: Jan. 19, 2009
Beiträge: 943
|

9. April 2012 18:08
Manche Programme, die anfangs nur als .deb Download zubekommen waren, haben irgendwann ein Repo oder wandern gar in die offiziellen Quellen. Andere wieder funktionieren gar nicht mehr mit einem neuen System, sodass Ersatz gesucht werden muss. Es ist also keinesfalls eine Lösung, zu versuchen, installierte Pakete, oder gar .bin oder .deb auf ein viel neueres System zu übertragen. Das Hauptproblem ist doch, das man sich nicht auf einmal an alles erinnert, was man drauf hatte, und dass apt-get install paket1 paket2 ... Soviel einfacher ist, als jedes einzeln. Ich mache von meinem Bash Hack bei jedem Ubuntu Update eine aktuelle Version und versuche, die Liste halbwegs aktuell zu halten. Auf diese Art bin ich immer sehr schnell beim Neuaufsetzen, der Aufwand hält sich in Grenzen. Wer das Skript haben will, gerne.
|
|
Ria
(Themenstarter)
Anmeldungsdatum: Aug. 4, 2009
Beiträge: 823
|

9. April 2012 18:40
Hallo adjua,
Wer das Skript haben will, gerne.
würde mich interessieren, wenn Du noch (für ne DAU)beschreiben könntest wie man es richtig einsetzt bzw. benutzt. (Script einsetzen hat immer so was kryptisches .) Gruss Ria
|
|
adjua
Anmeldungsdatum: Jan. 19, 2009
Beiträge: 943
|

9. April 2012 18:57
Für welche Version brauchst Dus? 11.10 wäre fertig, 12.04 habe ich erst 3x installiert, muss ich erst anpassen.
|
|
posti
Anmeldungsdatum: März 30, 2009
Beiträge: 2078
|

9. April 2012 19:58
<ot> *auch haben will* - allerdings eher als Reserve-Ingeneering - mochte mir nur Dein Wissen aneignen. Nutze selbst noch 10.10, wird sich aber wohl die nächsten Wochen ändern  </ot> Zum Listen erstellen habe ich diese Snippets: *benutzte Quellen auflisten
grep -P '^[ \t]*[^#[ \t]+' /etc/apt/sources.list /etc/apt/sources.list.d/*.list
*Installierte Kernel auflisten
dpkg -l linux-header* | grep ii
*Installierte Pakete auflisten
*http://wiki.ubuntuusers.de/apt-get#Paketliste-zur-Wiederherstellung-erzeugen
dpkg --get-selections | awk '!/deinstall|purge|hold/ {print $1 " " $2}' > ~/Desktop/packages.list
*SourceList kopieren (in aktuelles Verzeichnis)
cp /etc/apt/sources.list .
*Pakete aus Auflistung installieren
*1. source.list syncronisieren
*2. Liste auslesen und installieren
xargs -a "packages.list" sudo apt-get install
*http://forum.ubuntuusers.de/topic/umzug-von-ubuntu-probleme/
*1. Quellsystem Pakete auslesen
dpkg --get-selections > liste.txt
*2. Zielsystem
*PPAs ggf. neu eintragen, dann
cat liste.txt | dpkg --set-selections
apt-get dselect-upgradeMfG
|
|
adjua
Anmeldungsdatum: Jan. 19, 2009
Beiträge: 943
|

9. April 2012 21:16
Bitte sehr. Wie gesagt, 3 Beta 12.04 2x 64-Bit und 1x 32 habe ich damit schon gemacht, und viele Oneirics. Trotzdem: Wenn man mir sagt, wies besser geht, kann das dem Script nur Gutes tun  Im Readme sollte alles drin stehen, wenn nicht, bitte fragen.
- install_myaps_readme.txt (3.0 KiB)
- install_myaps_readme.txt herunterladen
- install_myaps (15.8 KiB)
- install_myaps herunterladen
- install_myaps_list (6.2 KiB)
- install_myaps_list herunterladen
|
|
Ria
(Themenstarter)
Anmeldungsdatum: Aug. 4, 2009
Beiträge: 823
|

13. April 2012 11:55
Hallo adjua, danke Dir! Werde das ausprobieren, bevor ich die neue LTS einsetze. Es sieht im Moment so aus, dass man erst mal das DASH ordentlich aufräumen muss, was ich schon immer mal vorhatte. (Schade das es keine CD ohne vorinstallierte Programme gibt). Gruss Ria
|
|
Fuchstux
Anmeldungsdatum: März 26, 2012
Beiträge: 108
Wohnort: Arktis
|

14. April 2012 10:27
Danke! Ich war gerade auf der Suche nach so etwas bezüglich des bevorstehenden Updates und bin so fast direkt fündig geworden! Wäre es viel Arbeit, auch noch ein ähnliches Skript zu schreiben, in dem die Programme aus der 4205077-install_myaps_list deinstalliert werden?
Ich habe hier gelesen, dass man alle Fremdpakete vor einem Upgrade deinstallieren sollte, da es sonst zu Problemen wegen der Abhängigkeiten kommen könnte. Ich würde dann also das Skript vor einem Upgrade laufen lassen, um von mir nachträglich installierte Programme, also auch die aus Fremdpaketen, zu deinstallieren, und dann, nach einem (hoffenlich erfolgreichen) Update das Skript erneut laufen lassen, um die nachträglich installierten Programme wieder zu installieren.
|
|
adjua
Anmeldungsdatum: Jan. 19, 2009
Beiträge: 943
|

14. April 2012 16:30
Nach demselben Prinzip zu deinstallieren, waere fuer ein script kein Problem, aber ungleich risikoreicher als zu installieren ... Aussenden soll man das install_myaps nach dem Upgrade laufen lassen, da sollten die Fremdquellen schon weg sein. Das heißt: In ein und demselben Script wäre es nicht sinnvoll. Ich hatte allerdings noch nie Probleme, und ich habe schon viele Upgrades gemacht und viele Fremdquellen verwendet.
|
|
fabianaly
Anmeldungsdatum: Okt. 9, 2010
Beiträge: 7
|

16. April 2012 20:46
Hallo, ich klinke mich hier mal ein. Da es ja heißt erst mal keinen eigenen Thread erstellen (obwohl dieser Beitrag eher in die Programmierung gehört). Mich beschäftigt gerade das Problem "adjua" auch: Die Unübersichtlichkeit solcher Paketlisten. Man möchte ja nach dem Neuinstallieren vielleicht den einen oder anderen Paket-Fehltritt nicht nochmal begehen. (Klar: die Lösung wäre, zuerst alles unnütze deinstallieren, dann Liste machen) Ich mache gerade ein Bash Experiment, in dem ich mittels debfoster aus der Paketliste alle Abhängigkeit raus kürze. Zwar noch mit brachialer Gewalt (Brute Force Ansatz): 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 | #!/bin/bash
#neue Paketliste
if [ -n $1 ];then
pkg_list=`cat $1`
else
pkg_list=`cat /Desktop/packages.list`
fi
#alte Paketlisten Zeile einlesen
while read zeile; do
#Ausgabe
echo $zeile `echo $pkg_list | wc -w`
# ist das Paket überhaupt noch in der neuen Paketliste?
res=`echo $pkg_list | grep $zeile`
if [ -n "$res" ];then
# Abhängigkeiten herausfinden
depend=`debfoster -d $zeile`
# Dann lösche alle Abhängigkeiten dieses Paketes aus der Liste
depend=`echo $depend | cut -d":" -f2`
for dep in $depend; do
pkg_list=`echo $pkg_list | sed "s/$dep //g"`
done
fi
done < $1
# Ausgabe
echo $pkg_list
echo $pkg_list > out.list
|
Funktioniert auch.. (nach kurzer Sichtprüfung) aber dauert ziemlich Um Optimierung wird gebeten... Man sieht auch den Fortschritt wie viele Pakete ohne Abhängigkeiten eigentlich nur installiert sind. Natürlich das hier zuerst:
| dpkg --get-selections | awk '!/deinstall|purge|hold/ {print $1 " " $2}' > ~/Desktop/packages.list
|
Damit habe ich die "nur eine kurze Softwareliste" die ich zu meinem Neuaufsetzen brauche ... und die eventuell hier auch gesucht war?
|
|
adjua
Anmeldungsdatum: Jan. 19, 2009
Beiträge: 943
|

17. April 2012 10:49
Ich weiss nicht, wozu das gut sein soll - ich würde es gerne verstehen. Ich habe mein (nicht allzu kunstvolles, aber für mich durchaus seit Jahren funktionales) Script gemacht, um zu automatisieren, was ich sonst händisch machen wuerde. Das heißt:
Rechner dist-upgraden oder frisch aufsetzen: Bevor man upgradet, macht man eine letzte Aktualisierung und beseitigt kaputte Abhängigkeiten. Im Zuge des Upgrade Vorgangs werden Fremdquellen ohnedies deaktiviert. --> Ich weiss also nicht, welches Problem ihr mit kaputten oder falschen Abhaengigkeiten oder Fremquellen habt.
Jetzt ist der Rechner auf die gewuenschte Version upgegradet - Software, die aus Fremdquellen oder gar aus heruntergelesenen Paketen stammt, funktioniert vielleicht nicht mehr, aber der Rechner müsste doch frei von kaputten Paketen oder kaputten Abhängigkeiten sein. Wenn nicht, gehört das repariert, bevor man weitermacht. jetzt müsste ich händisch alles nachinstallieren, was ich so auf dem Rechner sinnvoll finde. Also apt-get install dieses und jenes. Gegebenenfalls Fremquellen hinzufügen. DAS erleichtert mir nun das Script, es schlägt mir vor, was ich so im Laufe der Zeit für praktisch und gut und nicht systemzerstörerisch befunden habe, sodass ich auswaehlen kann, was ich für genau den Rechner brauche, den ich gerade in Arbeit habe. Wieder keine Probleme mit Abhängigkeiten, ausser, eine bestimmte Software macht unter der neuen Version Zicken - z.b. acroread ist manchmal so ein Kandidat - dann nehme ich sie eben aus der Liste raus.
Also, wozu muss ich Abhängigkeiten analysieren oder Pakete auflisten?
|