'\" t .\" Title: setarch .\" Author: [see the "AUTHOR(S)" section] .\" Generator: Asciidoctor 2.0.26 .\" Date: 2026-06-16 .\" Manual: System Administration .\" Source: util-linux 2.41.5 .\" Language: Persian .\" .TH "SETARCH" "8" "2026-06-16" "util\-linux 2.41.5" "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 "نام (NAME)" setarch \- تغییر معماری گزارش‌شده و تنظیم پرچم‌های شخصی‌سازی .SH "خلاصه دستور (SYNOPSIS)" .sp \fBsetarch\fP [\fIarch\fP] [گزینه‌ها] [\fIprogram\fP [\fIargument\fP.\|.\|.]] .sp \fBsetarch\fP \fB\-\-list\fP|\fB\-h\fP|\fB\-V\fP .sp \fBarch\fP [گزینه‌ها] [\fIprogram\fP [\fIargument\fP.\|.\|.]] .SH "توضیحات (DESCRIPTION)" .sp دستور \fBsetarch\fP دامنه‌های اجرا و پرچم‌های شخصی‌سازی فرایند را تغییر می‌دهد. .sp دامنه‌های اجرا در حال حاضر تنها بر خروجی \fBuname \-m\fP تأثیر می‌گذارند. به عنوان مثال، در یک سیستم AMD64، اجرای \fBsetarch i386\fP \fIprogram\fP باعث می‌شود که \fIprogram\fP نوع ماشین را به جای \fIx86_64\fP، به صورت i686 ببیند. همچنین می‌توان از آن برای تنظیم گزینه‌های مختلف شخصی‌سازی استفاده کرد. برنامه پیش‌فرض \fB/bin/sh\fP است. .sp از نسخه 2.33 به بعد، آرگومان خط فرمان \fIarch\fP اختیاری است و می‌توان از \fBsetarch\fP برای تغییر پرچم‌های شخصی‌سازی (مانند ADDR_LIMIT_*، SHORT_INODE و غیره) بدون تغییر دامنه اجرا استفاده کرد. .SH "گزینه‌ها (OPTIONS)" .sp \fB\-\-list\fP .RS 4 فهرست کردن معماری‌هایی که \fBsetarch\fP می‌شناسد. این‌که آیا \fBsetarch\fP واقعاً می‌تواند هر یک از این معماری‌ها را تنظیم کند، به هسته در حال اجرا بستگی دارد. .RE .sp \fB\-\-show[=personality]\fP .RS 4 نمایش شخصی‌سازی و پرچم‌های فعال فعلی. اگر آرگومان \fBpersonality\fP ارائه شود، به جای مورد فعلی نمایش داده می‌شود. \fBpersonality\fP یک عدد هگزادسیمال با مقادیری است که در \fBsys/personality.h\fP توصیف شده است. .RE .sp \fB\-\-uname\-2.6\fP .RS 4 باعث می‌شود که \fIprogram\fP نسخه هسته را با شروع از 2.6 ببیند. گزینه \fBUNAME26\fP را فعال می‌کند. .RE .sp \fB\-v\fP, \fB\-\-verbose\fP .RS 4 حالت پرگو (نمایش جزئیات بیشتر). .RE .sp \fB\-3\fP, \fB\-\-3gb\fP .RS 4 مشخص می‌کند که \fIprogram\fP باید حداکثر از ۳ گیگابایت فضای آدرس استفاده کند. در x86 پشتیبانی می‌شود. گزینه \fBADDR_LIMIT_3GB\fP را فعال می‌کند. .RE .sp \fB\-\-4gb\fP .RS 4 این گزینه هیچ تأثیری ندارد. تنها برای سازگاری با گذشته نگه داشته شده است و ممکن است در نسخه‌های آینده حذف شود. .RE .sp \fB\-B\fP, \fB\-\-32bit\fP .RS 4 محدود کردن فضای آدرس به ۳۲ بیت برای شبیه‌سازی سخت‌افزار. در ARM و Alpha پشتیبانی می‌شود. گزینه \fBADDR_LIMIT_32BIT\fP را فعال می‌کند. .RE .sp \fB\-F\fP, \fB\-\-fdpic\-funcptrs\fP .RS 4 رفتار با اشاره‌گرهای تابع در فضای کاربری به گرداننده‌های سیگنال به عنوان اشاره‌گر به توصیف‌کننده‌های آدرس. این گزینه در معماری‌هایی که از باینری‌های ELF نوع \fBFDPIC\fP پشتیبانی نمی‌کنند تأثیری ندارد. در نسخه 4.14 هسته، پشتیبانی به معماری‌های پردازنده ARM، Blackfin، Fujitsu FR\-V و SuperH محدود است. .RE .sp \fB\-I\fP, \fB\-\-short\-inode\fP .RS 4 پرچم منسوخ‌شده برای شبیه‌سازی باگ. گزینه \fBSHORT_INODE\fP را فعال می‌کند. .RE .sp \fB\-L\fP, \fB\-\-addr\-compat\-layout\fP .RS 4 ارائه چیدمان سازگار با گذشته برای فضای آدرس مجازی. زمانی استفاده می‌شود که فایل باینری \fIprogram\fP فاقد هدر ELF از نوع \fBPT_GNU_STACK\fP باشد. گزینه \fBADDR_COMPAT_LAYOUT\fP را فعال می‌کند. .RE .sp \fB\-R\fP, \fB\-\-addr\-no\-randomize\fP .RS 4 غیرفعال کردن تصادفی‌سازی فضای آدرس مجازی (ASLR). گزینه \fBADDR_NO_RANDOMIZE\fP را فعال می‌کند. .RE .sp \fB\-S\fP, \fB\-\-whole\-seconds\fP .RS 4 پرچم منسوخ‌شده برای شبیه‌سازی باگ. گزینه \fBWHOLE_SECONDS\fP را فعال می‌کند. .RE .sp \fB\-T\fP, \fB\-\-sticky\-timeouts\fP .RS 4 باعث می‌شود فراخوانی‌های سیستمی \fBselect\fP(2)، \fBpselect\fP(2) و \fBppoll\fP(2) به جای تغییر مقدار مهلت زمانی برای انعکاس مدت زمانی که پس از قطع شدن توسط یک گرداننده سیگنال خوابیده نشده است، مقدار آن را حفظ کنند. زمانی استفاده می‌شود که \fIprogram\fP به این رفتار وابسته باشد. برای جزئیات بیشتر به توضیحات مهلت زمانی در صفحه راهنمای \fBselect\fP(2) مراجعه کنید. گزینه \fBSTICKY_TIMEOUTS\fP را فعال می‌کند. .RE .sp \fB\-X\fP, \fB\-\-read\-implies\-exec\fP .RS 4 اگر این گزینه تنظیم شود، \fBmmap\fP(2) همراه با \fBPROT_READ\fP بیت \fBPROT_EXEC\fP را نیز اضافه خواهد کرد \- همان‌طور که باینری‌های قدیمی x86 انتظار دارند. توجه داشته باشید که بارگذار ELF هنگام مواجهه با یک باینری قدیمی، این بیت را به طور خودکار تنظیم می‌کند. گزینه \fBREAD_IMPLIES_EXEC\fP را فعال می‌کند. .RE .sp \fB\-Z\fP, \fB\-\-mmap\-page\-zero\fP .RS 4 شبیه‌سازی باگ SVr4 که صفحه صفر \fBmmap\fP(2) را به صورت فقط‌خواندنی تنظیم می‌کند. زمانی استفاده می‌شود که \fIprogram\fP به این رفتار وابسته است و کد منبع آن برای اصلاح در دسترس نیست. گزینه \fBMMAP_PAGE_ZERO\fP را فعال می‌کند. .RE .sp \fB\-h\fP, \fB\-\-help\fP .RS 4 نمایش متن راهنما و خروج. .RE .sp \fB\-V\fP, \fB\-\-version\fP .RS 4 نمایش نسخه و خروج. .RE .SH "مثال‌ها (EXAMPLES)" .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 "نویسندگان (AUTHORS)" .sp .MTO "sopwith\(atredhat.com" "Elliot Lee" "," .MTO "jnovy\(atredhat.com" "Jindrich Novy" "," .MTO "kzak\(atredhat.com" "Karel Zak" "" .SH "همچنین ببینید (SEE ALSO)" .sp \fBpersonality\fP(2), \fBselect\fP(2) .SH "گزارش باگ‌ها (REPORTING BUGS)" .sp برای گزارش باگ‌ها، از \c .URL "https://github.com/util\-linux/util\-linux/issues" "سامانه ردیابی مشکلات" "." .SH "در دسترس بودن (AVAILABILITY)" .sp دستور \fBsetarch\fP بخشی از بسته util\-linux است که می‌تواند از \c .URL "https://www.kernel.org/pub/linux/utils/util\-linux" "بایگانی هسته لینوکس" "." دریافت شود.