Gelöst: apt oder aptitude

Warum Debian und/oder eine seiner Spielarten? Was muss ich vorher wissen? Wo geht es nach der Installation weiter?
Antworten
ludger
Beiträge: 237
Registriert: 13.10.2004 18:30:02
Wohnort: Köln

Gelöst: apt oder aptitude

Beitrag von ludger » 11.03.2020 17:27:07

Hallo,
obwohl ich jetzt sehr viel, wenn auch teilweise ziemlich alte Artikel zu dem Thema gelesen habe, finde ich keine eindeutige Antwort auf die Frage, welches der beiden Programme eigentlich eher zu empfehlen ist.

Hier im Forum habe ich gelesen, dass KBDCALLS grundsätzlich nur noch aptitude vewendet, weil apt (oder apt-get) ihm mal ein paar "Überraschungen" (meine Wortwahl) bereitet hat, und TomL empfiehlt in mehreren Threads eher apt update und apt full-upgrade, wenn ich das richtig in Erinnerung habe.

Meine 1. Frage:
Ist es nun eine Frage des persönlichen Geschmacks, welches Programm Ihr Fachleute benutzt, oder gibt es sachliche Gründe, dass z. B. ein Programm wirklich "besser" ist als das andere?

Meine 2. Frage, wenn das erlaubt ist:
Oft wird davor gewarnt, apt und aptitude nicht im Wechsel zu benutzen. Bisher habe ich apt-get bzw. apt benutzt für das Upgrade des Systems. Wenn ich jetzt auf aptitude wechseln will, muss ich dann vorher noch irgendetwas machen, oder reicht es, einfach ein aptitude update zu machen und dann bei aptitude zu bleiben?
(Wobei für mich die textbasierte Oberfläche von aptitude ein Buch mit sieben Siegeln ist, wenn, würde ich aptitude nur in der Kommandozeile nutzen.) Ansonsten nutze ich ohnehin lieber synaptic.

Danke für Eure Antworten
ludger
Zuletzt geändert von ludger am 11.03.2020 18:21:34, insgesamt 1-mal geändert.

fischig
Beiträge: 3639
Registriert: 24.12.2019 12:25:08
Lizenz eigener Beiträge: MIT Lizenz

Re: apt oder aptitude

Beitrag von fischig » 11.03.2020 18:14:47

Hier im Forum habe ich gelesen, dass KBDCALLS grundsätzlich nur noch aptitude vewendet, weil apt (oder apt-get) ihm mal ein paar "Überraschungen" (meine Wortwahl) bereitet hat, und TomL empfiehlt in mehreren Threads eher apt update und apt full-upgrade
Hier mixt du Dinge zusammen, die man besser auseinanderhalten sollte. Ein upgrade/full-upgrade kannst du mit allen drei frontends (apt, apt-get, aptitude) machen. Bei apt-get heißt es zwar dist-upgrade statt full-upgrade und wie's aptitude nennt, weiß ich nicht, aber in diesem Fall bewirken alle dasselbe. Soweit mir bekannt, ist die Wahl letztlich Geschmackssache, bzw Sache persönlicher Präferenzen.

Benutzeravatar
smutbert
Moderator
Beiträge: 8331
Registriert: 24.07.2011 13:27:39
Wohnort: Graz

Re: apt oder aptitude

Beitrag von smutbert » 11.03.2020 18:17:27

1.
Ja, das ist wohl eine Frage des persönlichen Geschmacks.
aptitude ist halt ein bisschen mehr als nur ein Frontend für apt/apt-get und bemüht sich zum Beispiel Abhängigkeiten in schwierigen Situationen schlauer aufzulösen als apt es tut. Mir gefällt apt besser, weil ich es zu verstehen glaube.

aptitude erinnert mich an vielerlei Hinsicht an das fast schon in Vergessenheit geratene Debiandselect das üblich war und empfohlen wurde als ich mit Debian das erste Mal in Berührung gekommen bin. Obwohl mir das besser gefallen hat als jetzt aptitude ist mir apt/apt-get lieber.

