Dpkg এবং প্রবণতা / apt-get এর মধ্যে পার্থক্য কী?


125

মাধ্যমে কোনও সফ্টওয়্যার ইনস্টল করার সময় dpkg -i packageA.deb, প্রয়োজনীয় নির্ভরতাগুলি packageAকি স্বয়ংক্রিয়ভাবে ডাউনলোড এবং ইনস্টল হবে? এটি ব্যবহার করে apt-getবা কীভাবে আলাদা aptitude?


সম্পর্কিত (বিশেষত নির্ভরতা সম্পর্কিত): Askubuntu.com/q/40779/250300
মেলাবিয়াস

উত্তর:


168

না, dpkgকেবলমাত্র একটি প্যাকেজ ইনস্টল করে, সুতরাং dpkg -i packageName.debএটি কেবল এই ডেব প্যাকেজটি ইনস্টল করবে এবং আপনাকে যে কোনও নির্ভরতা ইনস্টল করতে হবে সে সম্পর্কে অবহিত করবে, তবে এটি তাদের ইনস্টল করবে না এবং এটি কনফিগার করবে নাpackageName.deb কারণ ... নির্ভরতাগুলি হ'ল এখানে না.

apt-getএকটি প্যাকেজ ম্যানেজমেন্ট সিস্টেম যা দেবিয়ান-ভিত্তিক লিনাক্স বিতরণগুলিতে ডেবি প্যাকেজগুলির ইনস্টলেশন পরিচালনা করে । প্যাকেজ ম্যানেজমেন্ট সিস্টেম এমন একটি সরঞ্জাম যা আপনাকে প্যাকেজগুলি সহজেই ইনস্টল করতে, অপসারণ করতে এবং পরিবর্তন করতে সহায়তা করে। সুতরাং apt-getএকটি চালাক মত হল dpkg

আমি এই সময়রেখার কথা ভাবতে চাই (নীচে কেবল অভিজ্ঞতা থেকে বলছি It এটি আপনাকে কেবল পুরো বিষয়টি সম্পর্কে ধারণা দেওয়ার জন্য):

  • তারা কোনও অ্যাপ্লিকেশন ফাইলগুলিকে "প্যাকেজ" এ "সঞ্চয়" করার উপায় নিয়ে আসে যাতে এটি সহজেই ইনস্টল করা যায়। সুতরাং, দেব প্যাকেজ ( .debএক্সটেনশন ফাইল ) জন্মগ্রহণ করেছিল।

    একটি .debফাইল চালানোর জন্য কোনও অ্যাপ্লিকেশন দ্বারা প্রয়োজনীয় ফাইলগুলি অন্তর্ভুক্ত করে ( পাশাপাশি আমি এটি বলতে চাই) "মেটা-ডেটা" যা অন্যান্য তথ্য ধারণ করে যেমন অ্যাপ্লিকেশনটির নির্ভরতাগুলির নাম। আপনি যদি কোনও .debফাইলের বিষয়বস্তু দেখতে চান তবে আপনি কমান্ডটি ব্যবহার করতে পারেন dpkg -c packageName.debএবং আপনি যদি এই "মেটা-ডেটা" তথ্যটি dpkg -I pacakgeName.debদেখতে চান তবে কমান্ডটি ব্যবহার করুন (এবং যদি আপনি কেবল নির্ভরতা দেখতে চান তবে করুন dpkg -I packageName.deb | grep Depends)।

  • এই .debফাইলগুলি ইনস্টল করার জন্য তাদের একটি সরঞ্জামের প্রয়োজন ছিল , তাই তারা dpkgসরঞ্জামটি নিয়ে আসে । তবে এই সরঞ্জামটি কেবল .debফাইলটি ইনস্টল করবে, তবে এর নির্ভরতাগুলি ইনস্টল করবে না কারণ এটিতে এই ফাইলগুলি নেই এবং এর থেকে নির্ভরতাগুলি টানতে যেতে "সংগ্রহস্থল" এ অ্যাক্সেস নেই।

  • তারপরে, তারা এলো apt-get, যা পূর্ববর্তী পয়েন্টগুলির সমস্যাগুলি স্বয়ংক্রিয় করে। হুডের নীচে, apt-getমূলত dpkg(আমি এটির apt-getজন্য ফ্রন্ট-এন্ড হিসাবে ভাবতে চাই dpkg) তবে একটি চালাক যা নির্ভরতা সন্ধান করবে এবং সেগুলি ইনস্টল করবে। এটি বর্তমানে ইনস্টল করা নির্ভরতাগুলিও দেখে এবং এটি নির্ধারণ করে যেগুলি অন্য কোনও প্যাকেজ দ্বারা ব্যবহৃত হচ্ছে না এবং আপনাকে সেগুলি সরাতে পারবেন বলে আপনাকে অবহিত করবে।

