خواندن، نوشتن و اجرا
هر فایل در لینوکس سه نوع مجوز برای سه گروه ذینفع دارد: مالک (owner)، گروه (group) و سایرین (others). سه نوع مجوز عبارتاند از خواندن (read)، نوشتن (write) و اجرا (execute). خروجی ls -l این مجوزها را نشان میدهد:
-rwxr-xr-- 1 ali developers 2048 Sep 10 14:22 deploy.sh
این رشتهی دهکاراکتری را از چپ به راست بخوانید: کاراکتر اول نوع فایل است (- برای فایل عادی، d برای پوشه)، سه کاراکتر بعدی مجوز مالک (rwx یعنی خواندن، نوشتن و اجرا)، سه کاراکتر بعدی مجوز گروه (r-x یعنی فقط خواندن و اجرا) و سه کاراکتر آخر مجوز سایرین (r-- یعنی فقط خواندن).
تغییر مجوزها با chmod
برای تغییر مجوز از دو روش میتوان استفاده کرد. روش نمادین:
chmod u+x deploy.sh
chmod g-w shared_file.txt
chmod o=r public_file.txt
و روش عددی که هر مجوز را با یک رقم اکتال نشان میدهد (r=4, w=2, x=1، و مجموع آنها):
chmod 755 deploy.sh
chmod 644 config.yaml
755 یعنی مالک همهی دسترسیها (7=4+2+1) و گروه و سایرین فقط خواندن و اجرا (5=4+1) دارند؛ این ترکیب رایج برای اسکریپتهای اجرایی است. 644 یعنی مالک خواندن و نوشتن و بقیه فقط خواندن دارند؛ مناسب برای فایلهای تنظیمات معمولی. یادگیری این جدول اعداد، کار روزمره با سرور را بسیار سریعتر میکند.