ভূমিকা: CentOS কি এবং কেন শিখবেন?
CentOS Stream হলো Red Hat Enterprise Linux (RHEL) এর আপস্ট্রিম ডেভেলপমেন্ট প্ল্যাটফর্ম। এন্টারপ্রাইজ লেভেল সার্ভার, ওয়েব হোস্টিং, ডেটাবেস সার্ভার চালানোর জন্য CentOS সবচেয়ে স্টেবল ও সিকিউর ডিস্ট্রোগুলোর একটি।
গুরুত্বপূর্ণ নোট: CentOS 8 EOL হয়ে গেছে। এখন CentOS Stream 9 হলো কারেন্ট ভার্সন। এটা RHEL 9 এর আপস্ট্রিম। প্রোডাকশনের জন্য অনেকে Rocky Linux বা AlmaLinux ব্যবহার করে, কিন্তু CentOS Stream সিস্টেম অ্যাডমিন শেখার জন্য বেস্ট।
এই আর্টিকেলে যা শিখবেন:
- ISO ডাউনলোড ও বুটেবল মিডিয়া তৈরি
- VMware/VirtualBox এ VM কনফিগার
- Anaconda Installer দিয়ে স্টেপ-বাই-স্টেপ ইনস্টল
- Manual Partition: LVM, /boot, /, swap এর বেস্ট প্র্যাকটিস
- Network, Hostname, User ও Root সেটআপ
- Minimal vs Server with GUI ইনস্টলেশনের পার্থক্য
- একাডেমিক আলোচনা: RHEL Ecosystem ও RPM প্যাকেজ ম্যানেজমেন্ট
১. পূর্বশর্ত ও প্রয়োজনীয় জিনিসপত্র
| বিষয় | প্রয়োজন | ক্লারিফিকেশন |
|---|---|---|
| ISO ফাইল | CentOS-Stream-9-latest-x86_64-dvd1.iso ∼9GB | অফিসিয়াল সাইট: mirror.stream.centos.org |
| RAM | মিনিমাম 2GB, রেকমেন্ডেড 4GB | GUI এর জন্য 4GB+ লাগবে |
| Disk | মিনিমাম 20GB, রেকমেন্ডেড 40GB+ | LVM ব্যবহার করলে পরে বাড়ানো যায় |
| CPU | 2 Core | 64-bit x86_64 আর্কিটেকচার |
| Hypervisor | VMware Workstation, VirtualBox, Proxmox | ফিজিক্যাল সার্ভারেও একই প্রসেস |
| নেটওয়ার্ক | NAT বা Bridged | ইনস্টলের সময় আপডেট নামানোর জন্য |
স্পেশাল ইনস্ট্রাকশন: প্রোডাকশন সার্ভারে সবসময় Minimal Install ব্যবহার করবেন। GUI সার্ভারে রিসোর্স নষ্ট করে ও সিকিউরিটি রিস্ক বাড়ায়।
২. Step 1: ISO ডাউনলোড ও VM তৈরি
2.1. ISO ডাউনলোড
অফিসিয়াল মিরর থেকে ডাউনলোড করুন:
Bash
wget https://mirror.stream.centos.org/9-stream/BaseOS/x86_64/iso/CentOS-Stream-9-latest-x86_64-dvd1.iso
ক্লারিফিকেশন: dvd1.iso তে সব প্যাকেজ থাকে। boot.iso শুধু নেটওয়ার্ক ইনস্টলের জন্য।
2.2. VMware/VirtualBox সেটিংস
VMware Workstation:
Create New Virtual Machine→Custom→NextInstaller disc image file→ CentOS ISO সিলেক্ট করুনGuest OS: Linux → Version:Red Hat Enterprise Linux 9 64-bitRAM: 4096 MB,CPU: 2 CoreDisk: 40GB,Store as single fileNetwork: NATFinishএর আগেCustomize Hardware→Display→3D accelerationটিক তুলে দিন।
VirtualBox:
New→ Name: CentOS-9, Type: Linux, Version: Red Hat 64-bitMemory: 4096 MB,Processors: 2Hard disk: Create 40GB VDI, Dynamically allocatedSettings→Storage→ Empty তে ISO মাউন্ট করুনNetwork→Adapter 1: NAT
৩. Step 2: Anaconda Installer দিয়ে ইনস্টলেশন
VM স্টার্ট করলে বুট মেনু আসবে। Install CentOS Stream 9 সিলেক্ট করে Enter দিন।
3.1. ভাষা ও কিবোর্ড
- Welcome Screen:
English→Continue. সার্ভারে সবসময় English ব্যবহার করা বেস্ট প্র্যাকটিস। - Installation Summary স্ক্রিন আসবে। এখান থেকে সব কনফিগার করতে হবে।
3.2. Keymap, Time & Date
- Keyboard:
English (US)ঠিক আছে কিনা চেক করুন। - Time & Date:
Region: Asia,City: Dhaka.Network Time: On করুন। NTP সার্ভার টাইম সিঙ্ক করবে।
ক্লারিফিকেশন: সার্ভারে সঠিক টাইম না থাকলে SSL, Kerberos, লগ সব ভুল হবে।
3.3. Software Selection – সবচেয়ে গুরুত্বপূর্ণ
Software Selection এ ক্লিক করুন।
| অপশন | কখন ব্যবহার করবেন | ডিস্ক সাইজ |
|---|---|---|
| Minimal Install | প্রোডাকশন সার্ভার, ওয়েব, ডাটাবেস | ∼1.5GB |
| Server | CLI সার্ভার + কমন টুলস | ∼2.5GB |
| Server with GUI | শিখার জন্য, GUI দরকার হলে | ∼5GB+ |
| Workstation | ডেস্কটপ হিসেবে ব্যবহার | ∼6GB+ |
রেকমেন্ডেশন: Minimal Install সিলেক্ট করুন। Add-Ons থেকে Standard এবং Guest Agents টিক দিন। এটা VMware Tools ইনস্টল করবে।
3.4. Installation Destination – Manual Partition
এটা সবচেয়ে ক্রিটিক্যাল স্টেপ। Installation Destination এ ক্লিক করুন।
- আপনার 40GB ডিস্ক সিলেক্ট করুন।
Storage Configuration:Customসিলেক্ট করেDoneদিন।Manual Partitioningস্ক্রিন আসবে।LVMসিলেক্ট করুন।
প্রোডাকশন স্ট্যান্ডার্ড পার্টিশন টেবিল:
| Mount Point | Size | Device Type | File System | ক্লারিফিকেশন |
|---|---|---|---|---|
/boot | 1 GB | Standard Partition | xfs | কার্নেল ও grub ফাইল থাকে। LVM এর বাইরে রাখতে হয়। |
/boot/efi | 600 MB | Standard Partition | EFI System | শুধু UEFI সিস্টেমের জন্য। BIOS হলে লাগবে না। |
/ | 20 GB | LVM | xfs | রুট ফাইল সিস্টেম। OS ও সফটওয়্যার। |
/home | 10 GB | LVM | xfs | ইউজার ডাটা। আলাদা রাখলে OS রি-ইনস্টলে ডাটা সেফ থাকে। |
swap | 4 GB | LVM | swap | RAM এর 1x থেকে 2x। 4GB RAM হলে 4GB swap যথেষ্ট। |
| Free Space | ∼5 GB | LVM | ভবিষ্যতে / বা /var বাড়ানোর জন্য রাখুন। |
LVM কেন ব্যবহার করবেন? Logical Volume Management দিয়ে পরে পার্টিশন রিসাইজ করা যায় সার্ভার বন্ধ না করে। এটা এন্টারপ্রাইজ স্ট্যান্ডার্ড।
Click + দিয়ে একটা একটা করে বানান। সব শেষে Done → Accept Changes দিন।
3.5. Network & Host Name
Network & Host Nameএ ক্লিক করুন।EthernetOn করুন। IP অটো DHCP থেকে পাবে।Host Name:centos9-server.ToLearnTeam.localদিন →Apply.Configure→IPv4 Settings→Manualদিয়ে স্ট্যাটিক IP সেট করতে পারেন প্রোডাকশনে।
উদাহরণ: Address: 10.0.0.100, Netmask: 255.255.255.0, Gateway: 10.0.0.1, DNS: 8.8.8.8
3.6. Root Password ও User Creation
Root Passwordসেট করুন। খুব স্ট্রং পাসওয়ার্ড দিন।Lock root accountটিক তুলে দিন।User Creation→ নতুন ইউজার বানান। যেমন:admin।Make this user administratorটিক দিন। এটাwheelগ্রুপে অ্যাড করবে, ফলেsudoব্যবহার করতে পারবে।
স্পেশাল ইনস্ট্রাকশন: সরাসরি root দিয়ে লগইন করা সিকিউরিটি রিস্ক। সবসময় নন-রুট ইউজার + sudo ব্যবহার করুন।
সব Done হলে Begin Installation এ ক্লিক করুন। ১০-২০ মিনিট লাগবে।
৪. Step 3: পোস্ট ইনস্টলেশন টাস্ক
ইনস্টল শেষে Reboot System দিন। ISO ফাইল আনমাউন্ট করুন না হলে আবার ইনস্টলার চালু হবে।
4.1. প্রথম লগইন ও সিস্টেম আপডেট
admin ইউজার দিয়ে লগইন করুন।
Bash
sudo dnf update -y
ক্লারিফিকেশন: dnf হলো CentOS 9 এর ডিফল্ট প্যাকেজ ম্যানেজার। yum এর আপগ্রেডেড ভার্সন। -y মানে সব প্রশ্নে yes।
4.2. প্রয়োজনীয় প্যাকেজ ইনস্টল
মিনিমাল ইনস্টলে অনেক বেসিক টুল থাকে না। ইনস্টল করুন:
Bash
sudo dnf install vim wget curl net-tools bash-completion tree git -y
| প্যাকেজ | কাজ |
|---|---|
vim | অ্যাডভান্সড টেক্সট এডিটর |
net-tools | ifconfig, netstat কমান্ডের জন্য |
bash-completion | Tab চাপলে কমান্ড অটো-কমপ্লিট হবে |
tree | ডিরেক্টরি স্ট্রাকচার দেখার জন্য |
4.3. ফায়ারওয়াল ও SELinux চেক
Bash
sudo systemctl status firewalld # Active দেখাবে
sudo getenforce # Enforcing দেখাবে
ক্লারিফিকেশন: firewalld ও SELinux সেন্টওএস এর মেইন সিকিউরিটি ফিচার। প্রোডাকশনে কখনো ডিজেবল করবেন না। কনফিগার করতে শিখুন।
4.4. IP ও হোস্টনেম ভেরিফাই করুন
Bash
ip a # IP অ্যাড্রেস দেখাবে
hostnamectl # হোস্টনেম, OS ভার্সন দেখাবে
ping -c 4 google.com # ইন্টারনেট আছে কিনা চেক
৫. একাডেমিক আলোচনা: CentOS Ecosystem ও ডিরেক্টরি স্ট্রাকচার
5.1. RHEL Ecosystem এ CentOS এর অবস্থান
CentOS Stream হলো “Rolling Preview” of RHEL। Red Hat প্রথমে CentOS Stream এ ফিচার টেস্ট করে, তারপর সেটা RHEL এ স্টেবল রিলিজ হিসেবে যায়।
ফ্লো: Fedora → CentOS Stream → RHEL → AlmaLinux/Rocky Linux
এজন্য CentOS Stream শিখলে আপনি RHEL, Alma, Rocky সবই কভার করছেন। চাকরির বাজারে এটাই চায়।
5.2. Linux ডিরেক্টরি স্ট্রাকচার – FHS Standard
ইনস্টলের পর এই ডিরেক্টরিগুলো বোঝা জরুরি:
/ # রুট ডিরেক্টরি, সবকিছুর মূল
/bin # বেসিক ইউজার কমান্ড: ls, cp, mv
/sbin # সিস্টেম অ্যাডমিন কমান্ড: fdisk, iptables
/etc # সব কনফিগ ফাইল: /etc/ssh/sshd_config
/home # ইউজার হোম ডিরেক্টরি: /home/admin
/var # ভেরিয়েবল ডাটা: লগ /var/log, ওয়েব /var/www
/usr # ইউজার প্রোগ্রাম ও লাইব্রেরি
/boot # কার্নেল, grub বুটলোডার ফাইল
/tmp # টেম্পোরারি ফাইল, রিবুটে মুছে যায়
/opt # থার্ড পার্টি সফটওয়্যার
5.3. RPM প্যাকেজ ম্যানেজমেন্ট
CentOS .rpm প্যাকেজ ব্যবহার করে। dnf হলো হাই-লেভেল টুল।
sudo dnf install nginx # ইনস্টল
sudo dnf remove nginx # রিমুভ
sudo dnf search nginx # সার্চ
sudo dnf info nginx # ডিটেইল দেখা
একাডেমিক তাৎপর্য: Debian/Ubuntu apt ও .deb ব্যবহার করে। দুটো সিস্টেমই জানা থাকলে আপনি যেকোনো লিনাক্স সার্ভার ম্যানেজ করতে পারবেন।
৬. কমন এরর ও ট্রাবলশুটিং
| সমস্যা | কারণ | সমাধান |
|---|---|---|
Pane is dead | GUI ইনস্টলে RAM কম | VM এ 4GB+ RAM দিন |
No network during install | NAT/Bridged সিলেক্ট করা নাই | VM সেটিংসে Network Adapter এনাবল করুন |
Warning: /dev/root does not exist | LVM/পার্টিশন এরর | Manual Partition আবার করুন, /boot Standard Partition রাখুন |
X startup failed | Server with GUI তে ড্রাইভার ইস্যু | Minimal Install দিয়ে CLI ব্যবহার করুন |
৭. উপসংহার ও পরবর্তী ধাপ
আপনি এখন সফলভাবে CentOS Stream 9 ইনস্টল করে একটি বেসিক সার্ভার রেডি করেছেন। LVM পার্টিশন, নেটওয়ার্ক, ইউজার ম্যানেজমেন্ট সহ সবকিছু প্রোডাকশন স্ট্যান্ডার্ড মেনে করা হয়েছে।
সিরিজের পরবর্তী পর্ব: CentOS 9 Initial Server Setup - SSH, Firewalld, SELinux কনফিগারেশন। সেখানে আমরা সার্ভারকে ইন্টারনেটে এক্সপোজ করার জন্য সিকিউর করব।
ToLearnTeam.com এর সাথে থাকুন। আপনার প্রশ্ন কমেন্টে জানান।
