Scroll to navigation

SETARCH(8) Администрација система SETARCH(8)

НАЗИВ

setarch - мења извештену архитектуру у новом окружењу програма и/или поставља опцију персоналности

УВОД

setarch [arch] [options] [program [argument...]]

setarch --list|-h|-V

arch [options] [program [argument...]]

ОПИС

setarch modifies execution domains and process personality flags.

Домени извршавања тренутно утичу само на излаз uname -m. На пример, на AMD64 систему, покретање setarch i386 програм ће довести до тога да програм види i686 уместо x86_64 као тип машине. Такође се може користити за постављање разних опција личности. Основни програм је /bin/sh.

Од издања 2.33, аргумент линије наредби arch је опционални а setarch се може користити за промену опција личности (ADDR_LIMIT_*, SHORT_INODE, итд.) без измене домена извршавања.

ОПЦИЈЕ

--list

Исписује архитектуре за које setarch зна. Да ли setarch може заправо да постави сваку од ових архитектура зависи од радног кернела.

--show[=personality]

Показује тренутно активну персоналност и заставице. Ако је наведен аргумент personality, он се приказује уместо тренутног. personality је хексадецимални број са вредностима описаним у sys/personality.h.

--uname-2.6

Доводи до тога да програм види број издања кернела почевши са 2.6. Укључује UNAME26.

-v, --verbose

Бива опширан.

-3, --3gb

Наводи да програм треба да користи највише 3GB адресног простора. Подржано на x86. Укључује ADDR_LIMIT_3GB.

--4gb

Ова опција нема дејства. Задржана је само зарад повратне сагласности, и може се уклонити у будућим издањима.

-B, --32bit

Ограничава адресни простор на 32 бита да опонаша хардвер. Подржано на ARM-у и Alpha. Укључује ADDR_LIMIT_32BIT.

-F, --fdpic-funcptrs

Сматра показиваче функције корисничког простора на руковаоцима сигнала као показиваче ка описницима адресе. Ова опција нема дејства на архитектуре које не подржавају FDPIC ЕЛФ бинарне датотеке. У кернелу и4.14 подршка је ограничена на ARM, Blackfin, Fujitsu FR-V, и SuperH архитектуре процесора.

-I, --short-inode

Застарела опција опонашања грешке. Укључује SHORT_INODE.

-L, --addr-compat-layout

Обезбеђује стари распоред простора виртуелне адресе. Користите када бинарна програма нема PT_GNU_STACK ELF заглавље. Укључује ADDR_COMPAT_LAYOUT.

-R, --addr-no-randomize

Искључује насумичност виртуелног простора адресе. Укључује ADDR_NO_RANDOMIZE.

-S, --whole-seconds

Застарела опција опонашања грешке. Укључује WHOLE_SECONDS.

-T, --sticky-timeouts

Ово чини да системски позиви select(2), pselect(2), и ppoll(2) очувају вредност временског истека уместо да је измене тако да одражава количину времена која није одспавана када је прекинуто руковаоцем сигнала. Користи се када програм зависи од овог понашања. За више о томе погледајте опис временског истека на страници упутства за select(2). Укључује STICKY_TIMEOUTS.

-X, --read-implies-exec

Ако је ово постављено, онда ће mmap(2) PROT_READ такође додати PROT_EXEC бит – као што се очекује од старих x86 бинарних датотека. Знајте да ће ЕЛФ утоваривач самостално поставити овај бит када наиђе на застарелу извршну датотеку. Укључује READ_IMPLIES_EXEC.

-Z, --mmap-page-zero

SVr4 емулација грешке која ће поставити mmap(2) нулту страницу као само за читање. Користите када програм зависи од овог понашања, а изворни код није доступан да буде сталан. Укључује MMAP_PAGE_ZERO.

-h, --help

Приказује текст помоћи и излази.

-V, --version

Исписује издање и излази.

ПРИМЕР

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)

ПРИЈАВЉИВАЊЕ ГРЕШАКА

За пријављивање грешака, користите пратиоца грешака на <https://github.com/util-linux/util-linux/issues>.

ДОСТУПНОСТ

Наредба setarch је део пакета „util-linux“ који се може преузети са Архиве Линукс кернела <https://www.kernel.org/pub/linux/utils/util-linux/>.

2024-04-26 util-linux 2.40