| AUSYSCALL(8) | ابزارهای مدیریت سیستم (System Administration Utilities) | AUSYSCALL(8) |
نام (NAME)
ausyscall - برنامهای برای نگاشت نامها و شمارههای فراخوانیهای سیستم
خلاصه دستور (SYNOPSIS)
ausyscall [arch] name | number | --dump | --exact
توضیحات (DESCRIPTION)
دستور ausyscall برنامهای است که نگاشت میان نام فراخوانی سیستم (syscall) و شماره آن و برعکس را برای معماری دادهشده چاپ میکند. معماری (arch) میتواند هر مقداری باشد که توسط uname -m بازگردانده میشود. اگر معماری مشخص نشود، برنامه بر اساس ایمیج در حال اجرا آن را حدس میزند. یا برای راحتی، میتوانید مقدار b32 یا b64 را ارسال کنید تا از معماری فعلی اما با یک ABI مشخص استفاده شود. شما میتوانید نام یا شماره فراخوانی سیستم را وارد کنید تا برنامه مقدار متناظر آن را بیابد. همچنین میتوانید با استفاده از گزینه --dump کل جدول را تخلیه (چاپ کامل) کنید. بهطور پیشفرض، جستجوی نام فراخوانی سیستم بر اساس انطباق زیررشته انجام میشود؛ بدین معنی که تلاش میکند تمامی فراخوانیهای سیستمی که نام ارائهشده در آنها وجود دارد را مطابقت دهد. بنابراین دادن نامی مانند chown علاوه بر خود chown، با fchown و هر فراخوانی سیستم دیگری که شامل chown در نام خود باشد مطابقت خواهد داشت. اگر این رفتار مورد نظر نیست، فلگ --exact را بدهید تا تطبیق دقیق رشتهای انجام گیرد.
این برنامه معماری ویژه uring را میپذیرد تا نشان دهد که میخواهید عملیاتهای io_uring را تعیین نمایید. در این حالت، معماری باید حتماً مشخص شود زیرا در غیر این صورت سختافزار زیرین را تشخیص خواهد داد.
این برنامه میتواند برای بررسی شمارههای فراخوانی سیستم در پلتفرمهای دومعماری (biarch) جهت بهینهسازی قوانین استفاده شود. برای نمونه، فرض کنید چنین قاعدهای در auditctl دارید:
-a always,exit -S open -F exit=-EPERM -k fail-open
اگر میخواهید بررسی کنید که آیا هر دو برنامه ۳۲ بیتی و ۶۴ بیتی مورد ممیزی قرار میگیرند، دستور ausyscall i386 open و سپس دستور ausyscall x86_64 open را اجرا کنید (یا از گزینههای b32 و b64 استفاده نمایید). به شمارههای بازگرداندهشده نگاه کنید. اگر آنها متفاوت باشند، برای پوشش کامل ممیزی باید دو قاعده در auditctl بنویسید:
-a always,exit -F arch=b32 -S open -F exit=-EPERM -k fail-open -a always,exit -F arch=b64 -S open -F exit=-EPERM -k fail-open
برای کسب اطلاعات بیشتر درباره یک فراخوانی سیستم خاص، از برنامه man استفاده کرده و عدد 2 را به عنوان آرگومان ارسال نمایید تا اطمینان حاصل شود که به جای یک برنامه اسکریپت شل یا فراخوانی تابع glibc با همان نام، اطلاعات فراخوانی سیستم را دریافت میکنید. برای نمونه، اگر میخواهید درباره فراخوانی سیستم open اطلاعات کسب کنید، دستور زیر را وارد نمایید:
man 2 open
گزینهها (OPTIONS)
همچنین ببینید (SEE ALSO)
نویسنده (AUTHOR)
Steve Grubb
| فوریه ۲۰۲۳ | Red Hat |