aptitudeতারপর সাথে এসেছিল। এটি লাইব্রেরি apt-getব্যবহার করে এবং এটির একটি ইন্টারেক্টিভ ইউআই (ইউজার ইন্টারফেস) ব্যবহার করে। আপনি যদি এই UI দেখতে চান তবে কেবল aptitudeটার্মিনালে টাইপ করুন। এটাই aptitude । এটা তোলে আরও বিকল্প এবং তুলনায় ভাতা প্রদান লাইব্রেরি লিভারেজ apt-get। উদাহরণস্বরূপ, aptitudeযোগ্য প্যাকেজগুলি স্বয়ংক্রিয়ভাবে মুছে ফেলা হবে, যখন এটি করার apt-getজন্য একটি পৃথক কমান্ড প্রয়োজন। তবে, শেষ পর্যন্ত, কমপক্ষে একই sudo aptitude install packageName.debহওয়া উচিত । এখানে এবং সেখানে সূক্ষ্ম পার্থক্য থাকতে পারে যে সম্পর্কে আমি জানি না, তবে তারা উভয়ই নির্ভরতা সন্ধান করবে এবং সমস্ত জিনিসগুলি করবে। এবং এর মধ্যে পার্থক্য সম্পর্কে আরও তথ্যের জন্য আপনি উত্তরটি এখানে পড়তে পারেন ।sudo apt-get install packageName.debaptitudeapt-get

এছাড়াও, aptitudeসুপার গাওয়ার শক্তি নেই।

সম্পাদনা: স্পষ্টতই, এটি হয়। aptitude -v[v[v[v[v]]]] moo

aptitudeডিফল্টরূপে ইনস্টল করা নাও হতে পারে। এটি ইনস্টল করতে, এটি করুন sudo apt-get install aptitudeবা ক্লিক করুন: প্রবণতাপ্রবণতা ইনস্টল করুন


অতিরিক্ত

নিম্নলিখিত তথ্যগুলি সত্যই সরাসরি উত্তর দেয় না " ডিপিকিজি এবং অ্যাপটিচিউড / অ্যাপটিউডের মধ্যে পার্থক্য কী? " তবে এটি বড় চিত্রটিতে অবদান রাখে।


থেকে কার্লোস Campderrós ' নিচের মন্তব্য :

gdebiআর একটি সরঞ্জাম যা এর মধ্যে apt-getএবং এর মধ্যে একটি মিশ্রণ aptitude। আপনি যখন এটি কোনও .debপ্যাকেজ ইনস্টল করতে ব্যবহার করেন ( gdebi packageName.deb) এটি অনুপস্থিত নির্ভরতাগুলি সনাক্ত করে apt-get, তাদের ব্যবহার করে ইনস্টল করবে এবং শেষে প্যাকেজটি ব্যবহার করে ইনস্টল ও কনফিগার করবে dpkg। এমনকি এটিতে একটি সহজ এবং ঝরঝরে জিইউআই রয়েছে যা আপনাকে.deb প্যাকেজ, প্যাকেজের অন্তর্ভুক্ত ফাইলগুলি এবং কী নির্ভরতা ইনস্টল করতে হবে সে সম্পর্কে তথ্য দেয় । এই জিইউআই দেখতে, আপনি করবেন gdebi-gtk packageName.deb। আপনি gdebiএটি দিয়ে ইনস্টল করে চেষ্টা করতে পারেন sudo apt-get install gdebiবা এটিতে ক্লিক করুন: gdebiGdebi ইনস্টল করুন


