XKCD কোমিকের মতো: লেজি বন্ধু স্যান্ডউইচ বানাতে চায় না, কিন্তু sudo বললে বানাতে হয়! বাস্তবে sudo মানুষের ওপর কাজ করে না, কিন্তু Linux-এ এটি সব বাধা ভাঙতে পারে।
Linux ইউজার পারমিশন বোঝা
Linux সিকিউর কারণ এটি পারমিশন স্ট্রিক্টলি ম্যানেজ করে। সব মডার্ন OS-এ অ্যাডমিন/রুট ইউজার থাকে যারা সবকিছু করতে পারেন (যদি ভুল করলে সিস্টেম ক্র্যাশও হয়)। Linux রুট পারমিশন ডিফল্টে দেয় না। গ্রাফিক্যাল ইন্টারফেসে অ্যাডমিন পাসওয়ার্ড চায়, কিন্তু টার্মিনালে sudo সুরক্ষিত উপায়।
Sudo এবং টার্মিনাল
দুইভাবে এলিভেটেড পারমিশন পাওয়া যায়: ১) রুট ইউজার হিসেবে লগইন (রিস্কি), ২) sudo দিয়ে কিছুক্ষণের জন্য নির্দিষ্ট কমান্ড রান করানো (সুরক্ষিত)।
Sudo সিনট্যাক্স
sudo [command] – উদাহরণ: sudo apt-get update (রিপোজিটরি আপডেট)। sudo ছাড়া দিলে পারমিশন এরর দেবে। নতুন Linux ইনস্টলেশনের পর এই কমান্ডটি প্রথমে চালান।
Sudo-র "Su"
su = superuser। su আলাদা কমান্ড যা sudo-র এলিভেশন টার্গেট ইউজার চেঞ্জ করে। sudo আপনাকে রুট করে দেয়, su অন্য ইউজার করে দেয়। কারণ: সাধারণ ইউজার রুট পাসওয়ার্ড জানে না, sudo কমান্ডের লগ থাকে (অ্যাডমিন কে কী চালালো সেটা দেখতে পায়)।
সিনট্যাক্স: Su USERNAME -c COMMAND বা একাধিক কমান্ডের জন্য Su USER (বের হওয়ায় exit লিখুন)।
Sudo টাইম লিমিট
প্রথম sudo কমান্ডে পাসওয়ার্ড চায়, তারপর ১৫ মিনিটের জন্য ভ্যালিড থাকে। পরিবর্তন করতে sudo visudo চালিয়ে timestamp_timeout= মান বদলান (সুপারিশ করা হয় না)।
Sudo অপশন স্যুইচ
- -h – sudo সিনট্যাক্স ও হেল্প
- -V – sudo ভার্সন
- -v – টাইম লিমিট রিফ্রেশ
- -l – ইউজার প্রিভিলেজ লিস্ট
- -k – বর্তমান sudo সেশন কিল (এলিভেশন সরিয়ে দেয়)
sudo -h দিয়ে সব অপশন দেখুন।
উপকারী Sudo কমান্ডসমূহ
- sudo apt-get upgrade – ইনস্টল্ড প্যাকেজ আপগ্রেড
- sudo apt-get install <package-name> – সফটওয়্যার ইনস্টল
- dpkg --list – প্যাকেজ নাম জানতে
- sudo apt-get remove <package-name> – প্যাকেজ রিমুভ
এই কমান্ডগুলো সব Linux ইউজারের জানা উচিত। sudo যেকোনো কমান্ডের সাথে ব্যবহার করা যায়, কিন্তু শুধু প্রয়োজনীয় জায়গায়ই ব্যবহার করুন।