НАЗИВ¶
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>