আমি কাউকে বিভ্রান্ত করতে চাই না, তবে কেবল আপনাকে ছবির আরও একটি অংশ দিতে, আরপিএম নামে আরও একটি জনপ্রিয় লিনাক্স প্যাকেজ ফর্ম্যাট রয়েছে এবং এর ফাইলগুলির .rpmএক্সটেনশন রয়েছে। এই প্যাকেজ বিন্যাসটি আরপিএম-ভিত্তিক লিনাক্স বিতরণে ব্যবহৃত হয় (যেমন রেড হ্যাট, সেন্টোস এবং ফেডোরা)। তারা rpmএকটি প্যাকেজ ইনস্টল করতে কমান্ডটি ব্যবহার করে এবং yumএটির জন্য প্রান্ত-প্রান্ত এটি চালাক। সুতরাং তাদের .rpmফাইলগুলি আমাদের .debফাইলগুলি, তাদের rpmসরঞ্জামটি আমাদের dpkgসরঞ্জাম এবং সেগুলি yumআমাদের apt-get

থেকে ধান শুরু Landau এর নিচের মন্তব্য :

alienএকটি টুল যা মধ্যবর্তী পরিবর্তিত হয় .rpmএবং .debপ্যাকেজ। সুতরাং আপনি যদি কখনও এমন কোনও পরিস্থিতিতে পড়ে যান যেখানে আপনার কোনও .rpmপ্যাকেজ রয়েছে এবং আপনি আপনার উবুন্টুতে (বা অন্য কোনও ডেবিয়ান-ভিত্তিক ডিস্ট্রো) ইনস্টল করতে চান তবে আপনি কমান্ডটি alien rpm_packageName.rpmএটিকে রূপান্তর করতে পারেন .debএবং তারপরে এটি ব্যবহার করে ইনস্টল করতে পারেন dpkg। আপনি বিপরীত কি করতে পারেন (রূপান্তর .debকরতে .rpmব্যবহার করে) alien -r packageName.deb


5
এটি খুব দরকারী ছিল এবং ঠিক আমি যা খুঁজছিলাম। TX!
অনিকেত ঠাকুর

4
এছাড়াও, আপনি gdebi( apt-get install gdebi-core) মিশ্রিত apt-get/ aptitudeসাথে ব্যবহার করতে পারেন dpkg। আপনি এটির সাথে কল করেছেন gdebi some_package.debএবং এটি এর নির্ভরতাগুলি বিশ্লেষণ করবে, নিখোঁজগুলি apt-getইনস্টল করার জন্য কল করবে এবং সমস্ত নির্ভরতা শেষ হয়ে গেলে, dpkgঅবশেষে আপনার প্যাকেজটি ইনস্টল করার জন্য কল করুন ।
কার্লোস ক্যাম্পাদ্রেস

2
আলা অতিরিক্ত অতিরিক্ত , আপনি উল্লেখ করতে পারেন যে alienপ্যাকেজগুলিকে .rpmএবং এর মধ্যে রূপান্তর করে .deb। এটি আরপিএমের জন্য উপলব্ধ প্যাকেজগুলির জন্য দরকারী তবে ডিইবি (বা তদ্বিপরীত) এর জন্য নয়। উদাহরণস্বরূপ, alien packagename.rpmউবুন্টুর জন্য এটি ব্যবহারযোগ্য করে তোলা।
ধানের ল্যান্ডাউ

1
@ আলাআলি এর aptitudeপক্ষে অগ্রভাগ নয় apt-getউভয় প্রোগ্রাম libapt-pkgলাইব্রেরির সম্মুখভাগ ।
এলিয়াহ কাগন

1
@edwardtorvalds AskUbuntu একটি প্রশ্নোত্তর সাইট। হাজার হাজার পুরানো প্রশ্ন থেকে এখানে আপনার উত্তর অনুসন্ধান করুন এবং আপনি যদি এটি খুঁজে না পান তবে আপনার নিজের প্রশ্ন জিজ্ঞাসা করুন, আমার চেয়ে আরও অভিজ্ঞ ব্যক্তিরা আশাবাদী উত্তরও দেবেন।
আলা আলী

5

apt-get

প্যাকেজ পরিচালনার মাধ্যমে ফাইলটি apt-getহাতে-হাতে চলে /etc/apt/sources.list

apt-get install <package_name> আপনার কম্পিউটারে একটি নতুন প্যাকেজ ইনস্টল করে।

