agetty - برنامه
مدیریت
خطوط tty و باز
کردن نشست
ورود به
سیستم
agetty [options] port [baud_rate...]
[term]
دستور agetty
یک درگاه tty
را باز
میکند،
نام کاربری
ورود را
درخواست
کرده و
دستور /bin/login را
فراخوانی
میکند. این
برنامه
معمولاً
توسط init(8)
اجرا
میشود.
دستور agetty
چندین
ویژگی غیر
استاندارد
دارد که
برای خطوط
اتصال
مستقیم
فیزیکی و
خطوط تلفنی
(dial-in) مفید
هستند:
•تنظیمات
tty را هنگام
خواندن نام
کاربری با
بیتهای
پاریتی،
نویسههای
پاککردن
(erase)، حذف خط (kill)،
پایان خط (end-of-line)
و حروف بزرگ
تطبیق
میدهد. این
برنامه
میتواند
نویسههای
۷ بیتی با
پاریتی
زوج، فرد،
بدون
پاریتی یا
پاریتی
فاصله (space) و
همچنین
نویسههای
۸ بیتی بدون
پاریتی را
مدیریت کند.
نویسههای
کنترلی
ویژه زیر
شناسایی
میشوند: Control-U
(حذف خط)؛ DEL و backspace
(پاککردن
نویسه
قبلی)؛ carriage return و line feed
(پایان خط).
همچنین به
گزینههای
--erase-chars و --kill-chars
مراجعه
کنید.
•بهطور
اختیاری
نرخ باود (baud rate)
را از
پیامهای CONNECT
صادرشده
توسط
مودمهای
سازگار با Hayes(tm)
استخراج و
تعیین
میکند.
•بهطور
اختیاری
هنگام
مواجهه با
یک خط از قبل
باز شده،
ارتباط را
قطع
نمیکند
(مفید برای
برنامههای
تماس مجدد
یا call-back).
•بهطور
اختیاری
محتوای
فایل /etc/issue را
نمایش
نمیدهد.
•بهطور
اختیاری
فایلها یا
دایرکتوریهای
issue جایگزین
را به جای /etc/issue
یا /etc/issue.d نمایش
میدهد.
•بهطور
اختیاری
نام کاربری
را درخواست
نمیکند.
•بهطور
اختیاری یک
برنامه
ورود غیر
استاندارد
را به جای /bin/login
فراخوانی
میکند.
•بهطور
اختیاری
کنترل
جریان
سختافزاری
(hardware flow control) را فعال
میکند.
•بهطور
اختیاری خط
را بدون
نیاز به
سیگنال
تشخیص حامل
(carrier detect) به حالت
محلی (local)
مجبور
میکند.
این
برنامه از
فایلهای
/etc/gettydefs (مربوط
به System V) یا /etc/gettytab
(مربوط به SunOS 4)
استفاده
نمیکند.
port
یک مسیر
نسبی نسبت
به
دایرکتوری
/dev. اگر "-"
مشخص شود،
agetty فرض
میکند که
ورودی
استاندارد
آن از قبل به
یک درگاه tty
متصل است و
ارتباط با
کاربر راه
دور برقرار
شده است.
در System V،
آرگومان port
بهصورت "-"
باید با یک
"--" همراه
باشد.
baud_rate,...
فهرستی
جداشده با
کاما از یک
یا چند نرخ
باود. هر بار
که
agetty یک
نویسه BREAK
دریافت
میکند، به
مقدار بعدی
در این
فهرست که
بهصورت
چرخشی در
نظر گرفته
میشود
میرود.
نرخهای
باود باید
به ترتیب
نزولی مشخص
شوند تا از
نویسه null (یا Ctrl-@)
نیز بتوان
برای
جابهجایی
نرخ باود
استفاده
کرد.
این
آرگومان
برای
پایانههای
مجازی (virtual terminals)
اختیاری و
غیرضروری
است.
مقدار
پیشفرض
برای
پایانههای
سریالی (serial terminals)
حفظ نرخ
باود فعلی
است (به --keep-baud
مراجعه
کنید) و در
صورت
ناموفق
بودن، به
مقدار
پیشفرض '9600'
بازمیگردد.
term
مقداری
که باید
برای متغیر
محیطی
TERM
استفاده
شود. این
مقدار هر
تنظیمی که
ممکن است
توسط
init(1)
اعمال شده
باشد را لغو
میکند و
توسط login و
پوسته به
ارث برده
میشود.
مقدار
پیشفرض 'vt100'
است، یا
برای
لینوکس در
پایانه
مجازی 'linux'، و
برای GNU Hurd در
پایانه
مجازی 'hurd'
است.
-8, --8bits
فرض
میکند
پایانه tty هشت
بیتی تمیز (8-bit
clean) است،
بنابراین
تشخیص
پاریتی را
غیرفعال
میکند.
-a, --autologin username
کاربر
مشخصشده
را بهطور
خودکار
بدون
درخواست
نام کاربری
یا گذرواژه
وارد سیستم
میکند.
استفاده از
این گزینه
باعث اضافه
شدن گزینه و
آرگومان
-f
username به خط
فرمان
/bin/login
میشود. به
--login-options مراجعه
کنید که
میتواند
برای تغییر
رفتار این
گزینه
استفاده
شود.
توجه
داشته
باشید که --autologin
ممکن است بر
نحوه
مقداردهی
اولیه خط
سریالی
توسط getty
تأثیر
بگذارد،
زیرا در
حالت ورود
خودکار، agetty
دادهای از
خط
نمیخواند
و فرصتی
برای
بهینهسازی
تنظیمات خط
ندارد.
-c, --noreset
پرچمهای
کنترلی
پایانه (cflags یا
control modes) را
بازنشانی
نمیکند.
برای
جزئیات
بیشتر به
termios(3)
مراجعه
کنید.
-E, --remote
بهطور
معمول
دستور
login(1)
زمانی که
توسط
برنامههایی
مانند
telnetd(8)
فراخوانی
میشود، یک
نام میزبان
راه دور
دریافت
میکند. این
گزینه به
agetty
اجازه
میدهد
مقداری را
که
بهعنوان
نام میزبان
استفاده
میکند
برای درج در
utmp(5) به
login(1)
منتقل کند.
به
--host،
login(1) و
utmp(5)
مراجعه
کنید.
اگر گزینه
--host fakehost داده
شود، آنگاه
گزینه و
آرگومان -h
fakehost به خط
فرمان /bin/login
اضافه
میشود.
اگر گزینه
--nohostname داده
شود، آنگاه
گزینه -H به
خط فرمان /bin/login
اضافه
میشود.
به --login-options
مراجعه
کنید.
-f, --issue-file path
فهرستی
جداشده با
":" از
فایلها و
دایرکتوریها
را مشخص
میکند تا
به جای /etc/issue (یا
موارد دیگر)
نمایش داده
شوند. همه
فایلها و
دایرکتوریهای
مشخصشده
نمایش داده
میشوند و
فایلهای
ناموجود یا
خالی بدون
پیام
نادیده
گرفته
میشوند.
اگر مسیر
مشخصشده
یک
دایرکتوری
باشد، تمام
فایلهای
دارای
پسوند .issue به
ترتیب
مرتبسازی
نسخه از آن
دایرکتوری
نمایش داده
میشوند.
این ویژگی
امکان
نمایش
پیامهای
سفارشی روی
پایانههای
مختلف را
فراهم
میکند.
گزینه --noissue
این گزینه
را لغو
خواهد کرد.
--show-issue
فایل issue
فعلی (یا
موارد دیگر)
را روی
پایانه
فعلی نمایش
داده و خارج
میشود. از
این گزینه
برای بررسی
تنظیمات
فعلی
استفاده
کنید؛ برای
هدف دیگری
طراحی نشده
است. توجه
داشته
باشید که
خروجی ممکن
است از برخی
اطلاعات
پیشفرض یا
ناقص
استفاده
کند زیرا
خروجی
مناسب به
پایانه و خط
فرمان agetty
بستگی
دارد.
-h, --flow-control
کنترل
جریان
سختافزاری
(RTS/CTS) را فعال
میکند.
غیرفعال
کردن
پروتکل
جریان
نرمافزاری
(XON/XOFF) در صورت
نیاز به
عهده
برنامه
کاربردی
گذاشته
میشود.
-H, --host fakehost
نام
میزبان
ساختگی
مشخصشده
(fakehost) را در
فایل utmp
مینویسد.
بهطور
معمول هیچ
میزبان
ورودی مشخص
نمیشود
زیرا agetty
برای
اتصالات
مستقیم
محلی و
کنسولها
استفاده
میشود. با
این حال،
این گزینه
میتواند
برای
شناسایی
متمرکزکنندههای
پایانه (terminal concentrators)
و موارد
مشابه مفید
باشد.
-i, --noissue
پیش از
چاپ اعلان
ورود،
محتوای /etc/issue
(یا موارد
دیگر) را
نمایش
نمیدهد.
پایانهها
یا
سختافزارهای
ارتباطی
ممکن است با
دریافت
متنهای
طولانی در
نرخ باود
اشتباه
دچار
اختلال
شوند؛
همچنین
اسکریپتهای
اتصال
تلفنی (dial-up)
ممکن است در
صورت
طولانی
بودن متن
قبل از
اعلان
ورود، با
شکست مواجه
شوند.
-I, --init-string initstring
یک رشته
اولیه را
برای ارسال
به tty یا مودم،
پیش از
ارسال هر
چیز دیگری
تعیین
میکند. این
گزینه
میتواند
برای
مقداردهی
اولیه مودم
استفاده
شود.
نویسههای
غیرقابل
چاپ را
میتوان با
نوشتن کد
هشتهشتی (octal)
آنها با یک
بکاسلش (\)
ارسال کرد.
برای مثال،
برای ارسال
نویسه linefeed (کد
اسکی ۱۰،
هشتهشتی 012)،
عبارت \12 را
بنویسید.
-J, --noclear
پیش از
درخواست
نام کاربری
برای ورود،
صفحه را پاک
نمیکند.
بهطور
پیشفرض
صفحه پاک
میشود.
-l, --login-program login_program
برنامه
login_program
مشخصشده
را به جای /bin/login
فراخوانی
میکند. این
ویژگی
امکان
استفاده از
یک برنامه
ورود غیر
استاندارد
را فراهم
میسازد.
چنین
برنامهای
میتواند
برای مثال
یک گذرواژه
اتصال
تلفنی
درخواست
کند یا از یک
فایل
گذرواژه
دیگر
استفاده
نماید. به
--login-options مراجعه
کنید.
-L, --local-line[=mode]
پرچم خط CLOCAL
را کنترل
میکند.
آرگومان
اختیاری
mode
میتواند
auto،
always یا
never
باشد. اگر
آرگومان
mode
حذف شود،
مقدار
پیشفرض
always
است. اگر
گزینه
--local-line
اصلاً مشخص
نشود،
مقدار
پیشفرض
auto
خواهد بود.
always
خط را
وادار
میکند که
یک خط محلی
باشد بدون
نیاز به
سیگنال
تشخیص حامل
(carrier detect). این حالت
زمانی مفید
است که یک
پایانه
متصل
بهصورت
محلی دارید
که در آن خط
سریال
سیگنال
تشخیص حامل
را تنظیم
نمیکند.
never
بهطور
صریح پرچم CLOCAL
را از
تنظیمات خط
پاک میکند
و انتظار
میرود
سیگنال
تشخیص حامل
روی خط وجود
داشته
باشد.
auto
حالت
پیشفرض agetty
است.
تنظیمات CLOCAL
را تغییر
نمیدهد و
از تنظیمی
که توسط
هسته فعال
شده پیروی
میکند.
-m, --extract-baud
تلاش
میکند تا
نرخ باود را
از پیام
وضعیت CONNECT
تولیدشده
توسط
مودمهای
سازگار با Hayes(tm)
استخراج
کند. این
پیامهای
وضعیت به
شکل "<junk><speed><junk>"
هستند.
agetty
فرض میکند
که مودم
پیام وضعیت
خود را با
همان سرعتی
ارسال
میکند که
با (اولین)
مقدار
baud_rate در
خط فرمان
مشخص شده
است.
از آنجا که
ویژگی --extract-baud
ممکن است در
سیستمهای
با بار
پردازشی
سنگین
ناموفق
باشد،
همچنان
باید با
شمارش تمام
نرخهای
باود مورد
انتظار در
خط فرمان،
پردازش BREAK را
فعال نگه
دارید.
--list-speeds
نرخهای
باود
پشتیبانیشده
را نمایش
میدهد. این
مقادیر در
زمان
کامپایل
برنامه
تعیین
میشوند.
-n, --skip-login
از کاربر
نام کاربری
درخواست
نمیکند.
این گزینه
میتواند
در ترکیب با
گزینه --login-program
برای
فراخوانی
یک فرایند
ورود غیر
استاندارد
مانند
سیستمهای BBS
استفاده
شود. توجه
داشته
باشید که با
گزینه --skip-login،
دستور agetty
هیچ ورودی
از کاربری
که وارد
میشود
دریافت
نمیکند و
بنابراین
قادر
نخواهد بود
پاریتی،
اندازه
نویسه و
پردازش خط
جدید اتصال
را تشخیص
دهد؛ در
نتیجه به
پاریتی
فاصله (space)،
نویسههای
۷ بیتی و
نویسه
پایان خط
اسکی CR (13)
بازمیگردد.
توجه داشته
باشید
برنامهای
که agetty اجرا
میکند
(معمولاً /bin/login)
با دسترسی
ریشه (root) اجرا
میشود.
-N, --nonewline
پیش از
نوشتن
محتوای /etc/issue
یک خط جدید
چاپ
نمیکند.
-o, --login-options login_options
گزینهها
و
آرگومانهایی
که به
login(1)
ارسال
میشوند. در
این رشته \u با
نام کاربری
ورود
جایگزین
میشود.
برای مثال:
--login-options '-h darkstar -- \u'
به --autologin، --login-program
و --remote مراجعه
کنید.
لطفاً پیش
از استفاده
از این
گزینه، بخش
نکات
امنیتی (SECURITY NOTICE)
را در ادامه
مطالعه
کنید.
-p, --login-pause
پیش از
رفتن به
اعلان
ورود،
منتظر
فشرده شدن
هر کلیدی
میماند.
میتوان آن
را با --autologin
ترکیب کرد
تا با ایجاد
تنبل (lazy spawning)
پوستهها
در مصرف
حافظه
صرفهجویی
شود.
-r, --chroot directory
ریشه را
به
دایرکتوری
مشخصشده
تغییر
میدهد (chroot).
-R, --hangup
فراخوانی
سیستمی
vhangup(2)
را برای قطع
مجازی
ارتباط
پایانه
مشخصشده
اجرا
میکند.
-s, --keep-baud
تلاش
میکند نرخ
باود موجود
را حفظ کند.
نرخهای
باود
مشخصشده
در خط فرمان
زمانی
استفاده
میشوند که
agetty یک نویسه BREAK
دریافت کند.
اگر
نرخهای
باود دیگری
مشخص شده
باشد، نرخ
باود اولیه
نیز به
انتهای
فهرست
نرخهای
باود مورد
نظر اضافه
میشود. این
کار
میتواند
برای
بازگشت به
نرخ باود
اولیه پس از
رخداد BREAKهای
غیرمنتظره
استفاده
شود.
-t, --timeout timeout
اگر هیچ
نام کاربری
در عرض timeout
ثانیه
خوانده
نشود،
خاتمه
مییابد.
استفاده از
این گزینه
برای خطوط
پایانه با
اتصال
مستقیم
توصیه
نمیشود.
-U, --detect-case
پشتیبانی
از تشخیص
پایانههایی
که فقط
دارای حروف
بزرگ هستند
را فعال
میکند. این
تنظیم، نام
کاربری
حاوی حروف
تماماً
بزرگ را
بهعنوان
نشانهای
از پایانه
فقط دارای
حروف بزرگ
شناسایی
کرده و برخی
تبدیلهای
حروف بزرگ
به کوچک را
فعال
میکند.
توجه داشته
باشید که
این قابلیت
هیچ
پشتیبانی
از
نویسههای
یونیکد
ندارد.
-w, --wait-cr
پیش از
ارسال فایل
/etc/issue (یا سایر
فایلها) و
اعلان
ورود،
منتظر
میماند تا
کاربر یا
مودم یک
نویسه carriage-return یا
linefeed ارسال کند.
این گزینه
همراه با
گزینه --init-string
مفید است.
--nohints
راهنماها
و هشدارهای
مربوط به
کلیدهای Num Lock، Caps
Lock و Scroll Lock را چاپ
نمیکند.
--nohostname
بهطور
پیشفرض
نام میزبان
چاپ میشود.
با فعال
بودن این
گزینه،
اصلاً نام
میزبانی
نمایش داده
نخواهد شد.
این تنظیم
همچنین از
طریق گزینه
LOGIN_PLAIN_PROMPT در فایل
پیکربندی
/etc/login.defs قابل
فعالسازی
است (برای
جزئیات
بیشتر به
ادامه
مراجعه
کنید).
--long-hostname
بهطور
پیشفرض
نام میزبان
تنها تا
اولین نقطه
چاپ میشود.
با فعال
بودن این
گزینه، نام
کامل
میزبان (FQDN) از
طریق
gethostname(3P) یا
(در صورت
پیدا نشدن)
از طریق
getaddrinfo(3)
نمایش داده
میشود.
--erase-chars string
این
گزینه
نویسههای
اضافهای
را مشخص
میکند که
هنگام وارد
کردن نام
کاربری
توسط
کاربر،
باید
بهعنوان
کلید پسبر
(backspace یا
«نادیده
گرفتن
نویسه
قبلی»)
تفسیر شوند.
مقدار
پیشفرض
قبلی برای
نویسه حذف '#'
بود، اما از
نسخه util-linux 2.23 هیچ
نویسه حذف
اضافی
بهطور
پیشفرض
فعال نیست.
--kill-chars string
این
گزینه
نویسههای
اضافهای
را مشخص
میکند که
هنگام تایپ
نام کاربری
توسط
کاربر،
باید
بهعنوان
حذف کل خط (kill
یا «نادیده
گرفتن تمام
نویسههای
قبلی»)
تفسیر شوند.
مقدار
پیشفرض
قبلی برای
نویسه حذف
خط '@' بود، اما
از نسخه util-linux 2.23
هیچ نویسه
حذف خط
اضافی
بهطور
پیشفرض
فعال نیست.
--chdir directory
پیش از
ورود به
سیستم،
دایرکتوری
کاری را
تغییر
میدهد.
--delay number
تعداد
ثانیهای
که باید قبل
از باز کردن tty
توقف کند (sleep).
--nice number
فرایند
ورود را با
این اولویت
اولویتبندی
(nice) اجرا
میکند.
--reload
از تمام
نمونههای
در حال
اجرای
agetty
میخواهد
در صورتی که
کاربر هنوز
شروع به
ورود نکرده
باشد،
اعلانهای
نمایشدادهشده
خود را
بازخوانی و
بهروزرسانی
کنند. پس از
انجام این
کار، دستور
خارج خواهد
شد. این
قابلیت
ممکن است در
سیستمهای
فاقد
inotify(7)
لینوکس
پشتیبانی
نشود.
-h, --help
نمایش
متن راهنما
و خروج.
-V, --version
نمایش
نسخه و
خروج.
دستور agetty
فایل
پیکربندی
/etc/login.defs را
میخواند
(به login.defs(5)
مراجعه
کنید). توجه
داشته
باشید که
این فایل
پیکربندی
ممکن است
همراه با
بسته دیگری
(معمولاً shadow-utils)
توزیع شده
باشد. موارد
پیکربندی
زیر برای agetty
مرتبط
هستند:
LOGIN_PLAIN_PROMPT (بولی)
به agetty
اعلام
میکند که
چاپ نام
میزبان در
اعلان :login لغو
شود. این یک
جایگزین
برای گزینه
خط فرمان --nohostname
است. مقدار
پیشفرض no
است.
این بخش
مثالهایی
را برای
فیلد process از یک
مدخل در
فایل /etc/inittab
نشان
میدهد. شما
باید
مقادیر
مناسب را
برای سایر
فیلدها
اضافه کنید.
برای
جزئیات
بیشتر به inittab(5)
مراجعه
کنید.
برای یک خط
اتصال
مستقیم
فیزیکی یا
یک کنسول tty:
برای یک
پایانه
متصل
مستقیم
بدون
سیمکشی
مناسب برای
تشخیص حامل
(اگر پایانه
شما به جای
نمایش
اعلان password: به
حالت تعلیق
درمیآید،
این را
امتحان
کنید):
/sbin/agetty --local-line 9600 ttyS1 vt100
برای یک خط
تلفنی سنتی
با یک مودم
۹۶۰۰/۲۴۰۰/۱۲۰۰
باود:
/sbin/agetty --extract-baud --timeout 60 ttyS1
9600,2400,1200
برای یک
مودم Hayes با یک
رابط ثابت
۱۱۵۲۰۰ بیت
بر ثانیه به
دستگاه
(رشته
مقداردهی
اولیه در
این مثال
بازتاب
مودم و
کدهای
نتیجه را
غیرفعال
میکند،
سیگنال DCD
مودم/کامپیوتر
را با DCD
مودم/مودم
هماهنگ
میسازد،
افت سیگنال
DTR را باعث
قطع ارتباط
میکند و
پاسخ
خودکار را
پس از ۱ زنگ
فعال
مینماید):
/sbin/agetty --wait-cr --init-string
'ATE0Q1&D2&C1S0=1\015' 115200 ttyS1
اگر از
گزینههای
--login-program و --login-options
استفاده
میکنید،
توجه داشته
باشید که
ممکن است یک
کاربر مخرب
تلاش کند
نامهای
کاربری
همراه با
گزینههای
تعبیهشده
وارد کند که
سپس به
برنامه
ورود
استفادهشده
منتقل
میشوند. agetty
شروع شدن با
"-" را بررسی
میکند و
مطمئن
میشود که
نام کاربری
بهعنوان
یک پارامتر
منتقل شود
(بنابراین
فاصلههای
تعبیهشده
پارامتر
جدیدی
ایجاد
نمیکنند)،
اما بسته به
نحوه تجزیه
خط فرمان
توسط
باینری login
ممکن است
این کار
کافی نباشد.
بررسی کنید
که برنامه
ورود
استفادهشده
نتواند به
این روش
مورد
سوءاستفاده
قرار گیرد.
برخی
برنامهها
از "--"
استفاده
میکنند تا
مشخص کنند
که بقیه خط
فرمان
نباید
بهعنوان
گزینه
تفسیر شود.
در صورت
وجود این
قابلیت، با
قرار دادن
"--" قبل از
ارسال نام
کاربری
توسط \u از آن
استفاده
کنید.
فایل issue
پیشفرض /etc/issue
است. اگر این
فایل وجود
داشته
باشد، agetty
همچنین
وجود
دایرکتوری
/etc/issue.d را
بررسی
میکند. این
دایرکتوری
یک افزونه
اختیاری
برای فایل issue
پیشفرض
است و
محتوای
دایرکتوری
پس از
محتوای /etc/issue
چاپ میشود.
اگر فایل /etc/issue
وجود
نداشته
باشد، این
دایرکتوری
نادیده
گرفته
میشود.
تمام
فایلهای
دارای
پسوند .issue از
این
دایرکتوری
به ترتیب
مرتبسازی
نسخه چاپ
میشوند.
این
دایرکتوری
میتواند
برای
نگهداری
پیامهای
برنامههای
شخص ثالث
بهصورت
مستقل از
فایل اصلی
/etc/issue سیستم
استفاده
شود.
از نسخه
۲.۳۵ به بعد،
مکانهای
اضافی برای
فایل و
دایرکتوری
issue پشتیبانی
میشوند.
دستور agetty
فایلهای
/run/issue و /run/issue.d و
سپس /usr/lib/issue و
/usr/lib/issue.d را
بررسی
میکند.
دایرکتوری
/etc برای
پیکربندیهای
خاص
میزبان،
دایرکتوری
/run برای
محتوای
تولیدشده
خودکار، و
دایرکتوری
/usr/lib برای
پیکربندیهای
ایستا که
توسط توزیع
نگهداری
میشوند در
نظر گرفته
شده است.
توجه
داشته
باشید که در
نسخههای
۲.۳۵ تا ۲.۴۰،
مکانهای
اضافی تنها
در صورتی
خوانده
میشدند که
فایل
پیشفرض /etc/issue
وجود نداشت.
با این حال،
از نسخه
۲.۴۱،
مکانهای
اضافی
صرفنظر از
وجود فایل
/etc/issue همواره
خوانده
میشوند.
این تغییر
امکان
تولید
پیشفرض
فایلهای issue
را فراهم
میسازد.
مسیرهای
پیشفرض را
میتوان
بهطور
کامل با
استفاده از
گزینه --issue-file
بازنویسی
کرد. در این
حالت مسیر
مشخصشده
باید یک
فایل یا
دایرکتوری
باشد و تمام
مکانهای
پیشفرض
فایل و
دایرکتوری
issue نادیده
گرفته
میشوند.
قابلیت
فایل issue را
میتوان با
استفاده از
گزینه --noissue
بهطور
کامل
غیرفعال
کرد.
میتوان
فایل issue فعلی
را با دستور
agetty --show-issue روی
پایانه
فعلی بررسی
و بازبینی
کرد.
فایلهای
issue ممکن است
حاوی کدهای
گریز (escape codes)
خاصی برای
نمایش نام
سیستم،
تاریخ،
زمان و غیره
باشند. تمام
کدهای گریز
شامل یک
بکاسلش (\)
هستند که
بلافاصله
پس از آن یکی
از
نویسههای
فهرستشده
در زیر
میآید.
4 یا 4{interface}
نشانی IPv4
رابط شبکه
مشخصشده
را درج
میکند
(برای مثال: \4{eth0}).
اگر
آرگومان interface
مشخص نشود،
اولین رابط
شبکهای که
کاملاً
پیکربندی
شده باشد (UP،
غیر لوپبک
یا non-LOCALBACK، و RUNNING)
انتخاب
میشود. اگر
هیچ رابط
پیکربندیشدهای
پیدا نشود،
به نشانی IP
مربوط به
نام میزبان
دستگاه
بازمیگردد.
6 یا 6{interface}
همانند \4
اما برای IPv6.
b
نرخ باود
(baudrate) خط فعلی را
درج
میکند.
d
تاریخ
فعلی را درج
میکند.
e یا e{name}
نام
خوانا برای
انسان (name) را
به یک
دنباله
گریز (escape sequence)
ترجمه کرده
و درج
میکند
(برای مثال:
\e{red}متن
هشدار.\e{reset}). اگر
آرگومان name
مشخص نشود، \033
درج میشود.
نامهای
پشتیبانیشده
فعلی
عبارتند از:
black، blink، blue، bold، brown،
cyan، darkgray، gray، green، halfbright،
lightblue، lightcyan، lightgray، lightgreen،
lightmagenta، lightred، magenta، red،
reset، reverse، yellow و white.
تمام
نامهای
ناشناخته
بدون خطا
نادیده
گرفته
میشوند.
s
نام
سیستم (نام
سیستمعامل)
را درج
میکند.
معادل
دستور 'uname -s' است.
همچنین به
کد گریز \S
مراجعه
کنید.
S یا S{VARIABLE}
دادههای
متغیر VARIABLE را
از /etc/os-release درج
میکند. اگر
این فایل
وجود
نداشته
باشد، به
/usr/lib/os-release
بازمیگردد.
اگر
آرگومان VARIABLE
مشخص نشود،
از PRETTY_NAME داخل
فایل یا نام
سیستم
استفاده
میکند (به \s
مراجعه
کنید). این کد
گریز
میتواند
برای حفظ
استقلال /etc/issue
از نوع
توزیع و
شماره
انتشار
استفاده
شود. توجه
داشته
باشید که \S{ANSI_COLOR}
به دنباله
گریز واقعی
پایانه
تبدیل
میشود.
l
نام خط tty
فعلی را درج
میکند.
m
شناسه
معماری
سختافزار
دستگاه را
درج میکند.
معادل
دستور uname -m
است.
n
نام گره
(nodename) دستگاه را
درج میکند
که با عنوان
نام میزبان
(hostname) نیز
شناخته
میشود.
معادل
دستور uname -n
است.
o
نام
دامنه NIS
دستگاه را
درج میکند.
معادل
دستور hostname -d
است.
O
نام
دامنه DNS
دستگاه را
درج
میکند.
r
شماره
انتشار (release)
سیستمعامل
را درج
میکند.
معادل
دستور uname -r
است.
t
زمان
فعلی را درج
میکند.
u
تعداد
کاربرانی
را که
هماکنون
وارد سیستم
شدهاند
درج
میکند.
U
رشته "1 user"
یا "<n> users" را
درج میکند
که در آن <n>
تعداد
کاربرانی
است که
هماکنون
وارد سیستم
شدهاند.
v
نسخه
سیستمعامل،
یعنی تاریخ
ساخت (build-date) و
موارد
مشابه را
درج
میکند.
یک مثال.
در سیستم
من، فایل /etc/issue
زیر:
This is \n.\o (\s \m \r) \t
به این
صورت نمایش
داده
میشود:
This is thingol.orcan.dk (Linux i386 1.1.9) 18:29:30
/var/run/utmp
فایل
وضعیت
سیستم.
/etc/issue
پیش از
اعلان ورود
چاپ
میشود.
/etc/os-release /usr/lib/os-release
دادههای
شناسایی
سیستمعامل.
/dev/console
گزارشهای
مشکلات (در
صورتی که از
syslog(3) استفاده
نشود).
/etc/inittab
فایل
پیکربندی
init(8) برای
دیمن init به
سبک SysV.
دستور agetty
از
پیکربندی
از طریق
اعتبارنامههای
systemd پشتیبانی
میکند (به
https://systemd.io/CREDENTIALS
مراجعه
کنید). دستور
agetty
اعتبارنامههای
systemd زیر را
میخواند:
agetty.autologin (رشته)
در صورت
تنظیم، agetty
را به
گونهای
پیکربندی
میکند که
همانند
گزینه --autologin،
بهطور
خودکار
کاربر
مشخصشده
را بدون
درخواست
نام کاربری
یا گذرواژه
وارد سیستم
کند.
قابلیت
تشخیص نرخ
باود (گزینه
--extract-baud) مستلزم
این است که
agetty به
اندازه
کافی سریع
پس از
برقراری
تماس تلفنی
زمانبندی
و اجرا شود
(در عرض ۳۰
میلیثانیه
برای
مودمهایی
که با نرخ
۲۴۰۰ باود
ارتباط
برقرار
میکنند).
برای
پایداری
بیشتر،
همیشه از
گزینه --extract-baud
در ترکیب با
آرگومان
چندگانه
نرخ باود در
خط فرمان
استفاده
کنید تا
پردازش BREAK
فعال باشد.
متن موجود
در فایل /etc/issue
(یا سایر
فایلها) و
اعلان ورود
همواره با
نویسههای
۷ بیتی و
پاریتی
فاصله (space parity)
ارسال
میشوند.
قابلیت
تشخیص نرخ
باود (گزینه
--extract-baud) مستلزم
آن است که
مودم پیام
وضعیت خود
را پس از
فعال کردن
خط DCD ارسال
کند.
بسته به
نحوه
پیکربندی
برنامه،
تمام
پیامهای
تشخیصی روی
دستگاه
کنسول
نوشته
میشوند یا
از طریق
امکانات syslog(3)
گزارش
میشوند. در
صورتی که
آرگومان port
یک دستگاه
پایانه را
مشخص نکند؛
اگر مدخل utmp
برای
فرایند
فعلی وجود
نداشته
باشد (فقط در
System V)؛ و موارد
مشابه،
پیامهای
خطا صادر
میشوند.
Werner Fink <werner@suse.de>, Karel Zak
<kzak@redhat.com>
نسخه اصلی
agetty برای
پایانههای
سریالی
توسط W.Z. Venema
<wietse@wzv.win.tue.nl> نوشته
شده و توسط Peter
Orbaek <poe@daimi.aau.dk>. به
لینوکس
پورت شده
است.