.\" -*- nroff -*- .TH STAP\-SERVER 8 .SH "نام (NAME)" stap\-server \- مدیریت سرور کامپایل systemtap .\" macros .de SAMPLE .nr oldin \\n(.i .br .RS .nf .nh .. .de ESAMPLE .hy .fi .RE .in \\n[oldin]u .. .SH "خلاصه دستور (SYNOPSIS)" .br [ .B service ] .B stap\-server { .B start | .B stop | .B restart | .B condrestart | .B try\-restart | .B force\-reload | .B status } [ .I گزینه‌ها ] .SH "توضیحات (DESCRIPTION)" یک سرور کامپایل systemtap روی یک درگاه شبکه امن SSL به اتصالات کلاینت‌های stap گوش فرا می‌دهد و درخواست‌های اجرای فرانت‌اند .I stap را می‌پذیرد. هر سرور با استفاده از mDNS (\fIavahi\fR) حضور و پیکربندی خود را در شبکه محلی اعلام می‌کند و امکان تشخیص خودکار توسط کلاینت‌ها را فراهم می‌سازد. .PP اسکریپت stap\-server با اهداف زیر ارائه شده است: .IP \(bu 4 مدیریت سرورهای کامپایل systemtap به عنوان یک سرویس. .IP \(bu 4 کنترل آسان بر سرورهای پیکربندی‌شده و سرورهای مجزا (موردی یا ad\-hoc). .SH "آرگومان‌ها (ARGUMENTS)" یکی از عملیات‌های زیر باید مشخص شود: .TP .B start راه‌اندازی سرورها. سرورهای مشخص‌شده راه‌اندازی می‌شوند. چنانچه هیچ سروری مشخص نشده باشد، سرورهای پیکربندی‌شده راه‌اندازی می‌شوند. اگر هیچ سروری پیکربندی نشده باشد، سروری متناسب با نگارش هسته و معماری میزبان راه‌اندازی می‌شود. اگر سرور مشخص‌شده‌ای از قبل راه‌اندازی شده باشد، این عمل برای آن سرور نادیده گرفته خواهد شد. اگر راه‌اندازی سروری با شکست مواجه شود، این عمل با شکست پایان می‌یابد. .TP .B stop متوقف کردن سرور(ها). سرورهای مشخص‌شده متوقف می‌شوند. چنانچه هیچ سروری مشخص نشده باشد، تمام سرورهای در حال اجرای فعلی متوقف می‌شوند. اگر سرور مشخص‌شده در حال اجرا نباشد، این عمل برای آن سرور موفقیت‌آمیز خواهد بود. اگر توقف سروری با شکست مواجه شود، این عمل با شکست پایان می‌یابد. .TP .B restart متوقف کردن و راه‌اندازی مجدد سرورها. سرورهای مشخص‌شده متوقف شده و مجدداً راه‌اندازی می‌شوند. چنانچه هیچ سروری مشخص نشده باشد، تمام سرورهای در حال اجرای فعلی متوقف و مجدداً راه‌اندازی می‌شوند. اگر هیچ سروری در حال اجرا نباشد، این عمل رفتاری مشابه با \fIstart\fR خواهد داشت. .TP .B condrestart متوقف کردن و راه‌اندازی مجدد سرورها. سرورهای مشخص‌شده متوقف شده و مجدداً راه‌اندازی می‌شوند. اگر سرور مشخص‌شده در حال اجرا نباشد، راه‌اندازی نخواهد شد. اگر هیچ سروری مشخص نشده باشد، تمام سرورهای در حال اجرا متوقف و دوباره راه‌اندازی می‌شوند. اگر هیچ سروری در حال اجرا نباشد، هیچ‌کدام راه‌اندازی نخواهند شد. .TP .B try\-restart این عمل کاملاً مشابه \fIcondrestart\fR است. .TP .B force\-reload تمام سرورهای در حال اجرا را متوقف می‌کند، فایل‌های پیکربندی را دوباره بارگذاری می‌کند و سرویس را به گونه‌ای راه‌اندازی مجدد می‌کند که گویی .I start مشخص شده است. .TP .B status چاپ اطلاعات درباره سرورهای در حال اجرا. اطلاعات مربوط به سرور(های) مشخص‌شده چاپ خواهد شد. اگر هیچ سروری مشخص نشده باشد، اطلاعات مربوط به تمام سرورهای در حال اجرا نمایش داده می‌شود. .SH "گزینه‌ها (OPTIONS)" گزینه‌های زیر برای ارائه پیکربندی بیشتر و مشخص کردن سرورهای تحت مدیریت به کار می‌روند: .TP \fB\-c\fR \fIconfigfile\fR این گزینه علاوه بر فایل پیکربندی سراسری پیش‌فرض که در ادامه شرح داده شده است، یک فایل پیکربندی سراسری دیگر را مشخص می‌کند. این فایل پس از فایل پیکربندی سراسری پیش‌فرض پردازش خواهد شد. اگر گزینه \fB\-c\fR بیش از یک بار مشخص شود، آخرین فایل پیکربندی مشخص‌شده استفاده خواهد شد. .TP \fB\-a\fR \fIarchitecture\fR این گزینه معماری مقصد سرور را مشخص می‌کند و مشابه گزینه \fB\-a\fR در \fIstap\fR است. برای جزئیات بیشتر به صفحه راهنمای .IR stap (1) مراجعه کنید. معماری پیش‌فرض، معماری سیستم میزبان است. .TP \fB\-r\fR \fIkernel\-release\fR این گزینه نگارش هسته مقصد سرور را مشخص می‌کند و مشابه گزینه \fB\-r\fR در \fIstap\fR است. برای جزئیات بیشتر به صفحه راهنمای .IR stap (1) مراجعه کنید. نگارش پیش‌فرض، همان نگارش هسته در حال اجرای فعلی است. یک سرور می‌تواند با مشخص کردن چندین فلگ \fB\-r\fR چندین نگارش را مدیریت کند. .TP \fB\-I\fR \fIpath\fR این گزینه یک مسیر اضافی را برای جستجوی تپ‌ست‌ها (tapsets) توسط سرور(ها) مشخص می‌کند و مشابه گزینه \fB\-I\fR در \fIstap\fR است. برای جزئیات بیشتر به صفحه راهنمای .IR stap (1) مراجعه کنید. .TP \fB\-R\fR \fIpath\fR این گزینه مکان زمان اجرای (runtime) systemtap مورد استفاده سرور(ها) را مشخص می‌کند و مشابه گزینه \fB\-R\fR در \fIstap\fR است. برای جزئیات بیشتر به صفحه راهنمای .IR stap (1) مراجعه کنید. .TP \fB\-B\fR \fIoptions\fR این گزینه گزینه‌هایی را مشخص می‌کند که هنگام ساخت ماژول‌های systemtap به \fImake\fR ارسال می‌شوند و مشابه گزینه \fB\-B\fR در \fIstap\fR است. برای جزئیات بیشتر به صفحه راهنمای .IR stap (1) مراجعه کنید. .TP \fB\-i\fR این گزینه یک میان‌بر است که سروری را برای مدیریت تمامی نگارش‌های نصب‌شده در \fI/lib/modules/\fR مشخص می‌کند. .TP \fB\-n\fR \fInickname\fR این گزینه امکان مشخص کردن پیکربندی سرور را بر اساس نام مستعار (nickname) فراهم می‌کند. هنگامی که \fB\-n\fR مشخص شود، یک سرور در حال اجرای فعلی با نام مستعار داده‌شده جستجو خواهد شد. چنانچه هیچ سرور در حال اجرایی با نام مستعار داده‌شده یافت نشود، پیکربندی سروری با این نام مستعار در فایل‌های پیکربندی سرورهای پیش‌فرض، یا مسیر پیکربندی‌شده در فایل پیکربندی سراسری یا فایل پیکربندی مشخص‌شده با گزینه \fB\-c\fR جستجو خواهد شد. اگر پیکربندی سروری برای نام مستعار داده‌شده پیدا شود، گزینه‌های \fB\-a\fR، \fB\-r\fR، \fB\-I\fR، \fB\-R\fR، \fB\-B\fR و \fB\-u\fR برای آن سرور به همان گونه‌ای اعمال خواهند شد که گویی در خط فرمان مشخص شده‌اند. اگر هیچ پیکربندی با نام مستعار داده‌شده یافت نشود و عمل انتخابی .I start (یا عملی با رفتاری مشابه \fIstart\fR باشد؛ بخش \fBآرگومان‌ها (ARGUMENTS)\fR را ببینید)، سرور با نام مستعار داده‌شده راه‌اندازی خواهد شد. اگر هیچ پیکربندی با نام مستعار مشخص‌شده پیدا نشود و عمل انتخابی .I start (یا عملی با رفتار مشابه \fIstart\fR) نباشد، یک خطا رخ خواهد داد. چنانچه برای سروری که در حال راه‌اندازی است نام مستعاری مشخص نشود، نام مستعار آن شناسه فرآیند (PID) آن خواهد بود. .TP \fB\-p\fR \fIpid\fR این گزینه امکان مشخص کردن پیکربندی سرور را با شناسه فرآیند (process id) فراهم می‌کند. هنگامی که \fB\-p\fR مشخص شود، یک سرور در حال اجرای فعلی با شناسه فرآیند داده‌شده جستجو خواهد شد. اگر چنین سروری یافت نشود، خطا خواهد بود. اگر سروری با شناسه فرآیند داده‌شده پیدا شود، گزینه‌های \fB\-a\fR، \fB\-r\fR، \fB\-I\fR، \fB\-R\fR، \fB\-B\fR و \fB\-u\fR برای آن سرور به‌گونه‌ای استفاده خواهند شد که گویی در خط فرمان مشخص شده‌اند. .TP \fB\-u\fR \fIuser\-name\fR هر سرور کامپایل systemtap به طور معمول توسط نام کاربری \fIstap\-server\fR (برای initscript) یا به عنوان کاربری که \fIstap\-server\fR را فراخوانی می‌کند اجرا می‌شود، مگر اینکه به صورت دیگری پیکربندی شده باشد (بخش \fBفایل‌ها (FILES)\fR را ببینید). این گزینه نام کاربری مورد استفاده برای اجرای سرور(ها) را مشخص می‌کند. نام کاربری مشخص‌شده باید عضوی از گروه \fIstap\-server\fR باشد. .TP \fB\-\-log\fR \fIlogfile\fR این گزینه امکان مشخص کردن یک فایل لاگ جداگانه برای هر سرور را فراهم می‌کند. هر گزینه \-\-log به فهرستی اضافه می‌شود که به نوبه خود برای هر سرور مشخص‌شده اعمال خواهد شد. اگر تعداد سرورهای مشخص‌شده بیشتر از گزینه‌های \-\-log باشد، فایل لاگ پیش‌فرض (بخش \fBفایل‌ها (FILES)\fR را ببینید) برای سرورهای بعدی استفاده خواهد شد. .TP \fB\-\-port\fR \fIport\-number\fR این گزینه امکان مشخص کردن یک درگاه (پورت) شبکه خاص برای هر سرور را فراهم می‌کند. هر گزینه \-\-port به فهرستی اضافه می‌شود که به نوبه خود برای هر سرور مشخص‌شده اعمال خواهد شد. اگر سرورهای مشخص‌شده بیشتر از گزینه‌های \-\-port باشند، یک پورت تصادفی برای سرورهای بعدی انتخاب می‌شود. .TP \fB\-\-ssl\fR \fIcertificate\-db\-path\fR این گزینه امکان تعیین یک پایگاه‌داده گواهی NSS مجزا را برای هر سرور فراهم می‌کند. هر گزینه \-\-ssl به فهرستی اضافه می‌شود که به نوبه خود برای هر سرور مشخص‌شده اعمال خواهد شد. چنانچه تعداد سرورهای مشخص‌شده از گزینه‌های \-\-ssl بیشتر باشد، پایگاه‌داده گواهی پیش‌فرض (بخش \fBفایل‌ها (FILES)\fR را ببینید) برای سرورهای بعدی استفاده خواهد شد. .TP \fB\-\-max\-threads\fR \fIthreads\fR این گزینه امکان مشخص کردن حداکثر تعداد رشته‌های کارگر (worker threads) را برای مدیریت درخواست‌های همزمان فراهم می‌کند. اگر \fIthreads\fR == 0 باشد، هر درخواست روی رشته اصلی و به صورت متوالی مدیریت خواهد شد. مقدار پیش‌فرض برابر با تعداد هسته‌های پردازنده موجود است. .TP \fB\-\-max\-request\-size\fR \fIsize\fR این گزینه امکان تعیین حداکثر اندازه یک درخواست غیرفشرده کلاینت را فراهم می‌کند. آرگومان \fIsize\fR بر حسب بایت مشخص می‌شود. مقدار پیش‌فرض ۵۰۰۰۰ بایت است. .TP \fB\-\-max\-compressed\-request\fR \fIsize\fR این گزینه امکان تعیین حداکثر اندازه یک درخواست فشرده‌شده کلاینت را فراهم می‌کند. آرگومان \fIsize\fR بر حسب بایت مشخص می‌شود. مقدار پیش‌فرض ۵۰۰۰ بایت است. .SH "پیکربندی (CONFIGURATION)" فایل‌های پیکربندی به ما امکان می‌دهند: .IP \(bu 4 پیکربندی سراسری ثبت لاگ، فایل‌های پیکربندی سرور، فایل‌های وضعیت و سایر پارامترهای سراسری را مشخص کنیم. .IP \(bu 4 مشخص کنیم چه سرورهایی باید به طور پیش‌فرض راه‌اندازی شوند. .SH "پیکربندی سراسری (GLOBAL CONFIGURATION)" فایل پیکربندی سراسری شامل انتساب متغیرهایی است که برای پیکربندی عملکرد کلی سرویس استفاده می‌شوند. هر خطی که با نویسه '#' آغاز شود نادیده گرفته می‌شود. سایر خطوط باید به شکل \fIVARIABLE=VALUE\fR باشند. این یک اسکریپت شل نیست. تمام محتوای خط پس از علامت = همان‌طور که هست به متغیر نسبت داده می‌شود. متغیرهای زیر را می‌توان مقداردهی کرد: .TP .B CONFIG_PATH مسیر مطلق دایرکتوری حاوی پیکربندی‌های پیش‌فرض سرور را مشخص می‌کند. .TP .B STAT_PATH مسیر مطلق دایرکتوری وضعیت سرورهای در حال اجرا را مشخص می‌کند. .TP .B LOG_FILE مسیر مطلق فایل لاگ را مشخص می‌کند. .TP .B STAP_USER شناسه کاربری (userid) را مشخص می‌کند که برای اجرای سرور(ها) استفاده خواهد شد (پیش‌فرض: برای initscript کاربر \fIstap\-server\fR، و در غیر این صورت کاربری که \fIstap\-server\fR را اجرا می‌کند). .PP در اینجا نمونه‌ای از یک فایل پیکربندی سراسری آورده شده است: .SAMPLE CONFIG_PATH=~/my-stap-server-configs LOG_FILE=/tmp/stap-server/log .ESAMPLE .SH "پیکربندی سرور مجزا (INDIVIDUAL SERVER CONFIGURATION)" هر فایل پیکربندی سرور، سروری را پیکربندی می‌کند که باید در زمان عدم تعیین سرور برای عمل \fIstart\fR یا عملی با رفتار مشابه عمل \fIstart\fR راه‌اندازی شود (بخش \fIآرگومان‌ها (ARGUMENTS)\fR را ببینید). هر فایل پیکربندی شامل انتساب متغیرهایی است که برای پیکربندی یک سرور مجزا استفاده می‌شوند. هر خطی که با نویسه '#' آغاز شود نادیده گرفته می‌شود. سایر خطوط باید به شکل \fIVARIABLE=VALUE\fR باشند. این یک اسکریپت شل نیست. تمام محتوای خط پس از علامت = همان‌طور که هست به متغیر نسبت داده می‌شود. هر فایل پیکربندی باید دارای پسوند نام فایل \fI.conf\fR باشد. برای اطلاع از محل پیش‌فرض این فایل‌ها به \fIstappaths\fR(7) مراجعه کنید. این مکان پیش‌فرض را می‌توان در فایل پیکربندی سراسری با استفاده از گزینه \fB\-c\fR بازنویسی کرد (بخش \fIگزینه‌ها (OPTIONS)\fR را ببینید). متغیرهای زیر را می‌توان مقداردهی کرد: .TP .B ARCH معماری مقصد را برای این سرور مشخص می‌کند و متناظر با گزینه \fB\-a\fR است (بخش \fIگزینه‌ها (OPTIONS)\fR را ببینید). اگر \fBARCH\fR تنظیم نشود، معماری میزبان استفاده خواهد شد. .TP .B RELEASE یک نگارش هسته را برای این سرور مشخص می‌کند و متناظر با گزینه \fB\-r\fR است (بخش \fIگزینه‌ها (OPTIONS)\fR را ببینید). اگر \fBRELEASE\fR تنظیم نشود، نگارش هسته در حال اجرا روی میزبان استفاده خواهد شد. .TP .B BUILD گزینه‌هایی را مشخص می‌کند که باید به فرآیند \fImake\fR که توسط \fIsystemtap\fR برای ساخت ماژول‌های هسته به کار می‌رود ارسال شوند. این یک متغیر آرایه‌ای است که هر عنصر آن متناظر با یک گزینه \fB\-B\fR است (بخش \fIگزینه‌ها (OPTIONS)\fR را ببینید). استفاده از قالب \fBBUILD=STRING\fR آرایه را پاک کرده و عنصر اول را برابر با \fBSTRING\fR قرار می‌دهد. استفاده از قالب \fBBUILD+=STRING\fR رشته \fBSTRING\fR را به عنوان یک عنصر اضافی به آرایه می‌افزاید. .TP .B INCLUDE فهرستی از دایرکتوری‌ها را برای جستجوی تپ‌ست‌ها توسط سرور مشخص می‌کند. این یک متغیر آرایه‌ای است که هر عنصر آن متناظر با یک گزینه \fB\-I\fR است (بخش \fIگزینه‌ها (OPTIONS)\fR را ببینید). استفاده از قالب \fBINCLUDE=PATH\fR آرایه را پاک کرده و عنصر نخست را برابر با \fBPATH\fR قرار می‌دهد. استفاده از قالب \fBINCLUDE+=PATH\fR مسیر \fBPATH\fR را به عنوان یک عنصر اضافی به آرایه می‌افزاید. .TP .B RUNTIME دایرکتوری حاوی کد زمان اجرای systemtap را برای استفاده توسط این سرور مشخص می‌کند و متناظر با گزینه \fB\-R\fR است (بخش \fIگزینه‌ها (OPTIONS)\fR را ببینید). .TP .B USER نام کاربری مورد استفاده برای اجرای این سرور را مشخص می‌کند و متناظر با گزینه \fB\-u\fR است (بخش \fIگزینه‌ها (OPTIONS)\fR را ببینید). .TP .B NICKNAME نام مستعار مورد استفاده برای اشاره به این سرور را مشخص می‌کند و متناظر با گزینه \fB\-n\fR است (بخش \fIگزینه‌ها (OPTIONS)\fR را ببینید). .TP .B LOG مکان فایل لاگ مورد استفاده توسط این سرور را مشخص می‌کند و متناظر با گزینه \fB\-\-log\fR است (بخش \fIگزینه‌ها (OPTIONS)\fR را ببینید). .TP .B PORT درگاه شبکه مورد استفاده توسط این سرور را مشخص می‌کند و متناظر با گزینه \fB\-\-port\fR است (بخش \fIگزینه‌ها (OPTIONS)\fR را ببینید). .TP .B SSL مکان پایگاه‌داده گواهی NSS مورد استفاده توسط این سرور را مشخص می‌کند و متناظر با گزینه \fB\-\-ssl\fR است (بخش \fIگزینه‌ها (OPTIONS)\fR را ببینید). .TP .B MAXTHREADS حداکثر تعداد رشته‌های کارگر را برای مدیریت درخواست‌های همزمان مورد استفاده این سرور مشخص می‌کند و متناظر با گزینه \fB\-\-max\-threads\fR است (بخش \fIگزینه‌ها (OPTIONS)\fR را ببینید). .TP .B MAXREQSIZE حداکثر اندازه یک درخواست کلاینت غیرفشرده را برای این سرور مشخص می‌کند و متناظر با گزینه \fB\-\-max\-request\-size\fR است (بخش \fIگزینه‌ها (OPTIONS)\fR را ببینید). .TP .B MAXCOMPRESSEDREQ حداکثر اندازه یک درخواست فشرده‌شده کلاینت را برای این سرور مشخص می‌کند و متناظر با گزینه \fB\-\-max\-compressed\-request\fR است (بخش \fIگزینه‌ها (OPTIONS)\fR را ببینید). .PP نمونه‌ای از یک فایل پیکربندی سرور: .SAMPLE ARCH= USER= RELEASE= NICKNAME=native .ESAMPLE با خالی نگه داشتن فیلدهای ARCH ،USER و RELEASE، آن‌ها به طور پیش‌فرض روی معماری و نگارش فعلی تنظیم شده و از کاربر پیش‌فرض استفاده خواهند کرد. یک مثال مشخص‌تر: .SAMPLE ARCH=i386 RELEASE=2.6.18-128.el5 PORT=5001 LOG=/path/to/log/file .ESAMPLE و در اینجا یک مثال پیچیده‌تر آورده شده است: .SAMPLE USER=serveruser RELEASE=/kernels/2.6.18-92.1.18.el5/build INCLUDE=/mytapsets INCLUDE+=/yourtapsets BUILD='VARIABLE1=VALUE1 VARIABLE2=VALUE2' DEFINE=STP_MAXMEMORY=1024 DEFINE+=DEBUG_TRANS RUNTIME=/myruntime NICKNAME=my-server SSL=/path/to/NSS/certificate/database .ESAMPLE .SH "احراز هویت سرور (SERVER AUTHENTICATION)" امنیت اتصال شبکه SSL بین کلاینت و سرور به مدیریت صحیح گواهی‌های سرور بستگی دارد. .PP قابلیت اعتماد یک سرور کامپایل systemtap مشخص را نمی‌توان بدون یک مرجع صدور گواهی (CA) معتبر که گواهی‌های سرور کامپایل systemtap را صادر کند به صورت خودکار تعیین کرد. این امر در استفاده روزمره عملی نیست و بنابراین کلاینت‌ها باید سرورها را بر اساس پایگاه‌داده گواهی‌های سرور مورد اعتماد خودشان احراز هویت کنند. در این زمینه، ایجاد اعتماد به یک سرور مشخص توسط یک کلاینت، به معنای افزودن گواهی آن سرور به پایگاه‌داده سرورهای مورد اعتماد کلاینت است. .PP برای اسکریپت راه‌اندازی (initscript) \fIstap\-server\fR روی میزبان محلی، این کار به صورت خودکار انجام می‌شود. هنگامی که بسته \fIsystemtap\-server\fR نصب می‌شود، گواهی سرور برای کاربر پیش‌فرض (\fIstap\-server\fR) به صورت خودکار تولید و نصب می‌گردد. این بدان معناست که سرورهای راه‌اندازی‌شده توسط initscript با نام \fIstap\-server\fR و با کاربر پیش‌فرض، به طور خودکار توسط کلاینت‌های روی میزبان محلی هم به عنوان همتای SSL و هم به عنوان امضاکننده ماژول systemtap مورد اعتماد هستند. .PP علاوه بر این، هنگامی که stap توسط یک کاربر بدون امتیاز (کاربری غیر از root، عضوی غیر از گروه stapdev، اما عضوی از گروه stapusr و احتمالاً گروه stapsys) فراخوانی می‌شود، گزینه‌های \fI\-\-use\-server\fR و \fI\-\-privilege\fR به طور خودکار به گزینه‌های مشخص‌شده اضافه می‌شوند. این بدان معناست که کاربران بدون امتیاز روی میزبان محلی می‌توانند از سرور موجود روی میزبان محلی در حالت بدون امتیاز و بدون نیاز به هیچ‌گونه تنظیمات یا گزینه اضافی استفاده کنند. کاربران عادی (کسانی که در هیچ‌یک از گروه‌های SystemTap عضو نیستند) نیز می‌توانند از طریق گزینه‌های \fI\-\-use\-server\fR و \fI\-\-privilege\fR از سرورهای کامپایل استفاده کنند؛ اما البته آن‌ها قادر به بارگذاری ماژول نخواهند بود (از گزینه \fI\-p4\fR می‌توان برای متوقف کردن عملیات پیش از بارگذاری استفاده کرد). .PP به منظور استفاده از سروری که روی میزبان دیگری در حال اجراست، گواهی آن سرور باید روی میزبان کلاینت نصب شود. برای جزئیات بیشتر به گزینه \fI\-\-trust\-servers\fR در صفحه راهنمای .IR stap (1) و فایل README.unprivileged در سورس‌های systemtap مراجعه کنید. .SH "مثال‌ها (EXAMPLES)" برای مشاهده مجموعه‌ای از اسکریپت‌های نمونه \fIsystemtap\fR به صفحه راهنمای .IR stapex (3stap) مراجعه کنید. .PP برای راه‌اندازی سرورهای پیکربندی‌شده، یا سرور پیش‌فرض در صورت عدم پیکربندی هیچ سروری: .PP .B \& $ [ service ] stap\-server start .PP برای راه‌اندازی سروری که از تمام نگارش‌های هسته نصب‌شده در /lib/modules پشتیبانی می‌کند: .PP .B \& $ [ service ] stap\-server start \-i .PP برای دریافت اطلاعات درباره سرور(های) در حال اجرا: .PP .B \& $ [ service ] stap\-server status .PP برای راه‌اندازی سروری مشابه سرور دیگر اما با معماری مقصد متفاوت، از طریق ارجاع به نام مستعار سرور اول: .PP .B \& $ [ service ] stap\-server start \-n \fINICKNAME\fB \-a \fIARCH\fR .PP برای راه‌اندازی سروری برای نگارشی از هسته که نصب نشده است (کامپایل متقاطع یا cross-compiling): .PP .B \& $ [ service ] stap\-server start \-a \fIARCH\fB \-r \fI/BUILDDIR\fR .PP برای متوقف کردن یکی از سرورها با ارجاع به شناسه فرآیند آن (به‌دست‌آمده از اجرای \fBstap\-server status\fR): .PP .B \& $ [ service ] stap\-server stop \-p \fIPID\fR .PP برای اجرای یک اسکریپت با استفاده از سرور کامپایل: .PP .B \& $ stap SCRIPT \-\-use\-server .PP برای اجرای یک اسکریپت به عنوان کاربر بدون امتیاز با استفاده از سرور کامپایل: .PP .B \& $ stap SCRIPT .PP برای متوقف کردن تمام سرورهای در حال اجرا: .PP .B \& $ [ service ] stap\-server stop .PP برای راه‌اندازی مجدد سرورها پس از تغییر در پیکربندی سراسری و/یا زمانی که سرورهای پیش‌فرض افزوده، تغییر داده یا حذف شده‌اند: .PP .B \& $ [ service ] stap\-server force-reload .SH "ایمنی و امنیت (SAFETY AND SECURITY)" ابزار Systemtap یک ابزار مدیریتی است. این ابزار ساختارهای داده داخلی هسته و اطلاعات به طور بالقوه خصوصی کاربران را آشکار می‌کند. برای اطلاعات بیشتر در مورد ایمنی و امنیت به صفحه راهنمای .IR stap (1) مراجعه کنید. .PP به عنوان یک سرور شبکه، stap\-server باید با احتیاط فعال شود تا اثرات بالقوه باگ‌ها یا کاربران مخرب محدود گردد. اقدامات پیشگیرانه زیر را مد نظر قرار دهید: .TP 1 اجرای stap\-server به عنوان یک کاربر بدون امتیاز، و هرگز به عنوان ریشه (root). هنگامی که به عنوان یک سرویس (یعنی \fBservice stap\-server\fR ...) فراخوانی می‌شود، هر سرور به طور پیش‌فرض به عنوان کاربر \fIstap\-server\fR اجرا می‌گردد. هنگامی که به طور مستقیم (یعنی \fBstap\-server\fR ...) فراخوانی شود، هر سرور به طور پیش‌فرض به عنوان کاربری که آن را فراخوانی کرده اجرا می‌شود. در هر دو حالت، می‌توان کاربر دیگری را با استفاده از گزینه \fI\-u\fR هنگام فراخوانی، یا با تعیین \fISTAP_USER=\fRusername در فایل پیکربندی سراسری یا با تعیین \fIUSER=\fRusername در فایل پیکربندی سرور مجزا انتخاب کرد. کاربر فراخواننده باید دسترسی و اختیار لازم برای اجرای فرآیندها به عنوان کاربر دیگر را داشته باشد. بخش \fBپیکربندی (CONFIGURATION)\fR را ببینید. کاربر انتخاب‌شده باید دسترسی نوشتن به فایل لاگ سرور را داشته باشد. محل فایل لاگ سرور را می‌توان با تنظیم \fILOG_FILE=\fRpath در فایل پیکربندی سراسری تغییر داد. بخش \fBپیکربندی (CONFIGURATION)\fR را ببینید. کاربر انتخاب‌شده باید دسترسی خواندن/نوشتن به دایرکتوری حاوی فایل‌های وضعیت سرور را داشته باشد. محل فایل‌های وضعیت سرور را می‌توان با تنظیم \fISTAT_PATH=\fRpath در فایل پیکربندی سراسری تغییر داد. بخش \fBپیکربندی (CONFIGURATION)\fR را ببینید. کاربر انتخاب‌شده باید دسترسی خواندن/نوشتن به دایرکتوری ساخت uprobes.ko و فایل‌های آن را داشته باشد. در صورتی که کاربر انتخاب‌شده root باشد، هیچ‌یک از اشکال stap\-server اجرا نخواهند شد. .TP 2 اجرای درخواست‌های stap\-server با محدودیت‌های منابع که حداکثر زمان پردازنده (CPU time)، اندازه فایل و مصرف حافظه را تعیین می‌کند، تا اثرات پردازش ورودی‌های بسیار بزرگ یا نامعتبر مهار شود. هنگامی که کاربر اجراکننده سرور \fIstap\-server\fR باشد، هر درخواست سرور با محدودیت‌های مشخص‌شده در \fI~stap-server/.systemtap/rc\fR اجرا می‌شود؛ در غیر این صورت هیچ محدودیتی اعمال نخواهد شد. .TP 3 اجرای stap\-server با متغیر محیطی TMPDIR که به یک دایرکتوری جداگانه و/یا دارای سهمیه دیسک (quota) اشاره دارد، تا از پر شدن سیستم‌فایل‌های مهم جلوگیری شود. مقدار پیش‌فرض TMPDIR برابر با /tmp/ است. .TP 4 فعال‌سازی فایروال‌های شبکه برای محدود کردن اتصالات کلاینت‌های stap به شبکه‌های نسبتاً قابل اعتماد. جهت انتخاب خودکار سرورها توسط کلاینت‌ها، ابزار \fIavahi\fR باید هم روی میزبان سرور و هم میزبان کلاینت نصب شده باشد و به پیام‌های \fImDNS\fR اجازه عبور از فایروال داده شود. .PP سرور کامپایل systemtap و ابزارهای مرتبط با آن از لایه سوکت‌های امن (SSL) همان‌طور که توسط Network Security Services (NSS) پیاده‌سازی شده برای امنیت شبکه استفاده می‌کنند. همچنین از NSS برای تولید و مدیریت گواهی‌ها استفاده می‌شود. پایگاه‌های داده گواهی مرتبط باید به منظور حفظ امنیت سیستم محافظت شوند. استفاده از ابزارهای ارائه‌شده به اطمینان از حفظ محافظت مناسب کمک خواهد کرد. کلاینت systemtap پیش از استفاده از هرگونه پایگاه‌داده گواهی، مجوزهای دسترسی مناسب را بررسی می‌کند. .SH "فایل‌ها (FILES)" .TP فایل‌های مهم و مسیرهای مربوط به آن‌ها را می‌توان در صفحه راهنمای .IR stappaths (7) یافت. .SH "همچنین ببینید (SEE ALSO)" .nh .nf .IR stap (1), .IR staprun (8), .IR stapprobes (3stap), .IR stappaths (7), .IR stapex (3stap), .IR avahi , .IR ulimit (1), .IR NSS .SH "اشکالات (BUGS)" از پیوند سامانه ردیابی اشکالات (Bugzilla) در صفحه وب پروژه یا فهرست پستی ما استفاده کنید: .nh .BR http://sourceware.org/systemtap ", " . .hy