2.
Dass davon abgeraten wird aptitude und apt/apt-get zu verwenden kann daran liegen, dass aptitude die Abhängigkeiten mitunter anders auflöst. Möglicherweise speichert es selbst auch Dinge abseits von apt und das passt dann mitunter nicht mehr zum aktuellen Stand laut apt, wenn man auch apt/apt-get verwendet? (Das ist jetzt nur Mutmaßung.)

Probleme beim Wechsel zwischen apt/apt-get und aptitude werden in beide Richtungen die Ausnahme sein (und wenn sie auftreten lösbar sein). Man wird also kaum Schwierigkeiten beim Umstieg von einem auf das andere haben, aber beim ständigen Wechsel zwischen den beiden steigt die Wahrscheinlichkeit für Probleme halt deutlich und ich sähe auch keinen Sinn darin.

ludger
Beiträge: 237
Registriert: 13.10.2004 18:30:02
Wohnort: Köln

Re: apt oder aptitude

Beitrag von ludger » 11.03.2020 18:20:46

Alles klar! Ich danke Euch!

ludger

tijuca
Beiträge: 297
Registriert: 22.06.2017 22:12:20

Re: apt oder aptitude

Beitrag von tijuca » 11.03.2020 18:25:25

apt-get ist die bevorzugte Wahl für Scripte da Änderungen im Verhalten der einzelnen Optionen extrem konservativ durchgeführt werden. Bei apt kann es dagegen schon mal zu Änderungen im Verhalten zwischen zwei direkt aufeinander folgender Versionen kommen. aptitude ist quasi genauso statisch vom Verhalten her wie apt und kann dafür Pattern Matching etc. Das wird nun aber auch Einzug in apt (mit Version 2.0) halten. Siehe hierzu den Blogpost vom Hauptmaintainer. Allerdings sollte man sich entweder für apt/apt-get oder aptitude entscheiden, aptitude verwaltet Paketdaten mit einem eigen Datenformat/-backend.

Benutzeravatar
novalix
Beiträge: 1909
Registriert: 05.10.2005 12:32:57
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: elberfeld

Re: apt oder aptitude

Beitrag von novalix » 11.03.2020 18:31:22

Kurze Antwort:
Wenn Dir die Einarbeitung in aptitude (insbesondere in das Text User Interface) zu aufwändig ist, dann bleib bei apt(-get).

Etwas längere Antwort:
Die Unvereinbarkeit von apt(-get) und aptitude ist lange passé. Allerdings ist es ratsam bei Distributionswechseln ggf. auf aptitude zu verzichten (z.B. stretch -> buster), da es nicht unbedingt ausgiebig getestet wird.

aptitude hat einen etwas größeren Leistungsumfang. Hervorzuheben sind hier die Abhängigkeitsauflösung und das TUI.
Der Umgang damit will aber gelernt sein. Wenn man sich (das antut || darauf einlässt) wird man mit erhöhter Übersicht und besseren Steuerungsmöglichkeiten im Paketverwaltungsprozess belohnt.
Das Wem, Wieviel, Wann, Wozu und Wie zu bestimmen ist aber nicht jedermannns Sache und ist nicht leicht.
Darum ist das Richtige selten, lobenswert und schön.

TomL

Re: Gelöst: apt oder aptitude

Beitrag von TomL » 11.03.2020 18:54:36

Ich verwende apt-get gar nicht mehr, sondern nur noch apt. Und aptitude ist in besonderen Fällen meine Wahl, wenn ich nach bestimmten Abhängigkeiten suchen will, also wo kommt ein bestimmtes Paket her und warum ist es da ... dafür hat aptitude nach meinem Kenntnisstand deutlich bessere Möglichkeiten.

Und mal als Tip für die Paketsuche mit 'apt search', die ich bei apt im Vergleich zu dsf gar nicht toll finde... dafür habe ich mir mithilfe dieses Forums ein Script gebastelt:

Code: Alles auswählen

# apt search midnight
Sortierung... Fertig
Volltextsuche... Fertig
avfs/stable 1.0.6-1 amd64
  virtual filesystem to access archives, disk images, remote locations

junior-system/stable 1.29 all
  Debian Jr. System tools

krusader/stable 2:2.7.1-1 amd64
  Dateimanager mit zwei Dateiansichten (Commander-Stil)

