SETARCH(8) System-Administration SETARCH(8)

setarch - ändert die vom System gemeldete Architektur und/oder setzt neue Personalisierungs-Schalter.

ÜBERSICHT

setarch [Arch] [Optionen] [Programm [Argumente…]]

setarch --list|-h|-V

arch [Optionen] [Programm [Argument…]]

setarch verändert Ausführungsdomänen und Personalitätsschalter von Prozessen.

Die Ausführungsdomänen beeinflussen derzeit nur die Ausgabe von uname -m. Beispielsweise sorgt der Aufruf von setarch i386 Programm auf einem AMD64-System dafür, dass das Programm den Rechnertyp als i686 sieht (oder eine andere relevante Architektur) anstelle von x86_64. Es ermöglicht außerdem das Setzen verschiedener Personalisierungsoptionen. Das vorgegebene Programm ist /bin/sh.

Seit Version 2.33 ist das Befehlszeilenargument arch optional und setarch kann zur Veränderung der Personalitätsschalter (ADDR_LIMIT_*, SHORT_INODE, usw.) ohne Änderung der Ausführungsdomäne verwandt werden.

--list

listet die Architekturen auf, die setarch kennt. Ob allerdings setarch tatsächlich eine bestimmte dieser Architekturen setzen kann, ist von dem laufenden Kernel abhängig.

--uname-2.6

sorgt dafür, dass das Programm einen Kernel mit einer Versionsnummer sieht, die mit 2.6 beginnt. Schaltet UNAME26 ein.

-v, --verbose

Ausführlicher Modus.

-3, --3gb

gibt an, dass Programm einen maximalen Adressraum von 3 GB belegen soll. Unterstützt auf x86. Schaltet ADDR_LIMIT_3GB ein.

--4gb

Diese Option hat keinen Effekt. Sie wird nur aus Gründen der Rückwärtskompatibilität unterstützt und kann in zukünftigen Veröffentlichungen entfernt werden.

-B, --32bit

begrenzt den Adressraum auf 32 Bit, um Hardware zu emulieren. Unterstützt auf ARM und Alpha. Schaltet ADDR_LIMIT_32BIT ein.

-F, --fdpic-funcptrs

behandelt Funktionszeiger des Anwendungsraums auf Signal-Handler als Zeiger auf Adressdeskriptoren. Diese Option hat auf Architekturen, die keine FDPIC-ELF-Programme unterstützen, keinen Effekt. In Kernel v4.14 ist die Unterstützung auf die CPU-Architekturen ARM, Blackfin, Fujitsu FR-V und SuperH beschränkt.

-I, --short-inode

Veralteter Fehleremulationsschalter. Schaltet SHORT_INODE ein.

-L, --addr-compat-layout

stellt das alte Layout des virtuellen Adressraums bereit. Verwenden Sie dies, falls das Programm nicht über den PT_GNU_STACK-ELF-Header verfügt. Schaltet ADDR_COMPAT_LAYOUT ein.

-R, --addr-no-randomize

deaktiviert die Randomisierung des virtuellen Adressraums. Schaltet ADDR_NO_RANDOMIZE ein.

-S, --whole-seconds

Veralteter Fehleremulationsschalter. Schaltet WHOLE_SECONDS ein.

-T, --sticky-timeouts

Dies führt dazu, dass die Systemaufrufe select(2), pselect(2) und ppoll(2) den Wert der Zeitüberschreitung beibehalten, anstatt ihn so zu verändern, dass er die Zeit wiedergibt, die während einer Unterbrechung durch einen Signal-Handler nicht geschlafen wurde. Verwenden Sie dies, wenn Programm von diesem Verhalten abhängt. Für weitere Details siehe die Zeitüberschreitungsbeschreibung in der Handbuchseite select(2). Schaltet STICKY_TIMEOUTS ein.

-X, --read-implies-exec

Falls dies gesetzt ist, wird mmap(3p) PROT_READ auch das Bit PROT_EXEC hinzufügen - wie dies von alten x86-Programmen erwartet wird. Beachten Sie, dass der ELF-Lader dieses Bit automatisch setzen wird, wenn es ein altes Programm antrifft. Schaltet READ_IMPLIES_EXEC ein.

-Z, --mmap-page-zero

SVr4-Fehleremulation, die mmap(3p) auf Seite Null als nur lesbar setzen wird. Verwenden Sie dies, wenn Programm von diesem Verhalten abhängt und der Quellcode nicht zum Korrigieren verfügbar ist. Schaltet MMAP_PAGE_ZERO ein.

-V, --version

zeigt Versionsinformationen an und beendet das Programm.

-h, --help

zeigt einen Hilfetext an und beendet das Programm.

setarch --addr-no-randomize mytestprog
setarch ppc32 rpmbuild --target=ppc --rebuild foo.src.rpm
setarch ppc32 -v -vL3 rpmbuild --target=ppc --rebuild bar.src.rpm
setarch ppc32 --32bit rpmbuild --target=ppc --rebuild foo.src.rpm

Elliot Lee <sopwith@redhat.com>, Jindrich Novy <jnovy@redhat.com>, Karel Zak <kzak@redhat.com>

personality(2), select(2)

Verwenden Sie zum Melden von Fehlern das Fehlererfassungssystem auf https://github.com/karelzak/util-linux/issues.

Der Befehl setarch ist Teil des Pakets util-linux, welches heruntergeladen werden kann von: Linux Kernel Archive https://www.kernel.org/pub/linux/utils/util-linux/.

ÜBERSETZUNG

Die deutsche Übersetzung dieser Handbuchseite wurde von Mario Blättermann <mario.blaettermann@gmail.com>, Dr. Tobias Quathamer <toddy@debian.org> und Helge Kreutzmann <debian@helgefjell.de> erstellt.

Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.

Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die Mailingliste der Übersetzer.

20. Juli 2021 util-linux 2.37.2