لینوکس زمانی که کاربر وارد حساب کاربری خود می شود یک پوسته ورود راه اندازی می کند. بنابراین پوسته های ورود به سیستم چیست و چگونه می توانید بفهمید که آیا در حال اجرا هستید یا خیر؟
شما ممکن است هر روز از پوسته لینوکس استفاده کنید، اما نحوه استفاده از آن تا حد زیادی رفتار آن را تعیین می کند. شاید در مورد تفاوت پوسته لاگین و پوسته غیر لاگین شنیده باشید. و در حالی که ممکن است در ابتدا به وضوح ظاهر نشود، تفاوت های متعددی بین این دو نوع پوسته وجود دارد.
در اینجا همه چیزهایی است که باید در مورد پوسته های لاگین در لینوکس بدانید.
پوسته ورود چیست؟
پوسته ورود دقیقاً همان است: پوسته ای که با ورود مستقیم به دستگاه لینوکس راه اندازی می شود. هنگامی که از یک کنسول مجازی یا از طریق SSH وارد سیستم خود می شوید، پوسته ای که شروع می شود یک پوسته ورود است.
در مقابل، اگر یک پنجره ترمینال را راه اندازی کنید، آن جلسه پوسته معمولاً یک پوسته ورود نیست. هنگامی که یک پوسته فرعی را با تایپ کردن نام پوسته در خط فرمان راه اندازی می کنید، همینطور است. این پوسته فقط یک پوسته تعاملی است.
تفاوت اصلی بین این دو در رفتار پوسته است. پوسته اغلب فقط فایل های خاصی را هنگام راه اندازی می خواند. Bash فایلهای /etc/profile را میخواند، سپس فایلهای bash_profile، .bash_login و .profile را در فهرست اصلی شما تنها در صورتی میخواند که به عنوان پوسته ورود به سیستم فراخوانی شده باشد.
چگونه بفهمیم از پوسته ورود استفاده میکنید یا خیر
به راحتی می توان فهمید که آیا پوسته ورود به سیستم را اجرا می کنید یا خیر. اگر پوسته خود را از برنامه ترمینال دسکتاپ راه اندازی کرده اید، به احتمال زیاد این کار را نمی کنید، مگر اینکه در محیط ترمینال دیگری مانند WSL یا ترمینال macOS باشید.
با این دستور می توانید بررسی کنید که آیا پوسته ورود به سیستم را اجرا می کنید.
echo $0
اگر از پوسته لاگین استفاده می کنید، نام پوسته را با خط فاصله (-) خواهید دید. اگر نه، فقط نام پوسته را خواهید دید.
تنظیم لاگین شل در لینوکس
برای تنظیم پوسته لاگین خود، از دستور chsh استفاده کنید. شما میتوانید پوسته ورود خود را روی مسیر مطلق هر پوسته فهرست شده در /etc/shells تنظیم کنید.
برای شروع هر پوسته به عنوان پوسته ورود، معمولاً می توانید از گزینه خط فرمان استفاده کنید. به عنوان مثال، برای شروع Bash به عنوان یک پوسته ورود:
bash --login
اگر از دسکتاپ لینوکس استفاده می کنید، اغلب می توانید مشخص کنید که هنگام باز کردن پنجره ترمینال کدام دستور اجرا شود. اگر می خواهید پوسته شما به عنوان پوسته ورود به سیستم اجرا شود، می توانید آن گزینه را در آنجا قرار دهید.
اکنون در مورد Login Shells می دانید
اکنون باید بفهمید که پوسته های ورود چیست. راهاندازی پوسته، چه مستقیماً از کنسول یا از پنجره ترمینال، نحوه رفتار آن را مشخص میکند.
اگر در لینوکس تازه کار هستید، ممکن است تعجب کنید که کدام پوسته بهترین است. میتوانید از Bash پیشفرض استفاده کنید، یا میتوانید ویژگیهای ویژهای را که پوستههای جایگزین مانند Fish یا Zsh ارائه میدهند، کشف کنید.