دوستان و علاقمندان به مباحث آموزش یونیکس (UNIX) ، این آموزش را از سایت پی وی لرن دنبال خواهیم نمود. User Administration یا مدیریت کاربر در یونیکس (UNIX) را در این بخش از آموزش خواهیم داشت. با ادامه ی آموزش ها همراه باشید.
در این بخش ، به طور مفصل در مورد مدیریت کاربر در یونیکس (UNIX) بحث خواهیم کرد.
سه نوع اکانت در سیستم یونیکس وجود دارد.
به اکانت ریشه، superuser نیز گفته می شود و کنترل کامل و بدون قید سیستم را در اختیار می گذارد. یک سوپریوزر می تواند بدون هیچ محدودیتی دستورات خود را اجرا کند. این کاربر باید به عنوان مدیر سیستم فرض شود.
اکانت های سیستم مواردی هستند که برای عملکرد اجزای خاص سیستم به عنوان مثال حساب های mail و حساب های sshd مورد نیاز هستند. این اکانت ها معمولاً برای عملکرد خاصی در سیستم شما مورد نیاز هستند و هرگونه تغییر در آن ها می تواند بر سیستم تأثیر منفی بگذارد.
حساب های کاربری دسترسی تعاملی به سیستم را برای کاربران و گروه های کاربران فراهم می کند. به کاربران عمومی (General user)، معمولاً این حساب ها اختصاص داده می شوند و معمولاً دسترسی محدود به فایل ها و دایرکتوری های مهم سیستم دارند.
یونیکس از مفهومی از Group Account پشتیبانی می کند که به طور منطقی تعدادی از حساب ها را گروه بندی می کند. هر حساب، جزئی از حساب گروه دیگر خواهد بود. یک گروه یونیکس نقش مهمی در مدیریت مجوزهای فایل و مدیریت فرآیند دارد.
چهار فایل مدیریت کاربر اصلی وجود دارد.
تمام فایل های فوق را با استفاده از دستور cat بررسی کنید.
در جدول زیر دستوراتی وجود دارد که در اکثر سیستم های یونیکس برای ایجاد و مدیریت حساب ها و گروه ها موجود است.
ردیف | دستور و شرح |
---|---|
۱ | useradd اکانت هایی را به سیستم اضافه می کند.
|
۲ | usermod ویژگی های اکانت را مدیریت می کند.
|
۳ | userdel اکانت ها را از سیستم حذف می کند
|
۴ | groupadd گروه ها را به سیستم اضافه می کند.
|
۵ | groupmod ویژگی های گروه را اصلاح می کند.
|
۶ | groupdel گروه ها را از سیستم خارج می کند. |
برای چک کردن سینتکس کامل برای هر دستور ذکر شده، می توانید از Manpage Help استفاده کنید.
با مبحث مدیریت کاربر در یونیکس (UNIX) همراه هستیم.
اکنون خواهیم فهمید که چگونه یک گروه ایجاد کنیم. برای این کار ، قبل از ایجاد هر حساب کاربری ، باید گروه هایی ایجاد کنیم و در غیر این صورت می توانیم از گروه های موجود در سیستم خود استفاده کنیم.
همه گروه های لیت شده را در فایل گروه های / etc / داریم.
همه گروه های پیش فرض گروه های خاص حساب سیستم هستند و استفاده از آن ها برای حساب های معمولی توصیه نمی شود. بنابراین ، سینتکسی برای ایجاد یک حساب گروه جدید در زیر آمده است.
1 | groupadd [-g gid [-o]] [-r] [-f] groupname |
در جدول زیر پارامترها ذکر شده است.
ردیف | آپشن و شرح |
---|---|
۱ | g GID- مقدار عددی شناسه گروه
|
۲ | o- این گزینه اجازه اضافه کردن گروه با GID غیر یونیک را می دهد.
|
۳ | r- این فلگ دستور می دهد groupadd را برای اضافه کردن یک سیستم اکانت.
|
۴ | f- اگر گروه مشخص شده از قبل وجود داشته باشد ، این گزینه فقط با وضعیت موفقیت خارج می شود. با g- ، اگر GID مشخص شده از قبل وجود داشته باشد ، GID (منحصر به فرد) دیگری انتخاب می شود.
|
۵ | groupname نام گروه واقعی ایجاد شده است. |
اگر هیچ پارامتری را مشخص نکنید ، در این سیستم از مقادیر پیش فرض استفاده می شود.
به عنوان مثال ، یک گروه developers با مقادیر پیش فرض ایجاد می شود ، که برای اکثر مدیران بسیار قابل قبول است.
1 | $ groupadd developers |
برای اصلاح یک گروه ، از سینتکس groupmod استفاده کنید.
1 | $ groupmod -n new_modified_group_name old_group_name |
برای تغییر نام گروه developers_2 به developer ، به صورت زیر عمل کنید.
1 | $ groupmod -n developer developer_2 |
در این جا نحوه تغییر financial GID به ۵۴۵ ارائه شده است.
1 | $ groupmod -g 545 developer |
اکنون خواهیم فهمید که چگونه یک گروه می تواند حذف شود. برای حذف گروه موجود ، تنها چیزی که شما نیاز دارید ، دستور groupdel و نام گروه است. برای حذف گروه financial ، دستور به شکل زیر است.
1 | $ groupdel developer |
این کار فقط گروه را حذف می کند ، نه فایل های مرتبط با آن گروه. فایل ها هنوز توسط صاحبان آن ها قابل دسترسی هستند.
مدیریت کاربر در یونیکس (UNIX) را با ایجاد اکانت ادامه می دهیم.
حال بگذارید ببینیم چگونه می توانید یک حساب کاربری جدید در سیستم یونیکس خود ایجاد کنید. در زیر سینتکس ایجاد حساب کاربری آمده است.
1 | useradd -d homedir -g groupname -m -s shell -u userid accountname |
در جدول زیر پارامترها ذکر شده است.
ردیف | آپشن و شرح |
---|---|
۱ | d homedir- home directory را برای اکانت مشخص می کند.
|
۲ | g groupname- یک اکانت گروهی برای این اکانت مشخص می کند.
|
۳ | m- home directory را ایجاد می کند، اگر وجود نداشته باشد.
|
۴ | s shell- شل پیش فرض این اکانت را مشخص می کند.
|
۵ | u userid- می توانید شناسه کاربری را برای این اکانت مشخص کنید.
|
۶ | accountname نام اکانت واقعی ایجاد شده |
اگر هیچ پارامتری را مشخص نکنید ، سیستم از مقادیر پیش فرض استفاده می کند. دستور useradd فایل های گروه etc/shadow/ و /etc/ را تغییر داده و یک home directory ایجاد می کند.
در زیر مثالی وجود دارد که ایجاد یک حساب کاربری mcmohd ایجاد می کند، home directory را به home/mcmohd/ و گروه را به عنوان developers تنظیم می کند. این کاربر Korn Shell اختصاص داده شده به آن را خواهد داشت.
1 | $ useradd -d /home/mcmohd -g developers -s /bin/ksh mcmohd |
قبل از صدور دستور فوق ، اطمینان حاصل کنید که گروه developers را با استفاده از دستور groupadd از قبل ایجاد کرده اید.
پس از ایجاد یک حساب کاربری ، می توانید پسورد آن را با استفاده از دستور passwd به شرح زیر تنظیم کنید.
1 2 3 4 5 | $ passwd mcmohd20 Changing password for user mcmohd20. New UNIX password: Retype new UNIX password: passwd: all authentication tokens updated successfully. |
وقتی passwd accountname را تایپ می کنید ، گزینه ای را برای تغییر رمز عبور به شما می دهد ، مشروط بر این که شما یک superuser باشید. در غیر این صورت ، می توانید فقط رمز عبور خود را با استفاده از همان دستور، اما بدون مشخص کردن نام حساب خود تغییر دهید.
دستور usermod شما را قادر می سازد از خط فرمان تغییراتی را در یک حساب کاربری موجود ایجاد کنید. از همان آرگومان های دستور useradd استفاده می کند ، به علاوه آرگومان l- ، که به شما امکان می دهد نام حساب را تغییر دهید.
به عنوان مثال ، برای تغییر نام حساب mcmohd به mcmohd20 و برای تغییر home directory ، براساس آن ، باید دستور زیر را صادر کنید.
1 | $ usermod -d /home/mcmohd20 -m -l mcmohd mcmohd20 |
از دستور userdel می توان برای حذف کاربر موجود استفاده کرد. این دستور بسیار خطرناک است البته اگر با احتیاط استفاده نشود.
فقط یک آرگومان یا گزینه برای دستور r. ، برای حذف اکانت home directory و mail file وجود دارد.
به عنوان مثال ، برای حذف حساب mcmohd20 ، دستور زیر را صادر کنید.
1 | $ userdel -r mcmohd20 |
اگر می خواهید home directory را برای اهداف پشتیبان گیری نگه دارید ، گزینه r- را حذف کنید. شما می توانید home directory را در مواقع ضروری حذف کنید.
مدیریت کاربر در یونیکس (UNIX) را در این بخش از آموزش یونیکس مورد بررسی قرار دادیم. در جلسه ی آینده با عملکرد سیستم همراه خواهیم بود. با وب سایت پی وی لرن همراه باشید.