آشنایی با مجوزهای لینوکس و استفاده از chmod
من در چند ماه گذشته در حال گذراندن دورهای درباره لینوکس بودهام و یکی از جنبههای (Linux)لینوکس(Linux) که همیشه من را گیج میکرد این بود که مجوزها چگونه کار میکردند. به عنوان مثال، زمانی که یک بار فایلی را در وب سرور خود آپلود کردم و با خطا مواجه میشدم، میزبان وب به من گفته بود که مجوزهای فایل را به 755 تغییر دهم.
من نمی دانستم این به چه معناست، حتی اگر تغییر مجوزها مشکل را برطرف کرد. اکنون متوجه شده ام که مجوزهای لینوکس(Linux) آنقدرها هم پیچیده نیستند، فقط باید سیستم را درک کنید. در این مقاله، من در مورد مجوزهای لینوکس(Linux) در سطح بالا صحبت می کنم و به شما نشان می دهم که چگونه از دستور chmod برای تغییر مجوزها برای فایل ها و پوشه ها استفاده کنید.
مجوزها و سطوح لینوکس
در لینوکس(Linux) ، اساساً سه مجوز وجود دارد که معمولاً باید نگران آنها باشید: خواندن، نوشتن و اجرا. هر سه اینها کاملاً خود توضیحی هستند. اکنون وقتی این مجوزها بر روی یک فایل اعمال می شوند، در سطوح اعمال می شوند.
در لینوکس(Linux) سه سطح مجوز وجود دارد : مالک، گروه و موارد دیگر. مالک، کاربری است که مالک فایل/پوشه است، گروه شامل سایر کاربران در گروه فایل است و سایرین فقط نماینده همه کاربران دیگری هستند که مالک یا در گروه نیستند.
خواندن(Read) ، نوشتن و اجرا به صورت کاراکترهای نمادین و یا به صورت اعداد هشتگانه نمایش داده می شوند. برای مثال، اگر یک ls -l را در فهرستی با چند فایل انجام دهید، نمایش کاراکتر نمادین مجوزها را خواهید دید.
مجوزها به صورت زیر نوشته می شوند: بیت اول یا خط تیره یا حرف d است. Dash به این معنی است که یک فایل است و d مخفف دایرکتوری است. توجه داشته باشید که اگر نام فایل یک پیوند باشد ، بیت اول نیز می تواند l باشد. (l)بعد، سه گروه سه بیتی وجود دارد. بیت اول در هر گروه برای خواندن، بیت دوم برای نوشتن و بیت سوم برای اجرا است. سه بیت اول برای مالک، سه بیت دوم برای گروه و سه بیت سوم برای بقیه است. در اینجا یک توضیح تصویری تر است.
اگر به جای یک حرف خط تیره می بینید، به این معنی است که مالک، گروه یا همه کاربران دیگر آن مجوز را ندارند. در مثال بالا، مالک، گروه و هر کس دیگری مجوزهای نوشتن و اجرا را خوانده است.
اگر به خروجی دستور ls -l نگاه کنید، متوجه خواهید شد که فایل متنی تمرین من دارای مجوزهای زیر است:
-rw-rw-rw-
این بدان معناست که همه فقط مجوز خواندن/نوشتن فایل را دارند. این هم یک مثال دیگر:
drwxr--r--
با نگاهی به بیت اول، می بینیم که مجوزها برای یک فهرست هستند. مالک مجوزهای خواندن/نوشتن/اجرا دارد، اما گروه و سایر کاربران فقط مجوز خواندن دارند.
نمایش عدد اکتال
بنابراین مجوزها در لینوکس(Linux) با استفاده از نمادها به این ترتیب نمایش داده می شوند. راه دوم برای نمایش همان مجوزها با استفاده از اعداد هشتگانه است. هنگامی که بعداً از دستور chmod استفاده می کنیم، خواهید دید که می توانید مجوزها را با استفاده از نمادها یا اعداد هشتگانه تغییر دهید.
بنابراین، لینوکس(Linux) چگونه خواندن، نوشتن و اجرا را با استفاده از اعداد اکتال نشان می دهد؟ اساساً، همانطور که در زیر نشان داده شده است، فقط به هر مجوز یک عدد اختصاص می دهد.
مجوز خواندن با 4، نوشتن با 2 و اجرا با 1 نشان داده می شود. تنها کاری که باید انجام دهید این است که آنها را جمع کنید تا مجوز هشتگانه را دریافت کنید. برای مثال، بیایید مثال بالا را در نظر بگیریم که در آن همه همه مجوزها را دارند:
-rwxrwxrwx
مالک rwx دارد، بنابراین ما 4 + 2 + 1 را اضافه می کنیم تا مقدار 7 را به دست آوریم. همین کار را برای گروه و همین کار را برای سایرین انجام می دهیم. مقدار اکتال نهایی 777 است. بیایید نگاهی به مثالی بیندازیم که در آن فقط مجوز خواندن/نوشتن داده ایم:
-rw-rw-rw-
از آنجایی که خواندن و نوشتن را اضافه می کنیم، اولین عدد اکتالی 4 + 2 خواهد بود. عدد دوم مانند عدد هشتی سوم خواهد بود. در اینجا ما یک مقدار اکتال نهایی 666 داریم.
پس حالا بیایید آن را به روش دیگری امتحان کنیم. میخواهیم بدانیم 755 چه مجوزهایی را نشان میدهد؟ خوب، تشخیص اینکه آیا آن را با اعداد جداگانه تقسیم می کنید، بسیار آسان است. اولین عدد 7 است که فقط با اضافه کردن 4 + 2 + 1 می توانیم آن را بدست آوریم، یعنی مالک مجوز خواندن/نوشتن/اجرا دارد. پنج را فقط می توان با افزودن 4 + 1 به دست آورد، به این معنی که گروه و سایر کاربران مجوزهای خواندن و اجرا را دارند.
امیدواریم(Hopefully) که این توضیح خوبی برای نحوه نمایش مجوزها در لینوکس(Linux) با استفاده از اعداد هشتگانه باشد. در کل خیلی ساده است.
استفاده از chmod برای اصلاح مجوزها
اکنون که نحوه خواندن مجوزها را فهمیدیم، بیایید در مورد چگونگی تغییر آنها صحبت کنیم. ساده ترین ابزار برای استفاده برای این منظور دستور chmod است. در اینجا نحوه کار آن آمده است. بهترین راه برای توضیح دستور، مرور یک مثال است.
اجازه دهید با مجوزهایی که در بالا در مورد آنها صحبت کردیم شروع کنیم، یعنی:
-rw-rw-rw-
اگر بخواهیم مجوز اجرا را برای مالک، گروه و سایر موارد اضافه کنیم، میتوانیم از دو طریق این کار را انجام دهیم. می توانیم از روش نماد یا روش اکتال استفاده کنیم. برای متد نماد، مانند شکل زیر، موارد زیر را انجام می دهیم:
دستور دقیق این است
chmod a+x filename
نحو به این صورت است: حرف یا حروفی که نشان دهنده مالک ( u )، گروه ( g )، دیگر ( o ) یا همه ( a ) به دنبال یک + برای اضافه کردن مجوزها یا یک - برای حذف مجوزها و سپس حرف برای مجوز ( r برای خواندن، w برای نوشتن و x برای اجرا).
در مثال بالا، من مجوز اجرا را برای همه کاربران اضافه کردم. نتیجه همانطور که در تصویر بالا مشاهده می کنید یک x برای مالک، گروه و سایر موارد است. حالا فرض کنید میخواستم مجوزهای نوشتن و اجرا را فقط برای گروه و سایر کاربران حذف کنم.
همانطور که در اینجا می بینید، برای انجام این کار از دستور زیر استفاده کردم:
chmod go-wx filename
از آنجایی که می خواهم مجوزهای گروه و سایر موارد را تغییر دهم، از حرف g و حرف o استفاده می کنم . من می خواهم مجوزها را حذف کنم، بنابراین از علامت – استفاده می کنم. (–)در نهایت، من می خواهم مجوزهای نوشتن و اجرا را حذف کنم، بنابراین از w و x استفاده می کنم . در اینجا یک جدول کوچک مفید برای استفاده از نماد وجود دارد:
پس این تمام چیزی است که برای استفاده از روش نماد وجود دارد. حالا بیایید در مورد روش اکتال صحبت کنیم که به نظر من کمی ساده تر است. Octal خوب است زیرا می توانید مجوزها را یکجا اضافه یا حذف کنید.
اگر با مجوزهای زیر در یک فایل شروع کنیم، بیایید ببینیم چگونه می توانیم آنها را با استفاده از روش octal تغییر دهیم:
-rw-rw-rw-
در بالا(Above) ، می بینید که من از دستور زیر استفاده کردم:
chmod 744 filename
این اساساً میگوید که مالک مجوز خواندن/نوشتن/اجرا و گروه و سایر افراد فقط مجوز خواندن دریافت میکنند. همانطور که می بینید، اضافه کردن یا حذف مجوزها در یک دستور ساده آسان است. بیایید ادامه دهیم و بگوییم می خواهم دوباره مجوزها را تغییر دهم.
حالا من از دستور زیر استفاده کردم، دوباره یک دستور بسیار ساده:
chmod 640 filename
در اینجا به مالک اجازه خواندن/نوشتن داده ایم، گروه فقط اجازه خواندن و گروه دیگر هیچ مجوزی ندارد. شما از یک صفر برای نشان دادن بدون مجوز استفاده می کنید. خیلی ساده، نه؟
در پایان، این یک نمای کلی بسیار ساده از مجوزهای لینوکس(Linux) است و می تواند بسیار پیچیده تر از این باشد، اما برای مبتدیان، مکان خوبی برای شروع است. در آینده مقالات بیشتری در مورد مجوزهای پیشرفته تر ارسال خواهم کرد. اگر سوالی دارید، در کامنت بگذارید. لذت بردن!
Related posts
مجوزهای فایل لینوکس – Chmod 777 چیست و چگونه از آن استفاده کنیم
دستور FIND لینوکس با مثال
5 دلیل عالی برای حذف ویندوز برای لینوکس
HDG توضیح می دهد: یونیکس چیست؟
9 بهترین توزیع لینوکس برای هک
سرور پخش زنده ویدیوی خود را با لینوکس ایجاد کنید
نحوه نصب مجدد Linux Mint بدون از دست دادن داده ها و تنظیمات
ترفندهای ترمینال: از ترمینال به عنوان ساعت زنگ دار استفاده کنید
میانبرها را به منوی زمینه در اوبونتو با کلیک راست اضافه کنید
چگونه کالی لینوکس را نصب و راه اندازی کنیم
10 بهترین ضبط کننده صفحه برای لینوکس
10 میانبر صفحه کلید اوبونتو برای سرعت بخشیدن به گردش کار
ساده ترین راه برای اتصال از راه دور به Linux Mint از هر سیستم عاملی
10 بهترین برنامه لینوکس برای کاربران اوبونتو
اوبونتو را طوری پیکربندی کنید که صفحه نمایش غیرفعال را کم نور یا خاموش کند
نحوه نصب و اجرای برنامه های لینوکس در کروم بوک
5 روش برای خودکارسازی پشتیبانگیری از فایل در لینوکس
7 برنامه برتر آنتی ویروس رایگان برای لینوکس
دلایل رایج خرابی اوبونتو و نحوه بازیابی
نحوه پیمایش و استفاده از ساختار دایرکتوری لینوکس