'\" t .\" Title: setarch .\" Author: [see the "AUTHOR(S)" section] .\" Generator: Asciidoctor 2.0.20 .\" Date: 2024-04-27 .\" Manual: System-Administration .\" Source: util-linux 2.40 .\" Language: English .\" .TH "SETARCH" "8" "2024-04-27" "util\-linux 2.40" "System\-Administration" .ie \n(.g .ds Aq \(aq .el .ds Aq ' .ss \n[.ss] 0 .nh .ad l .de URL \fI\\$2\fP <\\$1>\\$3 .. .als MTO URL .if \n[.g] \{\ . mso www.tmac . am URL . ad l . . . am MTO . ad l . . . LINKSTYLE blue R < > .\} .SH "BEZEICHNUNG" setarch \- ändert die vom System gemeldete Architektur und/oder setzt neue Personalisierungs\-Schalter. .SH "ÜBERSICHT" .sp \fBsetarch\fP [\fIarch\fP] [options] [\fIprogram\fP [\fIargument\fP...]] .sp \fBsetarch\fP \fB\-\-list\fP|\fB\-h\fP|\fB\-V\fP .sp \fBarch\fP [options] [\fIprogram\fP [\fIargument\fP...]] .SH "BESCHREIBUNG" .sp \fBsetarch\fP modifies execution domains and process personality flags. .sp Die Ausführungsdomänen beeinflussen derzeit nur die Ausgabe von \fBuname \-m\fP. Beispielsweise sorgt der Aufruf von \fBsetarch i386\fP \fIProgramm\fP auf einem AMD64\-System dafür, dass das Programm den Rechnertyp als i686 sieht (oder eine andere relevante Architektur) anstelle von \fIx86_64\fP. Es ermöglicht außerdem das Setzen verschiedener Personalisierungsoptionen. Das vorgegebene \fIProgramm\fP ist \fB/bin/sh\fP. .sp Seit Version 2.33 ist das Befehlszeilenargument \fIArchitektur\fP optional und \fBsetarch\fP kann zur Veränderung der Personalitätsschalter (ADDR_LIMIT_*, SHORT_INODE, usw.) ohne Änderung der Ausführungsdomäne verwandt werden. .SH "OPTIONEN" .sp \fB\-\-list\fP .RS 4 listet die Architekturen auf, die \fBsetarch\fP kennt. Ob allerdings \fBsetarch\fP tatsächlich eine bestimmte dieser Architekturen setzen kann, ist von dem laufenden Kernel abhängig. .RE .sp \fB\-\-show[=Personality]\fP .RS 4 Show the currently active personality and flags. If the \fBpersonality\fP argument is provided, it is shown instead of the current one. \fBpersonality\fP is a hexadecimal number with values was described in \fBsys/personality.h\fP. .RE .sp \fB\-\-uname\-2.6\fP .RS 4 sorgt dafür, dass das \fIProgramm\fP einen Kernel mit einer Versionsnummer sieht, die mit 2.6 beginnt. Schaltet \fBUNAME26\fP ein. .RE .sp \fB\-v\fP, \fB\-\-verbose\fP .RS 4 aktiviert den ausführlichen Modus. .RE .sp \fB\-3\fP, \fB\-\-3gb\fP .RS 4 gibt an, dass das \fIProgramm\fP einen maximalen Adressraum von 3 GB belegen soll. Unterstützt auf x86. Schaltet \fBADDR_LIMIT_3GB\fP ein. .RE .sp \fB\-\-4gb\fP .RS 4 Diese Option hat keinen Effekt. Sie wird nur aus Gründen der Abwärtskompatibilität unterstützt und kann in zukünftigen Veröffentlichungen entfernt werden. .RE .sp \fB\-B\fP, \fB\-\-32bit\fP .RS 4 begrenzt den Adressraum auf 32 Bit, um Hardware zu emulieren. Unterstützt auf ARM und Alpha. Schaltet \fBADDR_LIMIT_32BIT\fP ein. .RE .sp \fB\-F\fP, \fB\-\-fdpic\-funcptrs\fP .RS 4 behandelt Funktionszeiger des Anwendungsraums auf Signal\-Handler als Zeiger auf Adressdeskriptoren. Diese Option hat auf Architekturen, die keine \fBFDPIC\fP\-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. .RE .sp \fB\-I\fP, \fB\-\-short\-inode\fP .RS 4 Veralteter Fehleremulationsschalter. Schaltet \fBSHORT_INODE\fP ein. .RE .sp \fB\-L\fP, \fB\-\-addr\-compat\-layout\fP .RS 4 stellt das alte Layout des virtuellen Adressraums bereit. Verwenden Sie dies, falls das \fIProgramm\fP nicht über den \fBPT_GNU_STACK\fP\-ELF\-Header verfügt. Schaltet \fBADDR_COMPAT_LAYOUT\fP ein. .RE .sp \fB\-R\fP, \fB\-\-addr\-no\-randomize\fP .RS 4 deaktiviert die Randomisierung des virtuellen Adressraums. Schaltet \fBADDR_NO_RANDOMIZE\fP ein. .RE .sp \fB\-S\fP, \fB\-\-whole\-seconds\fP .RS 4 Veralteter Fehleremulationsschalter. Schaltet \fBWHOLE_SECONDS\fP ein. .RE .sp \fB\-T\fP, \fB\-\-sticky\-timeouts\fP .RS 4 Dies führt dazu, dass die Systemaufrufe \fBselect\fP(2), \fBpselect\fP(2) und \fBppoll\fP(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 das \fIProgramm\fP von diesem Verhalten abhängt. Für weitere Details siehe die Zeitüberschreitungsbeschreibung in der Handbuchseite \fBselect\fP(2). Schaltet \fBSTICKY_TIMEOUTS\fP ein. .RE .sp \fB\-X\fP, \fB\-\-read\-implies\-exec\fP .RS 4 Falls dies gesetzt ist, wird \fBmmap\fP(2) \fBPROT_READ\fP auch das Bit \fBPROT_EXEC\fP 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 \fBREAD_IMPLIES_EXEC\fP ein. .RE .sp \fB\-Z\fP, \fB\-\-mmap\-page\-zero\fP .RS 4 SVr4\-Fehleremulation, die \fBmmap\fP(2) auf Seite Null als nur lesbar setzen wird. Verwenden Sie dies, wenn das \fIProgramm\fP von diesem Verhalten abhängt und der Quellcode nicht zum Korrigieren verfügbar ist. Schaltet \fBMMAP_PAGE_ZERO\fP ein. .RE .sp \fB\-h\fP, \fB\-\-help\fP .RS 4 zeigt einen Hilfetext an und beendet das Programm. .RE .sp \fB\-V\fP, \fB\-\-version\fP .RS 4 zeigt Versionsinformationen an und beendet das Programm. .RE .SH "BEISPIEL" .sp .if n .RS 4 .nf .fam C 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 .fam .fi .if n .RE .SH "AUTOREN" .sp .MTO "sopwith\(atredhat.com" "Elliot Lee" "," .MTO "jnovy\(atredhat.com" "Jindrich Novy" "," .MTO "kzak\(atredhat.com" "Karel Zak" "" .SH "SIEHE AUCH" .sp \fBpersonality\fP(2), \fBselect\fP(2) .SH "FEHLER MELDEN" .sp Nutzen Sie zum Melden von Fehlern das Fehlererfassungssystem auf \c .URL "https://github.com/util\-linux/util\-linux/issues" "" "." .SH "VERFÜGBARKEIT" .sp Der Befehl \fBsetarch\fP ist Teil des Pakets util\-linux, welches aus dem \c .URL "https://www.kernel.org/pub/linux/utils/util\-linux/" "Linux\-Kernel\-Archiv" "" heruntergeladen werden kann.