از طریق منوی جستجو مطلب مورد نظر خود در وبلاگ را به سرعت پیدا کنید
روش ایجاد کاربر در لینوکس (فرمان useradd)
سرفصلهای مطلب
لینوکس یک سیستم چند کاربره است، به این معنی که بیش از یک نفر می توانند به طور همزمان با یک سیستم تعامل داشته باشند. اگر چند نفر از یک سیستم استفاده می کنند، بهتر است برای هر فرد یک حساب کاربری ایجاد کنید تا امنیت و حریم خصوصی آنها تضمین شود.
دو نوع کاربر کلی در لینوکس وجود دارد. نوع اول کاربران عادی هستند که توسط مدیر ایجاد می شوند و دومی کاربران سیستمی هستند که توسط سیستم و برنامه ها ایجاد شده و برای اجرای سرویس ها استفاده می شوند. بر اساس سطوح مجوز، کاربران عادی را می توان بیشتر به عنوان کاربران استاندارد و اداری طبقه بندی کرد. اعطای مجوزهای اداری فقط باید در مواقع ضروری و به کاربران یا خدماتی که به آنها اعتماد دارید انجام شود.
به عنوان یک مدیر سیستم، مسئولیت مدیریت کاربران و گروههای سیستم با ایجاد و حذف کاربران و همچنین اختصاص دادن آنها به گروههای مختلف بر عهده شماست.
در این مقاله روش ایجاد حساب کاربری جدید با استفاده از useradd
فرمان
useradd
فرمان
useradd
یک ابزار خط فرمان است که می تواند برای ایجاد کاربران جدید در سیستم های لینوکس و یونیکس استفاده شود.
نحو کلی برای useradd
دستور به شرح زیر است:
useradd [OPTIONS] USERNAME
فقط کاربران روت یا دارای امتیازات sudo میتوانند حسابهای کاربری جدیدی ایجاد کنند useradd
.
هنگام فراخوانی، useradd
با توجه به گزینه های مشخص شده در خط فرمان و مقادیر پیش فرض تنظیم شده در، یک حساب کاربری جدید ایجاد می کند /etc/default/useradd
فایل.
متغیرهای تعریف شده در این فایل از توزیعی به توزیع دیگر متفاوت است که باعث می شود useradd
فرمان برای تولید نتایج متفاوت در سیستم های مختلف.
useradd
همچنین محتوای آن را می خواند /etc/login.defs
فایل. این فایل شامل پیکربندی برای مجموعه رمز عبور سایه است، مانند خط مشی انقضای رمز عبور، محدوده شناسه های کاربری که هنگام ایجاد سیستم و کاربران عادی استفاده می شود و موارد دیگر.
روش ایجاد یک کاربر جدید در لینوکس
برای ایجاد یک حساب کاربری جدید، این را فراخوانی کنید useradd
دستور به دنبال آن نام کاربر.
به عنوان مثال، برای ایجاد یک کاربر جدید به نام jane
، شما موارد زیر را اجرا می کنید:
sudo useradd jane
useradd
یک حساب کاربری جدید با استفاده از تنظیمات پیش فرض مشخص شده در /etc/default/useradd
فایل.دستور یک ورودی به /etc/passwd
، /etc/shadow,
/etc/group
، و /etc/gshadow
فایل ها.
با اجرای دستور id می توانید تأیید کنید که کاربر ایجاد شده است و جزئیات کاربر را مشاهده کنید:
sudo id jane
uid=1005(jane) gid=1005(jane) groups=1005(jane)
برای اینکه بتوانید به عنوان کاربر تازه ایجاد شده وارد شوید، باید رمز عبور کاربر را تنظیم کنید. شما می توانید این کار را با اجرای برنامه انجام دهید passwd
دستور به دنبال نام کاربری:
sudo passwd jane
دستور از شما می خواهد که رمز عبور را وارد کرده و تایید کنید. مطمئن شوید که از یک رمز عبور قوی استفاده می کنید.
Changing password for user jane.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.
چگونه یک کاربر جدید اضافه کنیم و فهرست اصلی را ایجاد کنیم
دایرکتوری خانگی یک دایرکتوری در یک سیستم عامل چند کاربره است که حاوی فایل های یک کاربر خاص است. همچنین به عنوان دایرکتوری ورود شناخته می شود.
در اکثر توزیع های لینوکس، هنگام ایجاد یک حساب کاربری جدید با useradd
، فهرست اصلی کاربر ایجاد نشده است.
استفاده کنید -m
(--create-home
) گزینه ای برای ایجاد فهرست اصلی کاربر به عنوان /home/<username>
:
sudo useradd -m jane
دستور بالا فهرست اصلی کاربر جدید را ایجاد می کند و فایل ها را از آن کپی می کند /etc/skel
دایرکتوری به دایرکتوری اصلی کاربر. اگر فایل های موجود در /home/jane
دایرکتوری، فایل های اولیه را خواهید دید:
ls -la /home/jane/
total 20
drwxr-x--- 2 jane jane 4096 Dec 20 17:58 .
drwxr-xr-x 4 root root 4096 Dec 20 17:58 ..
-rw-r--r-- 1 jane jane 220 Jan 6 2022 .bash_logout
-rw-r--r-- 1 jane jane 3771 Jan 6 2022 .bashrc
-rw-r--r-- 1 jane jane 807 Jan 6 2022 .profile
کاربر توانایی نوشتن، ویرایش و حذف فایل ها و دایرکتوری ها را در فهرست اصلی دارد.
ایجاد یک کاربر با یک فهرست خانه خاص
به صورت پیش فرض، useradd
دایرکتوری خانگی کاربر را در آن ایجاد می کند /home
. استفاده کنید d
(--home
) گزینه ای برای تعیین مکان متفاوت.
در اینجا مثالی از روش ایجاد یک کاربر جدید با نام آورده شده است jane
با دایرکتوری خانگی /opt/jane
:
sudo useradd -m -d /opt/jane jane
ایجاد کاربر با شناسه کاربری خاص
در سیستم عامل های لینوکس و یونیکس مانند، کاربران با UID و نام کاربری منحصر به فرد شناسایی می شوند.
شناسه کاربر (UID) یک عدد صحیح مثبت منحصر به فرد است که سیستم لینوکس به هر کاربر اختصاص می دهد. UID و سایر سیاست های کنترل دسترسی برای تعیین انواع اقداماتی که کاربر می تواند روی منابع سیستم انجام دهد استفاده می شود.
به طور پیش فرض، هنگامی که یک کاربر جدید ایجاد می شود، سیستم UID بعدی موجود را از محدوده شناسه های کاربر مشخص شده در login.defs
فایل.
فراخوانی کنید useradd
فرمان با -u
(--uid
) گزینه ای برای ایجاد یک کاربر با یک UID خاص.
به عنوان مثال، برای ایجاد یک کاربر جدید به نام jane
با یک UID از 1500
، شما تایپ می کنید:
sudo useradd -u 1500 jane
شما می توانید UID کاربر را با استفاده از id
دستور:
id -u jane
1500
ایجاد کاربر با شناسه گروهی خاص
گروه های لینوکس واحدهای سازمانی هستند که برای سازماندهی و مدیریت حساب های کاربری در لینوکس استفاده می شوند. هدف اصلی گروه ها تعریف مجموعه ای از امتیازات مانند خواندن، نوشتن یا اجرای مجوز برای یک منبع معین است که می تواند بین کاربران درون گروه به اشتراک گذاشته شود.
هنگام ایجاد یک کاربر جدید، رفتار پیش فرض از useradd
دستور ایجاد گروهی با نام کاربری و همان GID با UID است.
این -g
(--gid
) گزینه به شما امکان می دهد یک کاربر با یک گروه ورود اولیه خاص ایجاد کنید. می توانید نام گروه یا شماره GID را مشخص کنید. نام گروه یا GID باید از قبل وجود داشته باشد.
مثال زیر روش ایجاد یک کاربر جدید با نام را نشان می دهد jane
و گروه ورود را به users
:
sudo useradd -g users jane
برای تأیید GID کاربر، از id
دستور:
id -gn jane
users
ایجاد یک کاربر و اختصاص چندین گروه
دو نوع گروه در سیستم عامل های لینوکس وجود دارد: گروه های اولیه و ثانویه (یا مکمل). هر کاربر می تواند دقیقاً به یک گروه اصلی و صفر یا چند گروه ثانویه تعلق داشته باشد.
می توانید استفاده کنید -G
(--groups
) گزینه ای برای تعیین لیستی از گروه های اضافی (تکمیلی) برای کاربر.
دستور زیر یک کاربر جدید به نام ایجاد می کند john
با گروه اولیه users
و گروه های فرعی wheel
و docker
.
sudo useradd -g users -G wheel,docker john
می توانید گروه های کاربری را با تایپ کردن بررسی کنید:
id john
uid=1002(john) gid=100(users) groups=100(users),10(wheel),993(docker)
ایجاد یک کاربر با پوسته ورود خاص
هنگامی که یک کاربر جدید ایجاد می شود، پوسته ورود به سیستم آن بر روی پوسته مشخص شده در تنظیم می شود /etc/default/useradd
فایل. در برخی از توزیع ها، پوسته پیش فرض روی تنظیم شده است /bin/sh
، در حالی که در دیگران تنظیم شده است /bin/bash
.
این -s
(--shell
) گزینه به شما امکان می دهد پوسته ورود به سیستم کاربر جدید را مشخص کنید.
در اینجا یک مثال نشان می دهد که چگونه یک کاربر جدید با نام ایجاد کنید john
با /usr/bin/zsh
به عنوان یک نوع پوسته ورود:
sudo useradd -s /usr/bin/zsh john
ورود کاربر در را بررسی کنید /etc/passwd
فایل برای تأیید پوسته ورود کاربر:
grep john /etc/passwd
john:x :1001:1001::/home/john:/usr/bin/zsh
ایجاد یک کاربر با یک نظر سفارشی
نام کامل یا اطلاعات تماس کاربر را می توان به عنوان نظر اضافه کرد.
برای افزودن توضیحات کوتاه برای کاربر جدید از -c
(--comment
) گزینه.
در مثال زیر، ما در حال ایجاد یک کاربر جدید به نام هستیم john
با رشته متن “تست حساب کاربری” به عنوان نظر:
sudo useradd -c "Test User Account" john
نظر در ذخیره شده است /etc/passwd
فایل:
grep john /etc/passwd
john:x :1001:1001:Test User Account:/home/john:/bin/sh
فیلد نظر نیز به عنوان شناخته شده است GECOS
.
ایجاد کاربر با تاریخ انقضا
برای تعیین زمانی که حسابهای کاربری جدید منقضی میشوند، از -e
(--expiredate
) گزینه. این برای ایجاد حساب های موقت مفید است.
تاریخ باید با استفاده از YYYY-MM-DD
قالب
به عنوان مثال، برای ایجاد یک حساب کاربری جدید با نام john
با زمان انقضا که تا 22 ژانویه 1404 تنظیم شده است، موارد زیر را اجرا می کنید:
sudo useradd -e 1404-01-22 john
استفاده کنید chage
دستور تأیید تاریخ انقضای حساب کاربری:
sudo chage -l john
خروجی چیزی شبیه به این خواهد بود:
Last password change : Dec 11, 1402
Password expires : never
Password inactive : never
Account expires : Jan 22, 1404
Minimum number of days between password change : 0
Maximum number of days between password change : 99999
Number of days of warning before password expires : 7
ایجاد یک کاربر سیستم
کاربران سیستم معمولاً در حین نصب سیستم عامل و بسته ایجاد می شوند و هیچ تفاوت فنی واقعی بین آنها و کاربران عادی وجود ندارد.
استفاده کنید -r
(--system
) گزینه ای برای ایجاد حساب کاربری سیستم. به عنوان مثال، برای ایجاد یک کاربر سیستم جدید به نام john
شما تایپ می کنید:
sudo useradd -r john
کاربران سیستم بدون تاریخ انقضا ایجاد می شوند. UID آنها از محدوده شناسه های کاربر سیستم مشخص شده در انتخاب می شوند login.defs
فایل، که با محدوده استفاده شده برای کاربران عادی متفاوت است.
تغییر مقادیر پیش فرض useradd
گزینه های پیش فرض useradd را می توان با استفاده از آن مشاهده و تغییر داد -D
، --defaults
گزینه یا با ویرایش دستی /etc/default/useradd
فایل.
برای مشاهده گزینه های پیش فرض فعلی، تایپ کنید:
useradd -D
خروجی چیزی شبیه به این خواهد بود:
GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=
SHELL=/bin/sh
SKEL=/etc/skel
CREATE_MAIL_SPOOL=no
فرض کنید می خواهید پوسته ورود پیش فرض را از آن تغییر دهید /bin/sh
به /bin/bash
. برای انجام این کار، پوسته جدید را مطابق شکل زیر مشخص کنید:
sudo useradd -D -s /bin/bash
با اجرای دستور زیر می توانید بررسی کنید که پوسته پیش فرض تغییر کرده است:
sudo useradd -D | grep -i shell
SHELL=/bin/bash
نتیجه
ما به شما نشان دادیم که چگونه با استفاده از useradd
فرمان دستورالعمل های مشابه برای همه توزیع های لینوکس، از جمله اوبونتو، اعمال می شود. CentOS، RHEL، Debian، Fedora، و Arch لینوکس.
adduser یک رابط تعاملی frendly برای است useradd
در سیستم های مبتنی بر دبیان موجود است.
در صورت داشتن هر گونه سوال در کامنت بگذارید.
گروه کاربران
لطفا در صورت وجود مشکل در متن یا مفهوم نبودن توضیحات، از طریق دکمه گزارش نوشتار یا درج نظر روی این مطلب ما را از جزییات مشکل مشاهده شده مطلع کنید تا به آن رسیدگی کنیم
زمان انتشار: 1402-12-28 01:25:02