lfm/stable 3.1-2 all
  simple but powerful file manager for the UNIX console

libdate-jd-perl/stable 0.006-1 all
  conversion between flavours of Julian Date

libpgobject-type-datetime-perl/stable 2.000001-1 all
  DateTime Wrappers for PGObject

mc/stable,now 3:4.8.22-1 amd64  [installiert]
  Midnight Commander - ein mächtiger Dateimanager

mc-data/stable,now 3:4.8.22-1 all  [Installiert,automatisch]
  Midnight Commander - ein mächtiger Dateimanager - Datendateien

moc/stable 1:2.6.0~svn-r2994-3 amd64
  Befehlszeilen-Audioplayer auf Grundlage von ncurses

pilot/stable 2.21+dfsg1-1.1 amd64
  Einfacher Dateibrowser von Alpine, einem textbasierten Email-Client

texlive-plain-generic/stable 2018.20190227-2 all
  TeX Live: Plain (La)TeX packages

tuxcmd/stable 0.6.70+dfsg-2+b1 amd64
  GTK+2-Dateimanager mit Zwillings-Fenstern (im Commander-Stil)
Meine Variante:

Code: Alles auswählen

# aptsearch midnight
Sortierung...                                                         
avfs/stable 1.0.6-1                                                   virtual filesystem to access archives, disk images, remote locations 
junior-system/stable 1.29                                             Debian Jr. System tools 
krusader/stable 2:2.7.1-1                                             Dateimanager mit zwei Dateiansichten (Commander-Stil) 
lfm/stable 3.1-2                                                      simple but powerful file manager for the UNIX console 
libdate-jd-perl/stable 0.006-1                                        conversion between flavours of Julian Date 
libpgobject-type-datetime-perl/stable 2.000001-1                      DateTime Wrappers for PGObject 
mc/stable,now 3:4.8.22-1                                              Midnight Commander - ein mächtiger Dateimanager 
mc-data/stable,now 3:4.8.22-1                                         Midnight Commander - ein mächtiger Dateimanager - Datendateien 
moc/stable 1:2.6.0~svn-r2994-3                                        Befehlszeilen-Audioplayer auf Grundlage von ncurses 
pilot/stable 2.21+dfsg1-1.1                                           Einfacher Dateibrowser von Alpine, einem textbasierten Email-Client 
texlive-plain-generic/stable 2018.20190227-2                          TeX Live: Plain (La)TeX packages 
tuxcmd/stable 0.6.70+dfsg-2+b1                                        GTK+2-Dateimanager mit Zwillings-Fenstern (im Commander-Stil)

# cat /usr/local/bin/aptsearch
#!/bin/bash
apt search $@ | awk '!/^  /&&NR>1{print OFS}{printf $0}END{print OFS}' | sed 'n;d' | sed 's/ amd64  /#/g;s/ all  /#/g;s/installiert//I;s/,automatisch//I; s/\[\]  //g' | awk -F '#' '{printf "%-70s%s\n", $1,$2}'
Zuletzt geändert von TomL am 14.03.2020 20:10:28, insgesamt 1-mal geändert.

willy4711

Re: Gelöst: apt oder aptitude

Beitrag von willy4711 » 11.03.2020 19:00:30

Ich benutze einen bunten Mix von allem.
Der Debianpackage-update-indicator zeigt mir Updates an. Von da starte ich ein Skript das aptitude werkeln lässt.
Warum ? weil ich den Log von Aptitude übersichtlicher finde, der mir nach dem Update angezeigt wird.
Ansonsten benutze ich ein paar "Spezial- Kommandos" von Aptitude und ziehe es zu rate, wenn es mal (selten)
Problem mit apt gibt.
Alles benutze ich nur auf der Befehlszeile.
Beim Text User Interface von Aptitude bekomme ich Gehirnsausen und mach das ganz schnell wieder zu. :facepalm:
Unterschied apt /aptitude Logs:

Apt:

Code: Alles auswählen

