</>

لینوکس‌پارسی

مرجع فارسی آموزش لینوکس

Gentoo • Arch • Debian • Ubuntu • Kali • Parrot
پرش به محتوای اصلی

Command Palette

Search for a command to run...

مدیریت کاربران در Gentoo — افزودن، ویرایش و گروه‌ها

آموزش کامل مدیریت کاربران در Gentoo: تفاوت root و کاربر عادی، useradd، passwd، usermod، userdel، گروه‌های مهم (wheel, audio, video, plugdev, portage) و gpasswd.

مقدماتی۷ دقیقه مطالعهآخرین بروزرسانی: ۱ تیر ۱۴۰۵ویرایش در گیت‌هاب

یکی از نخستین کارها پس از نصب Gentoo، ایجاد یک کاربر عادی است. کار دائمی با حساب root خطرناک است: یک اشتباه تایپی می‌تواند کل سیستم را پاک کند، هیچ لایهٔ محافظتی وجود ندارد و هیچ سابقه‌ای از اینکه چه کسی چه دستوری اجرا کرده باقی نمی‌ماند. در این مستند با ایجاد و مدیریت کاربران، گروه‌ها و ابزارهای مرتبط آشنا می‌شویم.

root در برابر کاربر عادی#

در سیستم‌های شبه‌یونیکس، کاربر root (UID 0) به همه‌چیز دسترسی کامل دارد: خواندن، نوشتن، حذف، تغییر مالکیت، اجرای هر دستور، نصب بسته و حتی غیرفعال‌کردن خود هسته. این قدرت به‌قصد راحتی مدیر سیستم طراحی شده، اما در عمل خطرناک است.

ویژگیrootکاربر عادی
UID01000 و بالاتر
دسترسی به فایل‌های سیستمیکاملمحدود
نصب بسته با emergeبلهنه (مگر با sudo)
تغییر /etcمستقیمبا sudo
خطر اشتباه تایپیفاجعه‌بارمحدود به خانه کاربر
حسابرسی (audit)ضعیفقوی‌تر

هرگز با root کار نکنید

اجرا کردن دستوری مانند rm -rf / * به‌اشتباه با root می‌تواند کل فایل‌سیستم را پاک کند. با کاربر عادی، این دستور فقط به فایل‌های داخل /home/user محدود می‌شود. همیشه با کاربر عادی وارد شوید و فقط هنگام نیاز از sudo استفاده کنید.

افزودن کاربر جدید#

Gentoo از ابزار useradd در بستهٔ sys-apps/shadow استفاده می‌کند (نه adduser که در Debian/Ubuntu رایج است). نحوهٔ استفادهٔ آن کمی متفاوت است:

# ایجاد کاربر جدید با پوشه خانه، شل bash و عضویت در گروه‌های مهم
useradd -m -G users,wheel,audio,video,plugdev -s /bin/bash ali
 
# توضیح پرچم‌ها:
#   -m          ساخت پوشه خانه /home/ali
#   -G groups   عضویت در گروه‌های فرعی (سطح دسترسی)
#   -s shell    شل پیش‌فرض کاربر

سپس رمز عبور تعیین کنید:

passwd ali
# خروجی:
# New password:
# Retype new password:
# passwd: password updated successfully

ترتیب گروه‌ها مهم است

گروه wheel را حتماً اضافه کنید. این گروه در فایل /etc/sudoers به‌صورت پیش‌فرض اجازهٔ اجرای sudo را دارد. اگر هنگام ساخت کاربر آن را اضافه نکردید، باید بعداً با gpasswd -a ali wheel آن را اضافه کنید، وگرنه کاربر هرگز نمی‌تواند sudo کند.

مشاهده و بررسی کاربران#

# مشاهده کاربران فعال
cat /etc/passwd | grep -v nologin | grep -v false
 
# اطلاعات یک کاربر
id ali
# خروجی:
# uid=1000(ali) gid=1000(ali) groups=1000(ali),10(wheel),18(audio),27(video),470(plugdev)
 
# گروه‌های کاربر
groups ali
# ali : ali users wheel audio video plugdev
 
# اطلاعات complete یک گروه
getent group wheel
# wheel:x:10:root,ali

ویرایش کاربر با usermod#

# افزودن به گروه جدید
usermod -aG portage ali
 
# تغییر شل پیش‌فرض
usermod -s /bin/zsh ali
 
# تغییر پوشه خانه
usermod -d /home/ali-new -m ali
 
# قفل کردن حساب کاربری
usermod -L ali
 
# باز کردن قفل
usermod -U ali
 
