[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: 32 => 64 Bit: Aktueller Stand



Spiro Trikaliotis - 25.01.18, 22:10:
> Hallo,
> 
> * On Wed, Jan 24, 2018 at 09:56:48PM +0100 Paul Muster wrote:
> > On 13.01.2018 11:22, Martin Steigerwald wrote:
> > > Ich frage mich gerade, inwiefern die Reihenfolge:
> > > 
> > > 1. apt/dpkg/tar ersetzen.
> > > 2. Bibliotheken ersetzen.
> > > 3. Restliche Pakete ersetzen.
> > > 
> > > wirklich Sinn macht.
> > > 
> > > Warum apt/dpkg/tar bereits am Anfang umbauen? Warum einen der
> > > riskanteren
> > > Schritte gleich am Anfang?
> > > 
> > > Warum installiere ich nicht erst alle Bibliotheken in 64-Bit-Versionen,
> > > was ja auch mit dem 32-Bit-Apt-Zeug geht? Damit gehe ich erst mal noch
> > > kein Risiko ein.
> > 
> > Berechtigte Fragen.
> 
> Vermutung: apt/apt-get/aptitude/... aus der richtigen Version wissen am
> besten, wie man mit den Abhängigkeiten gerade aus dieser Version umgeht.
> Daher macht es wohl Sinn, apt(*) als erstes umzustellen, um nicht
> vielleicht wegen Fehlern oder anderen Dingen, die in späteren Versionen
> umgestellt wurden, auf einem nicht benutzbaren System zu hängen.
> 
> Ausserdem passt es zu dem Grundsatz "fail early". ;)

Hmmm, das bröselt wahrscheinlich aber die Update-Fähigkeit in Stücke, da
es standardmäßig amd64-Pakete installieren würde, oder würde ein amd64
apt dann i386-Pakete beim Aktualisieren weiterhin auf i386 belassen…
hmm, an sich ja schon, macht es ja auf einem "normalen" Multiarch-System
auch nicht anders… Ich glaube auch nicht, dass sich die Abhängigkeiten-
Auflösung innerhalb von apt selbst architektur-spezifisch ist. Ich denke, es
beachtet einfach nur die Abhängigkeiten zwischen den Paketen und eben
die zumindest teilweise die Multiarch-Besonderheiten.

So oder so kommt apt dann schon mal mit der Warnung, dass ich im
Begriff sei, was potentiell Schädliches zu tun. 

mondschein:~> apt install apt:amd64
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut.       
Statusinformationen werden eingelesen.... Fertig
Die folgenden Pakete wurden automatisch installiert und werden nicht mehr benötigt:
  libregexp-assemble-perl python3-apt python3-chardet python3-debian python3-debianbts python3-httplib2 python3-pkg-resources python3-pycurl python3-pysimplesoap
  python3-requests python3-six python3-urllib3 ruby-soap4r ruby-unicode
Verwenden Sie »apt autoremove«, um sie zu entfernen.
The following additional packages will be installed:
  libapt-pkg5.0:amd64 libbz2-1.0:amd64 libstdc++6:amd64
Vorgeschlagene Pakete:
  apt-doc:amd64 powermgmt-base:amd64 python-apt:amd64
Die folgenden Pakete werden ENTFERNT:
  apt apt-file apt-listbugs apt-listchanges apt-show-versions apt-utils apticron python-reportbug python3-reportbug reportbug
Die folgenden NEUEN Pakete werden installiert:
  apt:amd64 libapt-pkg5.0:amd64 libbz2-1.0:amd64 libstdc++6:amd64
WARNUNG: Die folgenden essentiellen Pakete werden entfernt.
Dies sollte NICHT geschehen, außer Sie wissen genau, was Sie tun!
  apt
0 aktualisiert, 4 neu installiert, 10 zu entfernen und 0 nicht aktualisiert.
Es müssen 2.588 kB an Archiven heruntergeladen werden.
Nach dieser Operation werden 2.054 kB Plattenplatz zusätzlich benutzt.
Sie sind im Begriff, etwas potentiell Schädliches zu tun.
Zum Fortfahren geben Sie bitte »Ja, tue was ich sage!« ein.
 ?]

Ich glaube zwar, dass das nur kommt, weil ein essentielles Paket betroffen
ist und apt das nicht rafft, dass ich es ja gleich als amd64-Fassung wieder
drauf haben möchte… aber dennoch.

Meine Idee war eigentlich gerade anders herum: Mich von den harmloseren
Dingen zu den gefährlicheren vorarbeiten und währenddessen die
Betriebsfähigkeit des Systems zu erhalten. Zum Beispiel erst mal diverse
Rettungsanker an den Start bringen, wie dieses hier:

mondschein:~#1> apt install bash-static:amd64
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut.       
Statusinformationen werden eingelesen.... Fertig
Vorgeschlagene Pakete:
  bash-doc:amd64
Die folgenden NEUEN Pakete werden installiert:
  bash-static:amd64
