کی کجاست؟


سلیب و علی‌رضا و عرشیا این‌بار برای تمرین خود به سراغ کاری جدید رفتند. آن‌ها این‌بار می‌خواهد جزئیات ساختن یوزر و گروه و دسترسی را درون لینوکس تمرین کنند. علی‌رضا سناریویی را مطرح می‌کند:

او از تیم می‌خواهد که درون سیستم، دو کاربر با نام‌های user1 و user2 بسازند. همچنین گروه مشترکی با نام shared بسازند و هر دو کاربر بالا را به آن اضافه کنند. هر یک از این کاربران باید مشخصات زیر را داشته باشند:

  • پوشه‌ی خانه‌ی (یا همان home directory) مخصوص به خود را داشته باشند.
  • نیازی به نوشتن کامنت برای کاربران وجود ندارد.
  • هیچکدام از یوزرها نیازی به پسورد ندارند و نباید پسورد داشته باشند.
  • هر دو یوزر باید عضو گروه shared هم باشند. یعنی گروه shared باید به گروه‌های یوزر اضافه شود.
نکته

پوشه خانه هر یوزر باید هم وجود داشته باشد و هم به او اختصاص داده شده باشد. همچنین شما مجاز به استفاده از دستورات ساخت دایرکتوری مانند mkdir و غیره نیستید و باید از آپشن مخصوص به ساخت دایرکتوری خانه برای یوزر استفاده کنید.

از آنجایی که گروه shared باید به لیست گروه‌های هر دو یوزر اضافه شود، شما نمی‌توانید از آپشن -g استفاده کنید!

سپس تیم باید دایرکتوری‌ای با اسم shared_files در روت (/) بسازند. پس از ایجاد دایرکتوری، یک فایل با اسم shared_file در این دایرکتوری بسازند. در نهایت نیز گروهی که صاحب این فایل و این دایرکتوری است را گروه shared قرار دهند و کاربر صاحب فایل و دایرکتوری را user1 قرار دهند. همچنین تنها دسترسی خواندن و نوشتن را برای گروه و کاربر صاحب این فایل بدهند و به سایر کاربران هیچ دسترسی‌ای ندهند. بعد از اتمام کار نیز کاربران و گروه‌ و همه فایل‌های آنا‌ن را پاک کنند!

از آن‌جایی که سلیب درون تیم نمی‌تواند در این تمرین به تنهایی شرکت کند از شما خواسته تا به او کمک کنید تا پیش از تمامی افراد تیم، این تمرین را تمام کند.

پروژه اولیه🔗

برای دریافت پروژه اولیه این لینک را دانلود کنید. درون لینک ساختار فایلی زیر را مشاهده می‌کنید:

Where_is_Who
└── solution.sh
Plain text

راه‌حل خود را درون فایل solution.sh پیاده‌سازی کنید. برای اطمینان نسبی از پاسخ‌تان می‌توانید از تست‌های نمونه مسئله استفاده کنید. برای این کار کافی‌ست از طریق دکمه «اجرای تست نمونه» پاسخ‌تان را برای کوئرا ارسال کنید.

توجه کنید🔗

  • فراموش نکنید که اسکریپتی کامل را در پاسخ‌تان تحویل دهید.
  • فراموش نکنید که اسکریپت خود را درون فایلی با نام solution.sh وارد نمایید.
  • برای ارسال پاسخ خود کافی‌ست فایل solution.sh را آپلود کنید.
ارسال پاسخ برای این سؤال
در حال حاضر شما دسترسی ندارید.