یک اسکریپت Bash بنویسید که یک نام کاربری را از ورودی میگیرد، ابتدا بررسی کند که کاربر وجود دارد یا نه، و در صورت عدم وجود، کاربر را ایجاد کرده، دایرکتوری خانگی و شل پیشفرض را بسازد و کاربر را به گروه sudo اضافه کند.
13.0 بازدید آخرین ویرایش در 201 روز قبل ساعت 03:34 0.0
برای حل این مسئله از دستورات سیستمی مثل getent یا id برای بررسی وجود کاربر، از useradd با گزینه -m برای ساختن home و -s برای تعیین شل استفاده کنید، و با usermod -aG sudo کاربر را به گروه sudo اضافه نمایید. برای تنظیم رمز میتوانید از chpasswd یا فراخوانی passwd به صورت تعاملی استفاده کنید؛ حتماً ورودیها را اعتبارسنجی کرده و خروجی و کد بازگشت دستورات را بررسی کنید تا در صورت بروز خطا پیام مناسب نمایش داده شود. همچنین این اسکریپت باید با دسترسی root اجرا شود یا از sudo برای اجرای دستورات مدیریتی بهره ببرد.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
یادداشت: قبل از هر کار مطمئن شوید اسکریپت با دسترسی روت اجرا میشود (مثلاً با بررسی خروجی id -u). برای ایجاد کاربر از دستور useradd -m -s /bin/bash استفاده کنید تا خانه ساخته شود و شل پیشفرض تنظیم گردد، و سپس با استفاده از کاربرmod -aG sudo نام کاربری را به گروه sudo اضافه کنید. برای احراز وجود کاربر از getent passwd نامکاربر یا id -u نامکاربر استفاده کنید و خروجی و کد بازگشتی را بررسی کنید تا پیام مناسبی نمایش داده شود. همچنین به جای استفاده از passwd تعاملی، از ابزارهایی مانند chpasswd استفاده کنید و ورودی رمز را امن بخوانید و خطاها را مدیریت کنید.
گزارش