# تنظیم تاریخ انقضای حساب
usermod -e 2027-06-22 ali

فراموش‌کردن -a با -G

اگر از usermod -G بدون -a استفاده کنید، تمام گروه‌های قبلی کاربر حذف می‌شوند و فقط گروه جدید باقی می‌ماند. همیشه از usermod -aG استفاده کنید تا گروه جدید به گروه‌های موجود اضافه شود.

حذف کاربر#

# حذف کاربر بدون حذف پوشه خانه
userdel ali
 
# حذف کاربر همراه با پوشه خانه و فایل‌هایش
userdel -r ali
 
# اگر فرایند فعالی داشت، اول ببندید
killall -u ali
userdel -r ali

گروه‌های مهم در Gentoo#

Gentoo از سیستم گروه‌های سنتی UNIX برای مدیریت دسترسی به سخت‌افزار و سرویس‌ها استفاده می‌کند. این جدول مهم‌ترین گروه‌ها را نشان می‌دهد:

گروهGIDکاربرد
wheel10دسترسی به sudo و su
users100گروه پیش‌فرض همه کاربران
audio18دسترسی به دستگاه‌های صوتی /dev/snd/*
video27دسترسی به GPU، وب‌کم و /dev/dri/*
plugdev470مدیریت دستگاه‌های hotplug (USB)
usb85دسترسی مستقیم به دستگاه‌های USB
cdrom19دسترسی به درایو نوری
portage250اجرای emerge با کاهش امتیاز
systemd-journal190خواندن journal سیستمی
cron16اجرای وظایف cron
docker281دسترسی به Docker socket
kvm78استفاده از KVM برای مجازی‌سازی

افزودن به گروه با gpasswd#

ابزار سریع‌تری برای افزودن یا حذف یک کاربر از یک گروه:

# افزودن کاربر به گروه
gpasswd -a ali wheel
# خروجی:
# Adding user ali to group wheel
 
# حذف از گروه
gpasswd -d ali wheel
 
# تعیین مدیر گروه (می‌تواند اعضا را مدیریت کند)
gpasswd -A ali wheel

پیکربندی پیش‌فرض با /etc/login.defs#

فایل /etc/login.defs پیکربندی سراسری برای ساخت کاربران است:

# /etc/login.defs
# محدوده UID کاربران عادی
UID_MIN 1000
UID_MAX 60000
 
# محدوده GID گروه‌های عادی
GID_MIN 1000
GID_MAX 60000
 
# طول حداقل رمز عبور
PASS_MIN_LEN 8
 
# تعداد روزهای انقضای رمز عبور
PASS_MAX_DAYS 99999
 
# ساخت پوشه خانه به‌طور پیش‌فرض
CREATE_HOME yes
 
# umask پیش‌فرض پوشه خانه
UMASK 022

خطاهای رایج#

۱. کاربر نمی‌تواند sudo کند#

ali is not in the sudoers file. This incident will be reported.

دلیل: کاربر در گروه wheel نیست یا sudo نصب/پیکربندی نشده است. راه‌حل:

# (به‌عنوان root)
gpasswd -a ali wheel
# یا
usermod -aG wheel ali
 
# بررسی نصب بودن sudo
emerge --ask app-admin/sudo
 
# بررسی فایل sudoers
visudo
# باید خط زیر از کامنت خارج باشد:
# %wheel ALL=(ALL:ALL) ALL

۲. کاربر صدا ندارد#

دلیل: کاربر در گروه audio نیست. راه‌حل:

gpasswd -a ali audio
# کاربر باید از سیستم خارج و دوباره وارد شود

۳. دسترسی به درایو USB امکان‌پذیر نیست#

دلیل: کاربر در گروه plugdev نیست. راه‌حل:

gpasswd -a ali plugdev
rc-service devfs restart 2>/dev/null
# یا ریبوت

خلاصه و مرحله بعد#

مدیریت کاربران در Gentoo بر بستهٔ shadow و دستورات useradd، usermod، userdel، passwd و gpasswd استوار است. مهم‌ترین گام پس از نصب، ایجاد یک کاربر عادی در گروه wheel است تا بتوان از طریق sudo وظایف مدیریتی را انجام داد.

برای پیکربندی sudo به آموزش sudo و برای دسترسی از راه دور به آموزش SSH مراجعه کنید. برای مدیریت سرویس‌ها در OpenRC، آموزش OpenRC را ببینید.

اشتراک‌گذاری:

این صفحه در تاریخ ۱ تیر ۱۴۰۵ به‌روزرسانی شده است.