Tag Archives: পারমিশন

ইউনিক্সঃ ফাইল পারমিশন ও এক্সেস মোড (Unix – File Permission / Access Modes)

Huge Sell on Popular Electronics

রিদওয়ান বিন শামীম

 

ফাইল ওনারশিপ ইউনিক্সের একটি গুরুত্বপূর্ণ উপাদান যা ফাইল ষ্টোরের নিরাপদ উপায় হিসেবে প্রয়োজন। ইউনিক্সের প্রত্যেকটি ফাইলে যে এট্রিবিউটগুলো থাকে সেগুলো হল,

  • ওনারের পারমিশন,
  • গ্রুপ পারমিশন,
  • অন্যান্য পারমিশন

 

পারমিশন ইনডিকেটর

ls -l কম্যান্ড ব্যবহার করে পারমিশন সংক্রান্ত অনেক তথ্য দেখা যায়,


$ls -l /home/amrood
-rwxr-xr-- 1 amrood   users 1024 Nov 2 00:10 myfile
drwxr-xr--- 1 amrood   users 1024 Nov 2 00:10 mydir

 

read (r), write (w), execute (x) এই অর্ডার ফলো করে

  • প্রথম তিন ক্যারেক্টার ফাইল ওনারের পারমিশন,
  • দ্বিতীয় তিন ক্যারেক্টার গ্রুপ পারমিশন আর
  • শেষ তিন ক্যারেক্টার বাকি সব পারমিশন

 

ফাইল এক্সেস মোড

ইউনিক্সে পারমিশনের বিল্ডিং ব্লক হল এই তিনটি,

  • লেখা
  • পড়া
  • এক্সেকিউট করা

 

ডিরেক্টরি এক্সেস মোড

অন্যান্য ফাইলের মত এদেরও বিল্ডিং ব্লক এগুলোঃ

  • লেখা
  • পড়া
  • এক্সেকিউট করা

যদিও এদের ক্ষেত্রে কিছু মৌলিক পার্থক্য আছে।

 

পারমিশন চেঞ্জ করা

দুটি উপায়ে chmod কম্যান্ড ব্যবহার করে এটি করা যায়,

সিম্বোলিক মোডে chmod কম্যান্ড ব্যবহার করেঃ টেস্টফাইলে ls -1 ব্যবহার করে ফাইলের পারমিশন,


$ls-l testfile
-rwxrwxr--1 amrood   users1024Nov200:10 testfile

 

যার ফলে পারমিশন চেঞ্জ দেখতে পাব,


$chmod o+wx testfile
$ls -l testfile
-rwxrwxrwx  1 amrood   users 1024  Nov 2 00:10  testfile
$chmod u-x testfile
$ls -l testfile
-rw-rwxrwx  1 amrood   users 1024  Nov 2 00:10  testfile
$chmod g=rx testfile
$ls -l testfile
-rw-r-xrwx  1 amrood   users 1024  Nov 2 00:10  testfile

 

সিঙ্গেল লাইনের কম্যান্ড সমন্বয়ের ক্ষেত্রে,


$chmod o+wx,u-x,g=rx testfile
$ls -l testfile
-rw-r-xrwx  1 amrood   users 1024  Nov 2 00:10  testfile

 

এবসলিউট পারমিশন হিসেবে chmod কম্যান্ড ব্যবহার করে

প্রত্যেকটি পারমিশন একটি করে এসাইনড ভ্যালু ধারণ করে, এগুলো মোটামুটি এরকম,

 

নাম্বার অক্টাল পারমিশন রিপ্রেজেন্টেশন রেফারেন্স
0 No permission ---
1 Execute permission --x
2 Write permission -w-
3 Execute and write permission: 1 (execute) + 2 (write) = 3 -wx
4 Read permission r--
5 Read and execute permission: 4 (read) + 1 (execute) = 5 r-x
6 Read and write permission: 4 (read) + 2 (write) = 6 rw-
7 All permissions: 4 (read) + 2 (write) + 1 (execute) = 7 rwx

 

টেস্ট ফাইল ব্যবহারের উদাহরণ,


$ls -l testfile
-rwxrwxr--  1 amrood   users 1024  Nov 2 00:10  testfile

 

এরফলে আমরা যে পারমিশন চেঞ্জ দেখতে পাব,


$ chmod 755 testfile
$ls -l testfile
-rwxr-xr-x  1 amrood   users 1024  Nov 2 00:10  testfile
$chmod 743 testfile
$ls -l testfile
-rwxr---wx  1 amrood   users 1024  Nov 2 00:10  testfile
$chmod 043 testfile
$ls -l testfile
----r---wx  1 amrood   users 1024  Nov 2 00:10  testfile

 

ওনার পরিবর্তন

chown কম্যান্ড ব্যবহার করে ফাইলের ওনারশিপ পরিবর্তন করতে,


$ chown user filelist

 

উদাহরণ,


$ chown amrood testfile
$

 

এটি প্রদত্ত ফাইলের ওনারকে amrood নামে পরিবর্তিত করে।

 

গ্রুপ ওনার পরিবর্তন

এটির জন্য যে সিনট্যাক্স ব্যবহার করতে হয়,


$ chgrpgroup filelist

 

উদাহরণ,


$ chgrp special testfile
$

যেটিতে প্রদত্ত ফাইলের গ্রুপ special গ্রুপে পরিবর্তিত হয়ে যায়।

 

SUID ও SGID ফাইল পারমিশনঃ

এধরনের কম্যান্ড ব্যবহার করে এ ধরণের পারমিশন সম্পর্কে জানা যায়,


$ ls -l /usr/bin/passwd
-r-sr-xr-x  1   root   bin  19031 Feb 7 13:47  /usr/bin/passwd*
$

এখানে SUID বিট সেট আর এর কম্যান্ড রুট থেকে আসে।

 

যেকোনো ডিরেক্টরির জন্য SUID ও SGID bits সেট করতে নিচের সিনট্যাক্স প্রয়োগ করা যেতে পারে,


$ chmod ug+s dirname
$ ls -l
drwsr-sr-x 2 root root  4096 Jun 19 06:45 dirname
$