~2 min read • Updated Jul 18, 2025
۱. مقدمهای بر سیستم چندکاربره یونیکس
یونیکس طوری طراحی شده که چندین کاربر بتوانند بهصورت همزمان از سیستم استفاده کنند — چه محلی، چه از راه دور با SSH. حتی خروجی گرافیکی با X Window میتواند برای کلاینتهای دیگر ارسال شود. این معماری از ریشهٔ آکادمیک یونیکس نشأت میگیرد.
۲. مالکیت و ساختار گروه
هر فایل دارای موارد زیر است:
- شناسه کاربر (UID): مالک فایل
- شناسه گروه (GID): وابسته به گروه
- فهرست عضویت گروهها
id
# خروجی: uid=500(me) gid=500(me) groups=500(me)اطلاعات کاربران و گروهها در /etc/passwd، /etc/group و /etc/shadow ذخیره میشود.
۳. نوع مجوزها و فایلها
- خواندن (r): دیدن محتوا یا لیست پوشه
- نوشتن (w): تغییر یا ایجاد فایلها
- اجرا (x): اجرای برنامه یا ورود به پوشه
شاخصهای نوع فایل:
| نشانه | نوع فایل |
|---|---|
| - | فایل معمولی |
| d | دایرکتوری |
| l | لینک نمادین |
| c | دستگاه کاراکتری |
| b | دستگاه بلوکی |
نمونه خروجی ls -l:
-rw-rw-r-- 1 me me 0 foo.txtیعنی مالک و گروه میتوانند بخوانند/بنویسند، سایر کاربران فقط بخوانند.
۴. تغییر مجوز با chmod
دو روش وجود دارد:
- نماد عددی (اکتال):
chmod 600 foo.txt - نماد نمادین:
chmod u+x script.sh
chmod 600 foo.txt
chmod u+x script.sh
chmod g+w shared.txt
۵. تعیین مجوز پیشفرض با umask
- فایل: 666 - umask
- دایرکتوری: 777 - umask
umask 0002
# نتیجه: -rw-rw-r--۶. پرچمهای ویژه مجوز
| بیت | توضیح | مثال |
|---|---|---|
| setuid (4000) | اجرا با هویت مالک فایل | -rwsr-xr-x |
| setgid (2000) | ارثبری گروه در دایرکتوریها | drwxrwsr-x |
| sticky bit (1000) | محدود کردن حذف به مالک فایل | drwxrwxrwt |
chmod g+s shared_dir
chmod +t public_dir
۷. مدیریت هویت: su در برابر sudo
- su: تغییر کاربر، نیاز به رمز کاربر مقصد دارد
- sudo: اجرای دستور با دسترسی دیگر، از طریق فایل
/etc/sudoers
sudo backup_script
در اوبونتو، حساب root غیرفعال است و از sudo استفاده میشود.
۸. تغییر مالکیت
sudo chown tony: file.txt # تغییر مالک به tony
sudo chgrp music file.mp3 # تغییر گروه به music
۹. ساخت دایرکتوری مشترک
- ایجاد گروه
music - افزودن bill و karen به گروه
- ساخت مسیر
/usr/local/share/Music - اعمال مالکیت و مجوز:
sudo chown :music /usr/local/share/Music
sudo chmod 775 /usr/local/share/Music
sudo chmod g+s /usr/local/share/Music
برای مجوز نوشتن گروهی از umask 0002 استفاده شود.
۱۰. مدیریت رمز عبور
passwd # تغییر رمز کاربر جاری
sudo passwd username # تغییر رمز کاربر دیگر
رمز عبور در /etc/shadow ذخیره و مطابق سیاستها بروزرسانی میشود.
نتیجهگیری
مدیریت مجوزها و هویت در یونیکس هستهٔ اصلی عملکرد چندکاربره این سیستمهاست. با ابزارهایی مانند chmod، umask، sudo، chown و passwd میتوان کنترل دقیقی بر اشتراک منابع و امنیت محیط برقرار کرد.
Written & researched by Dr. Shahin Siami