লিনাক্স সার্ভারে কাজ করার আগে ৩টা জিনিস বুঝতেই হবে: ১. আপনি কে? ২. আপনি কোথায়? ৩. আপনার ক্ষমতা কতটুকু? এই পোস্টে আমরা su, sudo, root এবং বেসিক সিস্টেম কমান্ড শিখব।
প্রয়োজনীয় প্যাকেজ: sudo, coreutils – এগুলো সব ডিস্ট্রোতে ডিফল্ট থাকে।
Step 1: আপনি কে? – আইডেন্টিটি কমান্ড
১. whoami – আমি কোন ইউজার?
Bash
whoami
আউটপুট: tolearn – বর্তমানে লগইন করা ইউজারের নাম দেখাবে।
২. id – ইউজারের সব ডিটেইল
Bash
id
আউটপুট: uid=1000(tolearn) gid=1000(tolearn) groups=1000(tolearn),27(sudo)
ব্যাখ্যা: uid = ইউজার আইডি, gid = গ্রুপ আইডি, groups = আপনি কোন কোন গ্রুপের সদস্য। sudo গ্রুপে থাকলে অ্যাডমিন কমান্ড চালাতে পারবেন।
Step 2: su vs sudo – অ্যাডমিন হওয়ার ২টি রাস্তা
লিনাক্সে root হলো সর্বময় ক্ষমতার অধিকারী সুপারইউজার। কিন্তু ডিরেক্ট root দিয়ে লগইন করা বিপজ্জনক।
১. su – Switch User
Bash
su - root
ব্যাখ্যা: - দিলে root এর এনভায়রনমেন্ট সহ লগইন হবে। root এর পাসওয়ার্ড লাগবে। Ubuntu তে ডিফল্টভাবে root এর পাসওয়ার্ড সেট করা থাকে না, তাই এটা ফেইল করবে।
২. sudo – Superuser Do – এটাই রেকমেন্ডেড
Bash
sudo apt update
ব্যাখ্যা: শুধু এই একটি কমান্ড root হিসেবে রান হবে। আপনার নিজের পাসওয়ার্ড চাইবে।
৩. sudo -i – root এর ইন্টারেক্টিভ শেল – Ubuntu এর জন্য বেস্ট
Bash
sudo -i
ব্যাখ্যা: su -i নামে কোনো কমান্ড নেই। Ubuntu/Debian এ root হতে sudo -i ব্যবহার করুন। এটা আপনাকে root এর শেল দেবে এবং /root ডিরেক্টরিতে নিয়ে যাবে। বের হতে exit লিখুন।
su vs sudo -i পার্থক্য:
| কমান্ড | পাসওয়ার্ড | লগ | নিরাপত্তা |
|---|---|---|---|
su - | root এর পাসওয়ার্ড | লগ হয় না | কম |
sudo -i | নিজের পাসওয়ার্ড | /var/log/auth.log এ লগ হয় | বেশি |
Step 3: আপনি কোথায়? – নেভিগেশন কমান্ড
১. pwd – Print Working Directory
Bash
pwd
আউটপুট: /home/tolearn – আপনি এখন কোন ফোল্ডারে আছেন।
২. ls – লিস্ট ফাইল
Bash
ls -lha
ব্যাখ্যা: -l=Details, -h=Human Readable Size, -a=Hidden ফাইল সহ দেখাবে।
৩. cd – Change Directory
Bash
cd /etc # /etc ফোল্ডারে যানcd ~ # নিজের হোমে যান = /home/tolearncd .. # এক ধাপ উপরের ফোল্ডারে যান
Step 4: লিনাক্স ডিরেক্টরি স্ট্রাকচার – ৫টি মাস্ট জানা ফোল্ডার
/
├── root/ <– root ইউজারের হোম। sudo -i দিলে এখানে আসবেন। পারমিশন 700
├── home/ <– সব সাধারণ ইউজারের হোম। /home/tolearn/
├── etc/ <– সব কনফিগ ফাইল। sshd_config, passwd এখানেই থাকে
├── var/ <– Variable Data। লগ /var/log/, ওয়েবসাইট /var/www/
└── bin/ <– সব বেসিক কমান্ড। ls, cp, mv এখানে থাকে
গোল্ডেন রুল: /etc বা /var এ কাজ করতে হলে sudo লাগবেই।
Step 5: প্যাকেজ ম্যানেজমেন্ট – সফটওয়্যার ইনস্টল
Ubuntu/Debian এর জন্য apt:
sudo apt update # প্যাকেজ লিস্ট আপডেট
sudo apt upgrade # সব প্যাকেজ আপগ্রেড
sudo apt install htop # htop ইনস্টল
sudo apt remove htop # রিমুভ
CentOS/RHEL এর জন্য yum বা dnf:
sudo yum update
sudo yum install htop
Step 6: অন্যান্য দরকারি বেসিক কমান্ড
clear # টার্মিনাল পরিষ্কার
history # আগে কী কমান্ড দিয়েছেন
man ls # যেকোনো কমান্ডের ম্যানুয়াল। q চেপে বের হবেন
reboot # সার্ভার রিস্টার্ট। sudo লাগবে
poweroff # সার্ভার বন্ধ। sudo লাগবে
df -h # ডিস্ক স্পেস চেক
free -h # RAM চেক
top / htop # চলমান প্রসেস দেখা। q চেপে বের হবেন
3. সিরিজের পরবর্তী পর্ব
Part-1: ইউজার ও অ্যাকাউন্ট ম্যানেজমেন্ট – এই বেসিক কমান্ড ব্যবহার করে useradd দিয়ে নতুন ইউজার বানানো শিখব।
গট ইট! আপনার Part-0: বেসিক অপারেশনাল কমান্ড পোস্টে restart, shutdown এবং অন্যান্য দরকারি সিস্টেম কমান্ড অ্যাড করে ফাইনাল আপডেটেড ভার্সন দিলাম।
2. পোস্ট কনটেন্ট: আপডেটেড সেকশন
লিনাক্স সার্ভার কনফিগারেশন: বেসিক অপারেশনাল কমান্ড মাস্টারক্লাস
Step 6: সিস্টেম কন্ট্রোল – Restart, Shutdown ও অন্যান্য
সার্ভার মেইনটেনেন্সের জন্য এই কমান্ডগুলো সবচেয়ে বেশি লাগবে। সতর্কতা: সবগুলোতে sudo লাগবে।
১. reboot – সার্ভার রিস্টার্ট
Bash
sudo reboot
ব্যাখ্যা: সার্ভার সাথে সাথে রিস্টার্ট হবে। কার্নেল আপডেট বা কনফিগ চেঞ্জের পর লাগে।
২. shutdown – সার্ভার বন্ধ করা
sudo shutdown now # এখনই বন্ধ
sudo shutdown -h +10 # ১০ মিনিট পর বন্ধ। -h = halt
sudo shutdown -r 22:00 # রাত ১০টায় রিস্টার্ট। -r = reboot
sudo shutdown -c # শিডিউল করা শাটডাউন ক্যান্সেল
৩. systemctl – আধুনিক সার্ভিস কন্ট্রোল – সবচেয়ে গুরুত্বপূর্ণinit.d এর বদলে এখন systemd ব্যবহার হয়।
sudo systemctl reboot # reboot কমান্ডের আধুনিক ভার্সন
sudo systemctl poweroff # shutdown কমান্ডের আধুনিক ভার্সন
sudo systemctl status ssh # ssh সার্ভিস চলছে কিনা দেখা
sudo systemctl restart nginx # nginx রিস্টার্ট দেওয়া
sudo systemctl enable docker # সার্ভার অন হলে docker অটো চালু হবে
৪. অন্যান্য দরকারি সিস্টেম কমান্ড
| কমান্ড | কাজ | উদাহরণ |
|---|---|---|
uptime | কতক্ষণ ধরে সার্ভার চলছে | uptime -p |
uname -a | কার্নেল ও OS তথ্য | uname -r = শুধু কার্নেল ভার্সন |
hostnamectl | Hostname চেঞ্জ ও OS তথ্য | sudo hostnamectl set-hostname server1 |
date | সার্ভারের সময় দেখা | date -s "2026-08-05 10:00:00" |
timedatectl | টাইমজোন সেট করা | sudo timedatectl set-timezone Asia/Dhaka |
df -h | ডিস্ক স্পেস চেক | df -h / = রুট পার্টিশন |
free -h | RAM ও Swap চেক | free -m = MB তে দেখাবে |
top / htop | লাইভ CPU/RAM ব্যবহার | sudo apt install htop লাগবে |
ps aux | সব চলমান প্রসেস | ps aux \| grep nginx |
kill | প্রসেস বন্ধ করা | sudo kill -9 1234 = PID 1234 কে জোর করে বন্ধ |
wget / curl | ফাইল ডাউনলোড | wget https://example.com/file.zip |
tar | ফাইল Zip/Unzip | tar -czvf backup.tar.gz /var/www |
Step 7: লিনাক্স ডিরেক্টরি স্ট্রাকচার – আপডেটেড লিস্ট
| ডিরেক্টরি | কী থাকে | কেন দরকার |
|---|---|---|
/root | root ইউজারের হোম | sudo -i দিলে এখানে আসবেন |
/home | সব ইউজারের পার্সোনাল ফোল্ডার | /home/tolearn/ |
/etc | সব কনফিগ ফাইল | sshd_config, passwd, nginx |
/var | লগ, ওয়েবসাইট, ডেটাবেজ | /var/log/auth.log, /var/www/ |
/usr | ইউজার প্রোগ্রাম | /usr/bin/python3 |
/bin /sbin | বেসিক কমান্ড | ls, reboot, shutdown |
/tmp | টেম্পোরারি ফাইল | রিস্টার্ট দিলে মুছে যায় |
/opt | থার্ড-পার্টি সফটওয়্যার | Google Chrome, XAMPP |
Special Instruction for Ubuntu: Ubuntu তে ডিফল্ট
rootঅ্যাকাউন্ট লক থাকে। তাইsu -কাজ করবে না।sudo passwd rootদিয়ে প্রথমেrootএর পাসওয়ার্ড সেট করতে হবে। কিন্তু এটা নিরাপত্তার জন্য রেকমেন্ডেড না। সবসময়sudo -iব্যবহার করুন।
3. কমপ্লিট কমান্ড চিটশিট: কপি-পেস্ট করুন
আইডেন্টিটি
whoami
id
sudo -i # root হওয়া
নেভিগেশন
pwd
ls -lha
cd /etc
সিস্টেম কন্ট্রোল
sudo reboot
sudo shutdown now
sudo systemctl status nginx
uptime
df -h
free -h
top
প্যাকেজ
sudo apt update && sudo apt upgrade
sudo apt install htop