Start-Date: 2020-03-02  11:03:42
Requested-By: willy (1000)
Install: libisc-export1105:amd64 (1:9.11.16+dfsg-2, automatic), libisc1105:amd64 (1:9.11.16+dfsg-2, automatic), libdns-export1109:amd64 (1:9.11.16+dfsg-2, automatic), libdns1109:amd64 (1:9.11.16+dfsg-2, automatic)
Upgrade: libisccfg163:amd64 (1:9.11.14+dfsg-3, 1:9.11.16+dfsg-2), libirs161:amd64 (1:9.11.14+dfsg-3, 1:9.11.16+dfsg-2), bind9-host:amd64 (1:9.11.14+dfsg-3, 1:9.11.16+dfsg-2), dnsutils:amd64 (1:9.11.14+dfsg-3, 1:9.11.16+dfsg-2), isc-dhcp-common:amd64 (4.4.1-2.1, 4.4.1-2.1+b1), liblwres161:amd64 (1:9.11.14+dfsg-3, 1:9.11.16+dfsg-2), libisccc161:amd64 (1:9.11.14+dfsg-3, 1:9.11.16+dfsg-2), libbind9-161:amd64 (1:9.11.14+dfsg-3, 1:9.11.16+dfsg-2), isc-dhcp-client:amd64 (4.4.1-2.1, 4.4.1-2.1+b1)
Remove: libisc-export1104:amd64 (1:9.11.14+dfsg-3), libisc1104:amd64 (1:9.11.14+dfsg-3), libdns-export1107:amd64 (1:9.11.14+dfsg-3), libdns1107:amd64 (1:9.11.14+dfsg-3)
End-Date: 2020-03-02  11:03:46

Aptitude:

Code: Alles auswählen

Aptitude 0.8.12: log report
Mon, Mar  2 2020 11:03:41 +0100

  IMPORTANT: this log only lists intended actions; actions which fail
  due to dpkg problems may not be completed.

Will install 13 packages, and remove 4 packages.
78.8 kB of disk space will be used
========================================
[REMOVE, NOT USED] libdns-export1107:amd64 1:9.11.14+dfsg-3
[REMOVE, NOT USED] libdns1107:amd64 1:9.11.14+dfsg-3
[REMOVE, NOT USED] libisc-export1104:amd64 1:9.11.14+dfsg-3
[REMOVE, NOT USED] libisc1104:amd64 1:9.11.14+dfsg-3
[INSTALL, DEPENDENCIES] libdns-export1109:amd64 1:9.11.16+dfsg-2
[INSTALL, DEPENDENCIES] libdns1109:amd64 1:9.11.16+dfsg-2
[INSTALL, DEPENDENCIES] libisc-export1105:amd64 1:9.11.16+dfsg-2
[INSTALL, DEPENDENCIES] libisc1105:amd64 1:9.11.16+dfsg-2
[UPGRADE] bind9-host:amd64 1:9.11.14+dfsg-3 -> 1:9.11.16+dfsg-2
[UPGRADE] dnsutils:amd64 1:9.11.14+dfsg-3 -> 1:9.11.16+dfsg-2
[UPGRADE] isc-dhcp-client:amd64 4.4.1-2.1 -> 4.4.1-2.1+b1
[UPGRADE] isc-dhcp-common:amd64 4.4.1-2.1 -> 4.4.1-2.1+b1
[UPGRADE] libbind9-161:amd64 1:9.11.14+dfsg-3 -> 1:9.11.16+dfsg-2
[UPGRADE] libirs161:amd64 1:9.11.14+dfsg-3 -> 1:9.11.16+dfsg-2
[UPGRADE] libisccc161:amd64 1:9.11.14+dfsg-3 -> 1:9.11.16+dfsg-2
[UPGRADE] libisccfg163:amd64 1:9.11.14+dfsg-3 -> 1:9.11.16+dfsg-2
[UPGRADE] liblwres161:amd64 1:9.11.14+dfsg-3 -> 1:9.11.16+dfsg-2
========================================

Log complete.

JTH
Moderator
Beiträge: 3023
Registriert: 13.08.2008 17:01:41
Wohnort: Berlin

Re: apt oder aptitude

Beitrag von JTH » 11.03.2020 19:28:49