apt-get build-dep <package_name> এই কমান্ডটি সংগ্রহস্থলগুলি অনুসন্ধান করে এবং এর জন্য বিল্ড নির্ভরতা ইনস্টল করে। প্যাকেজটি যদি সংগ্রহস্থলগুলিতে না থাকে তবে এটি একটি ত্রুটি ফিরিয়ে দেবে।

apt-get install <package1_name> <package2_name> <package3_name> apt-get একাধিক প্যাকেজ ইনস্টলেশন অনুমতি দেয়। একটি স্থানের সাথে প্যাকেজগুলি পৃথক করুন।

auto-apt run <command_string> যখন অনুরোধ করা হয়, অটো-অ্যাপ্ট কমান্ডটি ফাইল অ্যাক্সেস হারিয়ে যাওয়ার পরে প্যাকেজগুলি স্বয়ংক্রিয়ভাবে ইনস্টল করে। যদি কোনও প্রোগ্রাম একটি আনইনস্টল হওয়া প্যাকেজের সাথে সম্পর্কিত বলে পরিচিত কোনও ফাইল অ্যাক্সেস করার চেষ্টা করে তবে স্বয়ংক্রিয়-অ্যাপ্লিকেশন সেই প্যাকেজটি ব্যবহার করে ইনস্টল করবে apt-get। এই বৈশিষ্ট্যটির কাজ করার জন্য উপযুক্ত এবং সুডো প্রয়োজন।

অ্যাপটি-গিটার নির্দেশিকা পৃষ্ঠা দেখুন

প্রবণতা

aptitudeএর কার্যকারিতা dselectএবং apt-getসেই সাথে অনেকগুলি অতিরিক্ত বৈশিষ্ট্য উভয়ই প্রোগ্রামে পাওয়া যায় না।

aptitude একটি নিজস্ব শেল রয়েছে যা কীবোর্ড বা মাউস সক্রিয় এবং একটি টার্মিনাল উইন্ডোতে চালিত হয়

aptitude build-dep <package> - প্যাকেজগুলির বিল্ড-নির্ভরতা ইনস্টল করুন - যার অর্থ প্যাকেজগুলির উত্স প্যাকেজটি সংকলন করতে (বা বিল্ড করা ) প্রয়োজন । উদাহরণস্বরূপ, অনেক প্যাকেজ দরকার debhelperবা autotoolsতৈরি করা দরকার, তবে তাদের চালানোর দরকার নেই।

প্রবণতা নির্দেশ পৃষ্ঠাটি দেখুন

dpkg

ডেবিয়ান প্যাকেজ ইনস্টল, বিল্ড, অপসারণ এবং পরিচালনা করার একটি সরঞ্জাম। লিংক

dpkg -i <package.deb>আপনার কম্পিউটারে একটি ডেবিয়ান প্যাকেজ ইনস্টল করে। সহায়তা ফাইলগুলি থেকে আমি যতটা খুঁজে পেতে পারি এটি কোনও নির্ভরতা ইনস্টল করে না।

বিশদগুলির dpkg --helpজন্য একটি টার্মিনাল উইন্ডোতে টাইপ করুন ।

নির্দেশিকা

ফাইল পরিচালনার জন্য একটি গাইড এখানে পাওয়া যাবে


0

আমি মনে করি সবচেয়ে গুরুত্বপূর্ণ জিনিসটি এবং একটি পার্থক্যটিও লক্ষ্য করা যায় যে apt-getপ্যাকেজ ইনস্টল করার জন্য আপনার সরঞ্জামটি ব্যবহার করা উচিত । ( aptবা aptitudeপাশাপাশি ভাল)।

এর কারণ dpkgহ'ল নির্ভর প্যাকেজ ইনস্টল না করে প্যাকেজ ইনস্টল করা। যেহেতু কেবলমাত্র একটি প্যাকেজ ইনস্টল করার dpkgপরে, পরে সমস্যা হতে পারে যেখানে নির্ভরতা রেজোলিউশনটি একটি ভাঙা সিস্টেমের সাথে শেষ হতে পারে।

প্যাকেজ ইনস্টল করার জন্য আপনার কমান্ড লাইন apt-getবা apt(১৪.০৪ থেকে) সরঞ্জামটি ব্যবহার করা উচিত । এই সরঞ্জামগুলি আপনার জন্য ব্যবহার dpkgকরছে এবং একই সাথে অভ্যন্তরের নির্ভরতা সমাধানের ব্যবস্থাও রয়েছে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.