উত্তর:
উবুন্টুতে দুটি জিনিস রয়েছে (এবং ডেবিয়ানে, উবুন্টু ভিত্তিক) যা সাধারণত "প্যাকেজ ম্যানেজার" নামে পরিচিত: dpkg
এবং এপিটি।
dpkg
এমন একটি প্রোগ্রাম যা প্যাকেজ ইনস্টল করে এবং অপসারণ করে এবং কোন সংস্করণে প্যাকেজ ইনস্টল করা হয় তার একটি ডাটাবেস বজায় রাখে। যখন এটি প্যাকেজ ইনস্টল করে, .deb
সংরক্ষণাগার ফাইল থেকে এটি করে । এই সংরক্ষণাগারগুলি প্যাকেজগুলি বিতরণ করার উপায়।
dpkg
ফাইলগুলি অনুলিপি (বা মুছুন) এর চেয়ে বেশি করে এবং এটির ডাটাবেস আপডেট করে - এটি ইনস্টলেশন স্ক্রিপ্ট এবং অপসারণ স্ক্রিপ্টগুলিও চালাবে। এটি বেশ পরিশীলিত হিসাবে বিবেচিত হতে পারে। তবে এটি যা করবে না তা হ'ল প্যাকেজগুলি সন্ধান এবং ডাউনলোড করা।
এপিটি প্যাকেজগুলি সন্ধান করে এবং ডাউনলোড করে dpkg
এবং এগুলি ইনস্টল, আপগ্রেড এবং মুছে ফেলার জন্য যথাযথভাবে চলে । এপিটি আসলে কোনও একক সফ্টওয়্যার নয়, যদিও এমন একটি উপযুক্ত প্যাকেজ রয়েছে যা এর প্রয়োজনীয় অংশগুলি সরবরাহ করে।
এপিটি-তে একটি লাইব্রেরি ( লিব্যাপ্ট-পিকেজি ) অন্তর্ভুক্ত রয়েছে যা বিভিন্ন সরঞ্জাম দ্বারা অ্যাক্সেস করা মূল কার্যকারিতা সরবরাহ করে। এই ধরনের কিছু সরঞ্জাম, মত apt-get
, এছাড়াও দ্বারা উপলব্ধ করা হয় কার্যক্ষম প্যাকেজ। অন্যান্য সরঞ্জাম পৃথকভাবে ইনস্টল করা হয়। এপিটি বিভিন্ন কনফিগারেশন ফাইলও সরবরাহ করে যা কীভাবে এটির মূল গ্রন্থাগার, এবং যে প্রোগ্রামগুলি এটি ব্যবহার করে, কাজ করে তা নিয়ন্ত্রণ করে।
এ ছাড়া, এপিটি একটি হল সিস্টেম কি সফ্টওয়্যার উৎস সংস্করণ, এবং স্বয়ংক্রিয়ভাবে ইনস্টল এবং আপগ্রেড প্যাকেজ মত প্যাকেজ পরিচালনার কর্ম সঞ্চালন করার জন্য আপনি ওই ডেটার উপর অভিনয় জন্য কি কি প্যাকেজ প্রদান সম্পর্কে সংরক্ষণকারী এবং তথ্য পুনরুদ্ধারের জন্য। এর মধ্যে অন্যান্য প্যাকেজগুলির কাজ করার জন্য কী প্যাকেজগুলি প্রয়োজন তা ট্র্যাক করা এবং স্বয়ংক্রিয়ভাবে এই নির্ভরতাগুলি পূরণ করার জন্য উপযুক্ত প্যাকেজগুলি বাছাই এবং ইনস্টল করা অন্তর্ভুক্ত।
উদাহরণস্বরূপ, আমি যখন চকোলেট-ডুম প্যাকেজটি apt-get
ইনস্টল করার জন্য ইউটিলিটিটি বলি , এটি কাজ করার জন্য অন্যান্য প্যাকেজগুলি কী ইনস্টল করতে হবে তা নির্ধারণ করে এবং স্বয়ংক্রিয়ভাবে সেগুলি পুনরুদ্ধার এবং ইনস্টলও করে:
$ sudo apt-get install chocolate-doom
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
doom-wad-shareware libmikmod3 libsdl-mixer1.2 libsdl-net1.2 libsdl1.2debian
Recommended packages:
doom-engine
The following NEW packages will be installed:
chocolate-doom doom-wad-shareware libmikmod3 libsdl-mixer1.2 libsdl-net1.2
libsdl1.2debian
0 upgraded, 6 newly installed, 0 to remove and 1 not upgraded.
Need to get 0 B/2,846 kB of archives.
After this operation, 8,626 kB of additional disk space will be used.
সফ্টওয়্যার সেন্টার, সফ্টওয়্যার আপডেটার / আপডেট ম্যানেজার, এবং সিনাপটিকের মতো গ্রাফিকাল সরঞ্জামগুলি এর মতোই কার্য সম্পাদন করে apt-get
। তারা এপিটি সিস্টেমটিও ব্যবহার করে - এর নিয়মগুলি পর্যবেক্ষণ করে এবং মূল গ্রন্থাগারগুলির দ্বারা সরবরাহিত কার্যকারিতা ব্যবহারের মাধ্যমে - কোন প্যাকেজ ইনস্টল করা হয়েছে তা পরিবর্তন করতে, ব্যবহারকারীকে কী (তিনি) সাধারণত চান তা দেওয়ার জন্য, এইভাবে (সাধারণত) কাজ চালিয়ে যান।
/var/cache/apt/archives
ফোল্ডারটি কখন এবং কখন ব্যবহৃত হয়যখন apt-get
, aptitude
, সফটওয়্যার সেন্টার , Synaptic , সফটওয়্যার আপডেটার / আপডেট ম্যানেজার , বা অন্য কোন প্যাকেজ ব্যবস্থাপনা উপযোগ ডাউনলোডসমূহ প্যাকেজ (এবং অন্যান্য প্যাকেজ তারা উপর নির্ভর করে) কনফিগার করা থেকে সফ্টওয়্যার উৎস এবং তাদের ইনস্টল, ডাউনলোড প্যাকেজ (অর্থাত, .deb সংরক্ষণাগার ফাইল যেগুলি থেকে তারা ইনস্টল করা আছে) এতে সঞ্চিত থাকে /var/cache/apt/archives
।
আপনার যদি ডিস্কে একটি .deb ফাইল থাকে এবং আপনি এটি ইনস্টল করেন dpkg
, এটি এর অনুলিপি তৈরি করার কারণ হবে না /var/cache/apt/archives
। কিন্তু যখন কোনও প্রোগ্রাম যা স্বয়ংক্রিয়ভাবে নির্ভরতা রেজোলিউশন এবং প্যাকেজ পুনরুদ্ধার ডাউনলোড প্যাকেজগুলির এপিটি সিস্টেম ব্যবহার করে বা প্রয়োগ করে , সেখানে সেগুলি সংরক্ষণ করে।
স্বয়ংক্রিয়ভাবে ডাউনলোড হওয়া প্যাকেজগুলির জন্য .deb ফাইলগুলি সংরক্ষণ করা এবং থেকে ইনস্টল থাকা অবস্থায় /var/cache/apt/archives
সেগুলি সরাসরি সেই জায়গায় সরাসরি ডাউনলোড হয় না। পরিবর্তে, অসম্পূর্ণ (অর্থাত, প্রগতিতে) .দেব ফাইল ডাউনলোডগুলি বিদ্যমান /var/cache/apt/archives/partial
এবং তারপরে /var/cache/apt/archives
শেষ হয়ে গেলে তা স্থানান্তরিত হয় ।
.deb প্যাকেজ ফাইলগুলি /var/cache/apt/archives
ভবিষ্যতে ব্যবহারের জন্য প্রয়োজনীয় প্রয়োজনে সফল ইনস্টলেশন পরেও ক্যাশে থাকে । তবে আপনি নিরাপদে .deb ফাইলগুলি সরাতে পারেন যা যথেষ্ট পুরানো তাদের আবার প্রয়োজনের সম্ভাবনা নেই sudo apt-get autoclean
, বা ক্যাশেড .deb
ফাইলগুলি সম্পূর্ণরূপে সাফ করে দিতে পারেন sudo apt-get clean
। দেখুন man apt-get
আরও তথ্যের জন্য।
এর sudo apt-get autoclean
অনুরূপ কমান্ডের ক্রিয়াকলাপটি চিত্রিত করার পাশাপাশি আপনি সেগুলি চালনা করতে চান কিনা তা নির্ধারণ করতে আপনি পতাকা নিয়ে চালিয়ে তাদের ক্রিয়াকলাপ অনুকরণ করতে পারেন -s
। এটা তোলে এই ফ্ল্যাগ পাস সেরা সামনেautoclean
(অথবা যাই হোক না কেন অন্যান্য) কর্ম ক্রিয়া। এটি sudo
ব্যবহার করার সাথে সাথে রুট হিসাবে কোনও ইউটিলিটি চালানো সাধারণত প্রয়োজন হয় না -s
, কারণ কোনও আসল পরিবর্তন করা হচ্ছে না।
উদাহরণস্বরূপ, আমার সিস্টেমে:
$ apt-get -s autoclean
NOTE: This is only a simulation!
apt-get needs root privileges for real execution.
Keep also in mind that locking is deactivated,
so don't depend on the relevance to the real current situation!
Reading package lists... Done
Building dependency tree
Reading state information... Done
Del libubsan0 4.9.1-15ubuntu1 [83.7 kB]
Del cups-server-common 1.7.5-3 [519 kB]
Del python2.7 2.7.8-9 [205 kB]
Del g++-4.9 4.9.1-15ubuntu1 [17.4 MB]
Del libstdc++-4.9-dev 4.9.1-15ubuntu1 [1,121 kB]
....
তালিকাভুক্ত প্যাকেজগুলি আনইনস্টল করা হবে না ; পরিবর্তে, কেবল ক্যাশেড .deb ফাইল মুছে ফেলা হবে। (আসলে আমি যখন সেই আদেশটি চালিয়েছিলাম তখন তেমন কিছুই ঘটেনি, কারণ এটি নিছক একটি অনুকরণ ছিল।)
dpkg
(এপিটি বা অন্যথায়) এর মাধ্যমে ইনস্টল করা সফ্টওয়্যার আসলে এটি সরবরাহ করে .deb ফাইল থেকে চালিত হয় না। পটভূমি তথ্য বিভাগে উল্লিখিত হিসাবে , .deb ফাইলগুলি বের করা হয়। এ কারণেই এগুলি সরানো যায় এবং ইনস্টল করা প্যাকেজটি কাজ চালিয়ে যায়।
.Deb প্যাকেজগুলি থেকে ইনস্টল করা সমস্ত সিস্টেম জুড়ে থাকা ফাইলগুলি তাদের বর্তমান অবস্থানে ডাউনলোড করা হয় না - পরিবর্তে, তাদের কাছে .deb ফাইলগুলি থেকে তাদের কাছে নেওয়া হয় যা তাদের সরবরাহ করে (বা সম্ভবত বিশেষত ইনস্টলেশনের সময় বা পরে তৈরি করা হয়েছিল, যেমনটি ঘটে থাকে) কিছু কনফিগারেশন ফাইলের জন্য)।
কিন্তু .deb ফাইলগুলি কেবল প্যাকেজ পরিচালন ইউটিলিটিগুলি দ্বারা ডাউনলোড করা ফাইল নয়। প্রায়শই অন্যান্য ফাইলগুলি ডাউনলোড হয় যা প্যাকেজগুলির উপস্থিতি সম্পর্কে তথ্য সরবরাহ করে।
উদাহরণস্বরূপ, আমি যখন চালনা করি sudo apt-get update
, আউটপুটটিতে লাইনগুলি অন্তর্ভুক্ত থাকে:
Get:13 http://us.archive.ubuntu.com utopic/main i386 Packages [1,341 kB]
এর অর্থ হ'ল http://us.archive.ubuntu.com/ubuntu/dists/utopic/main/binary-amd64/Packages.bz2 এর মতো একটি ফাইল ডাউনলোড এবং পরীক্ষা করা হয়েছিল যা প্যাকেজগুলি উপলভ্য রয়েছে সে সম্পর্কিত তথ্য সহ এপিটি ডাটাবেস আপডেট করতে সহায়তা করে ( এবং কোন সংস্করণে) সেই নির্দিষ্ট সফ্টওয়্যার উত্স থেকে। আপনি ডিরেক্টরিতে প্যাকেজ ফাইল এবং এই জাতীয় অন্যান্য ফাইলগুলি সন্ধান করতে পারেন /var/lib/apt/list
। সেখানে সংরক্ষিত অনুলিপিগুলিকে আলাদা আলাদা নাম দেওয়া হয় us.archive.ubuntu.com_ubuntu_dists_utopic_main_binary-amd64_Packages
, কারণ এ জাতীয় অনেকগুলি ফাইল থাকতে পারে।
আপনি apt-cache
বিশেষভাবে সম্পর্কে জিজ্ঞাসা করেছেন । এটি প্যাকেজ ডাটাবেসের অনুসন্ধান করে তবে এটি সিস্টেমে কোনও পরিবর্তন করে না বা কোনও ফাইল ডাউনলোড করে না।
যখন উবুন্টু সফটওয়্যার সেন্টার তার নিজস্ব ব্যবহারের জন্য ডেটা ডাউনলোড করে, এটি নির্দিষ্ট করে এবং সাধারণ এপিটি (বা dpkg
) কার্যকারিতা সম্পর্কিত নয়, তখন এটি সেগুলিতে সংরক্ষণ করে /var/cache/software-center
।
উদাহরণস্বরূপ, আমার সিস্টেমে (এবং বেশিরভাগ সিস্টেমে), সেই ফোল্ডারে একটি xapian
সাবফোল্ডার রয়েছে :
ek@Ilex:/var/cache/software-center/xapian$ ls
flintlock postlist.baseB record.baseB spelling.baseB termlist.baseB
iamchert postlist.DB record.DB spelling.DB termlist.DB
postlist.baseA record.baseA spelling.baseA termlist.baseA
সফটওয়্যার সেন্টার দ্রুত অনুসন্ধানের জন্য ইনডেক্সের তথ্যগুলিতে জ্যাপিয়ান ব্যবহার করে ।
কিছু অতিরিক্ত ইউটিলিটিগুলি যা এপিটি সিস্টেমের সাথে কাজ করে তাদের অপারেশনের অংশ হিসাবে ফাইলগুলি ডাউনলোড করে সঞ্চয় করে। apt-file
উবুন্টুতে ডিফল্টরূপে ইনস্টল করা হয় নি তবে এটিপি-ফাইল প্যাকেজ থেকে ইনস্টল করা হতে পারে ।
apt-file
কোন প্যাকেজগুলির মাধ্যমে কোন ফাইলগুলি সরবরাহ করা হয় সে সম্পর্কিত তথ্য সংরক্ষণ করে (এমনকি স্থানীয়ভাবে ইনস্টল না করা প্যাকেজগুলির জন্যও)। এটি সংকোচিত Contents
ফাইলগুলি ডাউনলোড করে প্যাকেজগুলির সামগ্রীগুলির জন্য এই তথ্যটি অর্জন করে:
$ sudo apt-file update
Downloading complete file http://us.archive.ubuntu.com/ubuntu/dists/utopic/Contents-amd64.gz
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 29.6M 100 29.6M 0 0 856k 0 0:00:35 0:00:35 --:--:-- 832k
যখন apt-file update
রুট হিসাবে চালানো হবে (উপরে হিসাবে), এই ফাইলগুলি /var/cache/apt/apt-file
ডিরেক্টরিতে ডাউনলোড করা হয় । এটি আবিষ্কার করতে, আমি দৌড়েছি:
$ sudo updatedb
$ locate Contents-amd64
/var/cache/apt/apt-file/us.archive.ubuntu.com_ubuntu_dists_utopic-proposed_Contents-amd64.gz
/var/cache/apt/apt-file/us.archive.ubuntu.com_ubuntu_dists_utopic_Contents-amd64.gz
নোট করুন যে এই পোস্টে প্রদত্ত তথ্যগুলি উবুন্টুতে প্যাকেজ পরিচালন ইউটিলিটিগুলি দ্বারা ডাউনলোড করা এবং সংরক্ষণ করা ডেটা ফাইলের বেশ কয়েকটি উদাহরণ দেয় তবে এ জাতীয় ফাইলগুলি ব্যবহৃত এবং সংরক্ষণ করা উদাহরণগুলির একটি বিস্তৃত তালিকা হিসাবে বিবেচনা করা উচিত নয়।
apt-cache
অথবা / এবংapt-file
এছাড়াও অনেক কিছু ডাউনলোড? যদি হ্যাঁ, তারা কোথায়?