tijuca hat geschrieben: ↑ zum Beitrag ↑
11.03.2020 18:25:25
Allerdings sollte man sich entweder für apt/apt-get oder aptitude entscheiden, aptitude verwaltet Paketdaten mit einem eigen Datenformat/-backend.
Das ist schon länger kein Problem mehr. apt und aptitude benutzen die selbe Datenbank für die Info, welche Pakete manuell oder automatisch installiert wurden.

Für mich geht ansonsten nichts über aptitude. Habe mal versucht, mich an apt zu gewöhnen – aber es geht einfach nichts über die ncurses-Oberfläche von aptitude, zum Suchen oder um längere Abhängigkeitsketten ziemlich schnell nachzuvollziehen.
Manchmal bekannt als Just (another) Terminal Hacker.

ludger
Beiträge: 237
Registriert: 13.10.2004 18:30:02
Wohnort: Köln

Re: apt oder aptitude

Beitrag von ludger » 11.03.2020 20:34:37

Danke an alle, die sich später noch gemeldet haben! Aus den vielen Antworten, kann ein Laie wie ich viel lernen!
Das ist schon länger kein Problem mehr. apt und aptitude benutzen die selbe Datenbank für die Info, welche Pakete manuell oder automatisch installiert wurden.
@JTH: Das hatte ich bisher noch nicht kapiert! In den Tutorials und Artikeln, die ich gelesen habe, wurde das nicht erwähnt! Vielen Dank für diese Information!

ludger

tijuca
Beiträge: 297
Registriert: 22.06.2017 22:12:20

Re: apt oder aptitude

Beitrag von tijuca » 13.03.2020 07:27:55

JTH hat geschrieben: ↑ zum Beitrag ↑
11.03.2020 19:28:49
Das ist schon länger kein Problem mehr. apt und aptitude benutzen die selbe Datenbank für die Info, welche Pakete manuell oder automatisch installiert wurden.
Woher nimmst Du diese Information bzw. kannst dies belegen? Die Seiten aus den Manuals sagen etwas anderes (und ich kenne dies eben auch nur so speziell auf diesen einen Punkt den Du hier aufführst).
man aptitude

Code: Alles auswählen

...
       search
           Searches for packages matching one of the patterns supplied on the command line. All packages which match any of the
           given patterns will be displayed; for instance, „aptitude search '~N' edit“ will list all „new“ packages and all
           packages whose name contains „edit“. For more information on search patterns, see the section „Search Patterns“ in the
           aptitude reference manual.

               Anmerkung
               In the example above, „aptitude search '~N' edit“ has two arguments after search and thus is searching for two
               patterns: „~N“ and „edit“. As described in the search pattern reference, a single pattern composed of two
               sub-patterns separated by a space (such as „~N edit“) matches only if both patterns match. Thus, the command
               „aptitude search '~N edit'“ will only show „new“ packages whose name contains „edit“.
           Unless you pass the -F option, the output of aptitude search will look something like this:

               i   apt                             - Advanced front-end for dpkg
               pi  apt-build                       - frontend to apt to build, optimize and in
               cp  apt-file                        - APT package searching utility -- command-
               ihA raptor-utils                    - Raptor RDF Parser utilities

           Each search result is listed on a separate line. The first character of each line indicates the current state of the
           package: the most common states are p, meaning that no trace of the package exists on the system, c, meaning that the
           package was deleted but its configuration files remain on the system, i, meaning that the package is installed, and v,
           meaning that the package is virtual. The second character indicates the stored action (if any; otherwise a blank space
           is displayed) to be performed on the package, with the most common actions being i, meaning that the package will be
           installed, d, meaning that the package will be deleted, and p, meaning that the package and its configuration files will
           be removed. If the third character is A, the package was automatically installed.

           For a complete list of the possible state and action flags, see the section „Accessing Package Information“ in the
           aptitude reference guide. To customize the output of search, see the command-line options -F and --sort.

...

DATEIEN
       /var/lib/aptitude/pkgstates
           The file in which stored package states and some package flags are stored.
man apt-mark

Code: Alles auswählen

...
       showauto
           showauto wird benutzt, um eine Liste automatisch installierter Pakete – mit einem Paket in jeder neuen Zeile –
           auszugeben. Wenn kein Paket angegeben ist, werden alle automatisch installierten Pakete aufgelistet. Falls Pakete
           angegeben sind, werden nur diejenigen angezeigt, die automatisch installiert wurden.

...

DATEIEN
       /var/lib/apt/extended_states
           Statusliste automatisch installierter Pakete Konfigurationselement: Dir::State::extended_states.

JTH
Moderator
Beiträge: 3023
Registriert: 13.08.2008 17:01:41
Wohnort: Berlin

Re: apt oder aptitude

Beitrag von JTH » 13.03.2020 08:27:15

tijuca hat geschrieben: ↑ zum Beitrag ↑
13.03.2020 07:27:55
Woher nimmst Du diese Information bzw. kannst dies belegen?
Das ist ne gute Frage, die eine passende Quelle im Changelog o.ä. hab ich letztens nicht gefunden. War mir nur sicher, das mal gelesen zu haben.

Ein paar Anhaltspunkte:
Nachtrag: Heureka:
/usr/share/doc/aptitude/NEWS hat geschrieben:

Code: Alles auswählen

[2007-06-15]
Version 0.4.5.1                             "Nothing could possibly go
                                             wrAAAAAAAAAAaaaa..."

- New features:

  * aptitude now uses apt's central database to track which packages
    are auto-installed.  Aptitude's own list of automatic packages
    will be merged into the global list the first time that aptitude
    is run.
apt gemischt mit aptitude ist also schon seit ein paar Jährchen kein Problem mehr ;)
Zuletzt geändert von JTH am 14.03.2020 10:09:32, insgesamt 2-mal geändert.
Manchmal bekannt als Just (another) Terminal Hacker.

Radfahrer

Re: Gelöst: apt oder aptitude

Beitrag von Radfahrer » 13.03.2020 19:11:59

tijuca hat geschrieben: ↑ zum Beitrag ↑
13.03.2020 07:27:55
Woher nimmst Du diese Information bzw. kannst dies belegen?
Das Mischen von apt-get und aptitude ist schon seit spätestens Lenny kein Problem mehr und wurde damals auch sehr oft hier im Forum thematisiert.
Ich nutze auch apt, apt-get und aptitude seit Jahren fröhlich uind wahllos durcheinander. Probleme hat es nie gegeben.

Benutzeravatar
TRex
Moderator
Beiträge: 8069
Registriert: 23.11.2006 12:23:54
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: KA

Re: Gelöst: apt oder aptitude

Beitrag von TRex » 14.03.2020 08:32:24

Danke @JTH, damit ist der Thread in meinen Bookmarks gelandet :)
Jesus saves. Buddha does incremental backups.
Windows ist doof, Linux funktioniert nichtDon't break debian!Wie man widerspricht

inne
Beiträge: 3281
Registriert: 29.06.2013 17:32:10
Lizenz eigener Beiträge: GNU General Public License
Kontaktdaten:

Re: Gelöst: apt oder aptitude

Beitrag von inne » 14.03.2020 09:21:56

Unter testing/sid kann aptitude schon mal weiterhelfen, um Abhängigkeitsprobleme zu lösen.

halo44
Beiträge: 703
Registriert: 12.05.2015 15:19:13

Re: Gelöst: apt oder aptitude

Beitrag von halo44 » 14.03.2020 13:42:31

TomL hat geschrieben: ↑ zum Beitrag ↑
11.03.2020 18:54:36
...# cat /usr/local/bin/aptsearch
#!/bin/bash
apt search $@ | awk '!/^ /&&NR>1{print OFS}{printf $0}END{print OFS}' | sed 'n;d' | sed 's/ amd64 /#/g;s/ all /#/g;s/installiert//I;s/,automatisch//I; s/\[\] //g' | awk -F '#' '{printf "%-70s%s\n", $1,$2}
Da fehlt das abschliessende '

Gruss H.

TomL

Re: Gelöst: apt oder aptitude

Beitrag von TomL » 14.03.2020 20:12:17

Oh...ist das ärgerlich.... :? ...sorry... ist leider durch unzureichendes Markieren mit der Mouse im Terminal passiert ... ich habs natürlich sofort korrigiert. Vielen Dank für den Hinweis. :THX:

Antworten