0 aktualisiert, 1 neu installiert, 0 zu entfernen und 0 nicht aktualisiert.
Es müssen 1.033 kB an Archiven heruntergeladen werden.
Nach dieser Operation werden 2.268 kB Plattenplatz zusätzlich benutzt.
Holen:1 http://ftp.de.debian.org/debian stretch/main amd64 bash-static amd64 4.4-5 [1.033 kB]
Es wurden 1.033 kB in 1 s geholt (833 kB/s). 
Laden der Fehlerberichte … Erledigt
»Found/Fixed«-Informationen werden ausgewertet … Erledigt
Vormals nicht ausgewähltes Paket bash-static:amd64 wird gewählt.
(Lese Datenbank ... 92071 Dateien und Verzeichnisse sind derzeit installiert.)
Vorbereitung zum Entpacken von .../bash-static_4.4-5_amd64.deb ...
Entpacken von bash-static:amd64 (4.4-5) ...
bash-static:amd64 (4.4-5) wird eingerichtet ...
Trigger für man-db (2.7.6.1-2) werden verarbeitet ...
Prüfe Prozesse...                                                                                                                                                          
Prüfe Linux-Kernel...                                                                                                                                                      
Der laufende Kernel ist aktuell.
Es müssen keine Dienste neugestartet werden.
Es müssen keine Container neu gestartet werden.
Es gibt keine Nutzer-Sitzungen mit veralteten Prozessen.

mondschein:~> bash-static
mondschein:~#

Dito geht das mit zsh-static und sogar mit zsh, die ja ansonsten meine
Standard-Shell ist. Ich kann mich danach auch noch via SSH anmelden,
soweit so gut. Das Schöne ist, dass jetzt schon ein paar mehr Bibliotheks-
Pakete in amd64-Fassung drauf sind. Z.B. ncurses.

Und genau das war ja meine Idee… ihm so viele amd64-Pakete wie möglich
unter zu schieben, dass dann der kritische Schritt vielleicht gar nicht mehr
kritisch ist.

Ich denke jedoch, dass es mit bash:amd64 Ärger gibt. Mal
sehen:

mondschein:~> apt install bash:amd64
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut.       
Statusinformationen werden eingelesen.... Fertig
The following additional packages will be installed:
  dash:amd64
Vorgeschlagene Pakete:
  bash-doc:amd64
Die folgenden Pakete werden ENTFERNT:
  bash dash
Die folgenden NEUEN Pakete werden installiert:
  bash:amd64 dash:amd64
WARNUNG: Die folgenden essentiellen Pakete werden entfernt.
Dies sollte NICHT geschehen, außer Sie wissen genau, was Sie tun!
  bash dash (wegen bash)
0 aktualisiert, 2 neu installiert, 2 zu entfernen und 0 nicht aktualisiert.
Es müssen 1.536 kB an Archiven heruntergeladen werden.
Nach dieser Operation werden 162 kB Plattenplatz freigegeben.
Sie sind im Begriff, etwas potentiell Schädliches zu tun.
Zum Fortfahren geben Sie bitte »Ja, tue was ich sage!« ein.
 ?]

Naja, gut, das ist wegen essentiellen Paket. Wie auch beim apt…, das ja
ansonsten auch gut durchlaufen dürfte. So oder so… das traue ich mich
erst mit Snapshot der VM :). Hoffentlich :)


Hehe… ich komme mir gerade vor wie jemand, der Yenga spielt. Ich ziehe
klötze aus dem Turm raus und schaue, wann der Turm in sich zusammen
fällt.

Beim Aktualisieren von Diensten wie cron sind bereits Abhängigkeiten zu
beachten, denn sonst würde ich meinen MTA los:

mondschein:~> apt install cron:amd64       
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut.       
Statusinformationen werden eingelesen.... Fertig
Die folgenden Pakete wurden automatisch installiert und werden nicht mehr benötigt:
  guile-2.0-libs libkyotocabinet16v5 liblmdb0 libmailutils5 python-dnspython
Verwenden Sie »apt autoremove«, um sie zu entfernen.
The following additional packages will be installed:
  anacron bsd-mailx exim4-base exim4-config exim4-daemon-light libaudit1:amd64 liblockfile1 libpam0g:amd64
Vorgeschlagene Pakete:
  powermgmt-base anacron:amd64 logrotate:amd64 checksecurity:amd64 eximon4 exim4-doc-html | exim4-doc-info spf-tools-perl swaks libpam-doc:amd64
Empfohlene Pakete:
  cron | cron-daemon exim4:amd64 | postfix:amd64 | mail-transport-agent:amd64
Die folgenden Pakete werden ENTFERNT:
  apticron cron mailman mailutils pmailq postfix postfix-lmdb postfix-pcre postfix-sqlite
Die folgenden NEUEN Pakete werden installiert:
  anacron bsd-mailx cron:amd64 exim4-base exim4-config exim4-daemon-light libaudit1:amd64 liblockfile1 libpam0g:amd64
0 aktualisiert, 9 neu installiert, 9 zu entfernen und 0 nicht aktualisiert.
Es müssen 2.445 kB an Archiven heruntergeladen werden.
Nach dieser Operation werden 40,6 MB Plattenplatz freigegeben.
Möchten Sie fortfahren? [J/n]

Das geht schon, wenn ich postfix:amd64 noch dazu nehme, aber spätestens
wenn ich mailman:amd64 dazu nehme, gibt es wieder Ärger, wahrscheinlich
wegen Python. Aber das ginge vielleicht schrittweise, also erstmal entfernen
lassen und dann wieder drauf.

Aber gut, genug davon jetzt.

Ciao,
-- 
Martin


Reply to: