উবুন্টু বা অন্য ডেবিয়ান-ভিত্তিক লিনাক্স ডিস্ট্রো ব্যবহার করলে ইনস্টলেশন ইন্সট্রাকশনে APT কমান্ড দেখেন, আবার কোথাও dpkg।
এই দুটো প্যাকেজ ম্যানেজারের যেকোনো দিয়ে প্যাকেজ ইনস্টল করলে কি সমস্যা হয়? পার্থক্য কী? আজ সেগুলো জানি যাতে উবুন্টুতে সেরাভাবে প্যাকেজ ইনস্টল করতে পারেন।
APT vs dpkg: দুটি গুরুত্বপূর্ণ প্যাকেজ ইনস্টলার
APT এবং dpkg উভয়ই কমান্ড-লাইন প্যাকেজ ম্যানেজমেন্ট ইন্টারফেস, উবুন্টু ও ডেবিয়ান-ভিত্তিক সিস্টেমের টার্মিনালে ব্যবহার করা হয়। DEB ফাইল ইনস্টল করা, ইনস্টল করা প্যাকেজ লিস্ট করা—দুটোই পারে।
তবে এত মিল থাকলে কেন দুটোই দরকার? আসলে দুটোই মিলে কাজ করে—APT, dpkg ব্যবহার করে একটি কমপ্লিট প্যাকেজ ম্যানেজমেন্ট টুল হিসেবে কাজ করে।
APT, dpkg ব্যবহার করে প্যাকেজ ইনস্টল করে
APT (বা Apt-get) প্যাকেজ ইনস্টল করলে ব্যাকএন্ডে dpkg ব্যবহার করে। dpkg হলো APT-এর ইউজার-ফ্রেন্ডলি ইন্টারফেসের “উন্ডার দ্য হুড” টুল।
APT প্যাকেজ ডাউনলোড করতে পারে
APT-এ রিমোট রিপোজitóরি থেকে ফাইল রিট্রিভ করে ইনস্টল করা যায়—একই কমান্ডে। ম্যানুয়ালি ডাউনলোড করে ইনস্টল করার ঝামেলা নেই।
dpkg-এ শুধু লোকাল ফাইল (যে ডাউনলোড করেছেন) ইনস্টল করা যায়। রিমোট রিপোজitóরি সার্চ বা পুল করতে পারে না।
Dpkg ডিপেন্ডেন্সি ইনস্টল করে না
dpkg দিয়ে প্যাকেজ ইনস্টল করলে শুধু সেটা ইনস্টল হয়। কিছু প্যাকেজ চলেamiseks অডিশনাল সফটওয়্যার (ডিপেন্ডেন্সি) লাগে। dpkg তখন এরর দেয়।
APT অটোমেটিক্যালি রিলেভ্যান্ট ডিপেন্ডেন্সি চেক করে ইনস্টল করে, যাতে সফটওয়্যার ঠিকমতো চলে। তাই dpkg দিয়ে ইনস্টল করার পর APT-এর স্পেশাল কমান্ড দিয়ে ডিপেন্ডেন্সি রিস্টোর করা উচিত:
sudo apt install -f
Dpkg শুধু লোকাল প্যাকেজ ইন্ডেক্স করে
সিস্টেমে ইনস্টল করা প্যাকেজ জানতে dpkg-র --list ফাংশন APT-র চেয়ে ভালো কাজ করে। কারণ dpkg রিমোট প্যাকেজ খুঁজে পায় না, তাই লোকাল প্যাকেজই লিস্ট করে।
dpkg --list
APT-র list কমান্ড যাবতীয় প্যাকেজ (লোকাল বা রিমোট) লিস্ট করে। শুধু ইনস্টল করা প্যাকেজ দেখতে --installed বা -i অপশন দিন:
apt list --installed
Dpkg vs APT: কোনটি আপনার জন্য ভালো?
লোকাল প্যাকেজ dpkg দিয়ে ইনস্টল করতে পারবেন কোনো ইস্যু ছাড়া। কিন্তু রিমোট সফটওয়্যার রিপোজitóরি থেকে রেগুলারলি প্যাকেজ সার্চ করলে APT বা Apt-get बेटার।
APT প্যাকেজ খুঁজে বের করে, ডাউনলোড করে, ডিপেন্ডেন্সি মিট আপ করে। dpkg ব্যবহার করা যায়, কিন্তু APT একই ফাংশন করিয়ে সফটওয়্যার ঠিকমতো চালু রাখে। প্যাকেজ আনইনস্টাল ও রিমুভ করার জন্যও APT আইডিয়াল।