WebX

লিনাক্স চিটশিট

লিনাক্স (Linux) হলো একটি ওপেন-সোর্স অপারেটিং সিস্টেম যা ফাইল ম্যানেজমেন্ট, সিস্টেম অ্যাডমিনিস্ট্রেশন, নেটওয়ার্কিং এবং আরও অনেক কিছুর জন্য ব্যবহৃত হয়। এই চিটশিটে লিনাক্সের সব মৌলিক থেকে উন্নত কমান্ড এবং ধারণা বিস্তারিতভাবে কভার করা হয়েছে।

১. লিনাক্স শুরু করা

১.১ টার্মিনাল ব্যবহার

  • টার্মিনাল খোলা: Ctrl + Alt + T (বেশিরভাগ ডিস্ট্রোতে)।
  • ইউজার তথ্য: whoami
  • হোস্টনেম: hostname

১.২ ফাইল সিস্টেম স্ট্রাকচার

ডিরেক্টরিবর্ণনা
/রুট ডিরেক্টরি।
/homeইউজারদের হোম ডিরেক্টরি।
/etcকনফিগারেশন ফাইল।
/varভেরিয়েবল ডেটা (লগ, ডাটাবেস)।
/binবাইনারি ফাইল (কমান্ড)।
/tmpঅস্থায়ী ফাইল।

২. মৌলিক কমান্ড

২.১ ফাইল ও ডিরেক্টরি ম্যানেজমেন্ট

কমান্ডবর্ণনাউদাহরণ
lsডিরেক্টরি তালিকা (dir alternative)।dir (উবুন্টুতে ls -l)
cdডিরেক্টরি পরিবর্তন।cd /home/user
pwdবর্তমান ডিরেক্টরি পথ।/home/user
mkdirনতুন ডিরেক্টরি তৈরি।mkdir myfolder
touchনতুন ফাইল তৈরি।touch myfile.txt
cpফাইল/ডিরেক্টরি কপি।cp file.txt /home
mvফাইল/ডিরেক্টরি সরানো বা নাম পরিবর্তন।mv file.txt newfile.txt
rmফাইল/ডিরেক্টরি মুছে ফেলা।rm -r myfolder

উদাহরণ:

mkdir docs
touch docs/note.txt
cp docs/note.txt docs/note2.txt
rm docs/note2.txt

২.২ ফাইল ভিউ এবং এডিট

কমান্ডবর্ণনাউদাহরণ
catফাইলের কন্টেন্ট দেখা।cat file.txt
lessপেজ করে ফাইল দেখা।less file.txt
nanoফাইল এডিট করা।nano file.txt
vimউন্নত ফাইল এডিটর।vim file.txt
headফাইলের প্রথম কয়েক লাইন।head -n 5 file.txt
tailফাইলের শেষ কয়েক লাইন।tail -n 5 file.txt

উদাহরণ:

cat note.txt
nano note.txt  # Ctrl+O সেভ, Ctrl+X বের হওয়া

৩. ফাইল পারমিশন

৩.১ পারমিশন দেখা

ls -l
  • আউটপুট: drwxr-xr-x (d=ডিরেক্টরি, r=রিড, w=রাইট, x=এক্সিকিউট)।

৩.২ পারমিশন পরিবর্তন

কমান্ডবর্ণনাউদাহরণ
chmodপারমিশন পরিবর্তন।chmod u+x script.sh
chownমালিক পরিবর্তন।chown user file.txt
  • chmod সংখ্যা: 4=রিড, 2=রাইট, 1=এক্সিকিউট
    • chmod 755 script.sh (ইউজার: rwx, গ্রুপ/অন্য: rx)।

৪. সিস্টেম ম্যানেজমেন্ট

৪.১ প্রসেস ম্যানেজমেন্ট

কমান্ডবর্ণনাউদাহরণ
psচলমান প্রসেস।ps aux
topরিয়েল-টাইম প্রসেস মনিটর।top
killপ্রসেস বন্ধ।kill 1234
killallনাম দিয়ে প্রসেস বন্ধ।killall firefox

৪.২ সিস্টেম তথ্য

কমান্ডবর্ণনাউদাহরণ
unameসিস্টেম তথ্য।uname -a
dfডিস্ক স্পেস।df -h
duফাইল/ডিরেক্টরি সাইজ।du -sh /home
freeমেমরি ব্যবহার।free -h

৫. প্যাকেজ ম্যানেজমেন্ট

৫.১ Ubuntu/Debian

কমান্ডবর্ণনাউদাহরণ
apt updateপ্যাকেজ লিস্ট আপডেট।sudo apt update
apt installপ্যাকেজ ইনস্টল।sudo apt install vim
apt removeপ্যাকেজ মুছে ফেলা।sudo apt remove vim
apt upgradeসব প্যাকেজ আপডেট।sudo apt upgrade

৫.২ CentOS/RHEL

কমান্ডবর্ণনাউদাহরণ
yum installপ্যাকেজ ইনস্টল।sudo yum install httpd
yum updateপ্যাকেজ আপডেট।sudo yum update

৬. নেটওয়ার্কিং

কমান্ডবর্ণনাউদাহরণ
pingনেটওয়ার্ক কানেকশন চেক।ping google.com
curlURL থেকে ডেটা ডাউনলোড।curl http://example.com
wgetফাইল ডাউনলোড।wget http://example.com/file
ifconfigনেটওয়ার্ক ইন্টারফেস।ifconfig
netstatনেটওয়ার্ক সংযোগ।netstat -tuln
ssআধুনিক নেটওয়ার্ক স্ট্যাটাস।ss -tuln

৭. ফাইল সার্চ এবং ফিল্টার

৭.১ ফাইল খোঁজা

কমান্ডবর্ণনাউদাহরণ
findফাইল/ডিরেক্টরি খোঁজা।find / -name "file.txt"
locateদ্রুত ফাইল খোঁজা।locate file.txt

৭.২ টেক্সট ফিল্টার

কমান্ডবর্ণনাউদাহরণ
grepটেক্সট সার্চ।grep "error" log.txt
awkটেক্সট প্রসেসিং।awk '{print $1}' file.txt
sedটেক্সট এডিট।sed 's/old/new/g' file.txt

৮. শেল স্ক্রিপ্টিং

৮.১ বেসিক স্ক্রিপ্ট

script.sh:

#!/bin/bash
echo "হ্যালো, লিনাক্স!"
name="রহিম"
echo "নাম: $name"
  • চালানো:
chmod +x script.sh
./script.sh

৮.২ শর্ত এবং লুপ

#!/bin/bash
age=20
if [ $age -gt 18 ]; then
    echo "প্রাপ্তবয়স্ক"
else
    echo "শিশু"
fi
 
for i in {1..3}; do
    echo "গণনা: $i"
done

৯. ইউজার এবং গ্রুপ ম্যানেজমেন্ট

কমান্ডবর্ণনাউদাহরণ
whoলগইন করা ইউজার।who
adduserনতুন ইউজার।sudo adduser rahim
passwdপাসওয়ার্ড পরিবর্তন।sudo passwd rahim
groupaddনতুন গ্রুপ।sudo groupadd mygroup
usermodইউজার পরিবর্তন।sudo usermod -aG mygroup rahim

১০. সার্ভিস ম্যানেজমেন্ট

কমান্ডবর্ণনাউদাহরণ
systemctlসার্ভিস নিয়ন্ত্রণ।sudo systemctl start apache2
serviceসার্ভিস নিয়ন্ত্রণ (পুরানো)।sudo service apache2 restart

১১. উদাহরণ: একটি সম্পূর্ণ স্ক্রিপ্ট

#!/bin/bash
echo "লিনাক্স সিস্টেম তথ্য"
echo "ইউজার: $(whoami)"
echo "হোস্টনেম: $(hostname)"
echo "ডিস্ক স্পেস:"
df -h
echo "চলমান প্রসেস:"
ps aux | grep "bash"
  • চালানো:
chmod +x system_info.sh
./system_info.sh

On this page