ماڈیول اسباق (1/2)
اجازتوں کا انتظام کرنا (chmod)
لینکس میں، فائلوں اور ڈائریکٹریوں تک رسائی کو اجازت کے نظام کے ذریعے منظم کیا جاتا ہے۔ ہر فائل/ڈائریکٹری کا تعلق ایک مالک صارف اور صارفین کے گروپ سے ہے۔
اجازتوں کو وصول کنندگان کی تین اقسام میں تقسیم کیا گیا ہے:
- صارف (u): فائل کا مالک۔
- گروپ (جی): فائل سے وابستہ گروپ کے اراکین۔
- دوسرے (o): سسٹم پر باقی سب۔
ہر زمرے کے لیے، تین قسم کے اعمال کی اجازت ہے یا انکار:
- پڑھیں (r): فائل کے مشمولات دیکھیں یا ڈائریکٹری کے مواد کی فہرست بنائیں۔
- لکھیں (w): فائل میں ترمیم کریں یا ڈائریکٹری میں فائلیں بنائیں/ڈیلیٹ کریں۔
- Execute (x): فائل چلائیں (جیسے اسکرپٹ) یا ڈائرکٹری داخل کریں۔
ls -l کے ذریعہ دکھایا گیا عام اشارہ: -rwxr-xr-x۔
پہلا حرف قسم کی نشاندہی کرتا ہے (جیسے - فائل کے لیے، d ڈائرکٹری کے لیے)، اس کے بعد user، group، اور others کے لیے تین ٹرپلٹس۔
اجازتیں تبدیل کرنا: chmod
chmod (تبدیل موڈ) کمانڈ آپ کو فائل کی اجازتوں میں ترمیم کرنے کی اجازت دیتی ہے۔ ان کی وضاحت کرنے کے دو اہم طریقے ہیں:
1. علامتی وضع
اجازتیں شامل کرنے، ہٹانے یا سیٹ کرنے کے لیے حروف اور آپریٹرز (+, -, =) کا استعمال کرتا ہے:
chmod u+x script.sh # Adds execute permission (x) to the owner (u)
chmod g-w file.txt # Removes write permission (w) from the group (g)
chmod a+r file.txt # Makes the file readable by everyone (all: u, g, o)2. آکٹل موڈ (عددی)
0 سے 7 تک تین آکٹل ہندسوں کا استعمال کرتا ہے، جہاں ہر ہندسہ زمرہ کی اجازتوں کے مجموعے کی نمائندگی کرتا ہے (r=4, w=2, x=1):
7=rwx(4 + 2 + 1)6=rw-(4 + 2)5=r-x(4 + 1)4=r--(4)0=---(کوئی اجازت نہیں)
chmod 755 script.sh # Owner: rwx (7), Group: r-x (5), Others: r-x (5)
chmod 600 private.key # Owner: rw- (6), Group: --- (0), Others: --- (0)خود ہی آزمائیں۔
مشق 1: معیاری اجازتیں سیٹ کریں۔
'script.sh' پر اجازتیں سیٹ کریں تاکہ مالک (rwx) کو پڑھ سکے، لکھ سکے اور اس پر عمل کر سکے، جب کہ گروپ اور دیگر صرف (r-x) کو پڑھ اور اس پر عمل کر سکیں۔ آکٹل موڈ استعمال کریں۔
اشارہ دکھائیں۔
rwx کے لیے آکٹل کوڈ 7 (4+2+1) ہے، اور r-x کے لیے یہ 5 (4+1) ہے۔ اس طرح chmod 755 استعمال کریں۔
3 کوششوں کے بعد حل دستیاب ہے۔
مشق 2: نجی کلید کی حفاظت کریں۔
فائل 'private.key' کی اجازتوں میں ترمیم کریں تاکہ اسے صرف مالک کے ذریعہ پڑھنے کے قابل اور قابل تحریر (rw-) بنایا جا سکے، گروپ اور دیگر (---) کے لیے تمام رسائی کو ہٹا دیں۔
اشارہ دکھائیں۔
آکٹل کوڈ 600 کے ساتھ chmod استعمال کریں (مالک کے پاس 4+2، گروپ 0، دیگر 0 ہے)۔
3 کوششوں کے بعد حل دستیاب ہے۔
مشق 3: ایک فائل کو سب کے لیے قابل عمل بنائیں
علامتی وضع (a+x) کا استعمال کرتے ہوئے تمام صارف زمروں کے لیے 'runner.sh' فائل کو قابل عمل بنائیں۔
اشارہ دکھائیں۔
نحو chmod a+x کے بعد فائل کا نام استعمال کریں۔
3 کوششوں کے بعد حل دستیاب ہے۔