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

Re: wie erkennt apt ob 32 oder 64 bit Softare zu installieren ist



> Es war eine Antwort auf die Frage, die im Quoting unmittelbar über
> darüber steht. Genau das wird durch das Quoting ausgedrückt.

Die Frage und das Quoting war "an welchem Systemmerkmal apt eindeutig
erkennt welche Architektur es ist". Nicht wie man den Wert auslesen kann.

dpkg-architectur gibt lediglich einen Wert zurück. Die frage ist dann
immer noch offen woher dann dpkg-architectur eindeutig erkennt welche
Architektur es ist. Das der Wert dann fest einkompiliert wird ist dann
eher die passendere antwort. Anscheint wird es  nämlich gar nicht
ermittelt oder erkannt.

>> Weißt du zufällig noch wie das beim debootstrappen funktioniert?
> 
> Das steht in /usr/sbin/debootstrap, Zeile 385-397:
> 
> 1. Inhalt des Aufrufparameters --arch, falls vorhanden
> 2. Ausgabe von dpkg --print-architecture
> 3. Ausgabe von udpkg --print-architecture
> 4. Inhalt des Files $DEBOOTSTRAP_DIR/arch
> 5. Wenn keines davon zielführend ist, Ausgabe eine Fehlermeldung und
>    Abbruch.

Ah danke für Info.

> Wenn dpkg und udpkg nicht vorhanden sind, benötigt das Original
> debootstrap zwingend den Parameter --arch. Das steht auch so in der
> Manpage:

Hmm, bin mir eigentlich ziemlich sichlicher das ich schon mehrmals aus
einem Gentoo System ein Debian System aufgesetzt hatte ohne den
Parameter. Aber vielleicht täusche ich mich auch gerade. Ist auch schon
länger her das ich das gemacht hatte. Und mitlerweile versuche ich meist
eh immer ein Debian basiertes System zum aufsetzen mit debootstrap zu
verwenden wodurch dann punkt 2) das entscheidende sein sollte.

> Möglicherweise liefern andere Distributionen eine gepatchte Version
> von debootstrap aus, die weitere Informationen abfragt oder Defaultwerte
> setzt.

debootstrap gibt es so doch nur für Debian. Zumindest musste ich als ich
ein Debian von gentoo aufgesetzt hatte dafür manuell das "deb" packet
von debootstrap herunterladen und manuell entpacken. Aber vielleicht ist
das ganze ja selber modifiziert so das debootstrap aus dem 64bit packet
schon ein anderen default hat.

Aber zumindest reicht mir das als Antwort. Anscheint wird jedenfalls
keine Systeminfo ausgelesen. Hätte eher vermutet gehabt das es hier
irgendwo eine information in /proc z.b. gibt die man zuverlässig
auswerten kann, anstatt das es einfach nur irgendwo sachen einkompiliert
oder vorgegeben werden.

> Uname ist nicht zielführend. Unter einem 32-Bit Userland kann durchaus
> ein 64-Bit Kernel laufen.

Ja, genau das ist bei mir der Fall. Deswegen hatte mich die frage an
welchen Merkmal es eindeutig erkannt wird genauso interessiert. Weil
"durch dpkg-architecture" sehe ich da halt auch nicht als Antwort an,
weil die Frage dann immer noch offen bleibt welches Systemmerkmal
entscheident ist und wie es dpkg-architecture überhaupt erkennt.

Wenn es nicht einkompiliert gewesen wäre, dann hätte ich zum Beispiel
soetwas erwartet wie: "Es steht in einer Konfigurationsdatei an Ort
"/x/y/z" was genutzt wird.


Reply to: