আপনাকে https://wiki.debian.org/Package এ একবার নজর দেওয়া দরকার - সেখানকার প্যাকেজিং টিউটোরিয়াল আপনাকে আরও অনেক সহায়তা করবে, পাশাপাশি নতুন রক্ষণাবেক্ষণকারীদের গাইডের অংশগুলি।
আপনার প্রশ্ন হিসাবে, ক্রম:
সংগ্রহস্থলটিতে "তালিকা" ফাইল রয়েছে। উদাহরণস্বরূপ, http://http.us.debian.org/debian/dists/stretch/main/binary-amd64/Packages.xz । apt-get updateএই তালিকা ফাইলগুলি ডাউনলোড করে এবং সেগুলিতে সঞ্চয় করে /var/lib/apt/lists। তালিকা ফাইলগুলি .deb এ খুঁজে পেতে একটি গুচ্ছ মেটাডাটা এবং একটি সম্পর্কিত URL সহ সমস্ত প্যাকেজ তালিকা করে। (এগুলি হ'ল মানব-পঠনযোগ্য সরল-পাঠ্য ফাইল, যাতে আপনি কেবল এটি দেখতে পারেন)।
ওএস কিছু যায় আসে না। আপনি চাইলে উইন্ডোতে এটি হোস্ট করতে পারেন। (ভাল, উইন্ডোজ পছন্দ করে না এমন ফাইলের নামগুলির সাথে আপনার সমস্যা হতে পারে)) (আরও দেখুন # 4 এবং # 5)।
হ্যাঁ, এটি ডেব ফাইলের অভ্যন্তরে। একটি দেব ফাইল আসলে একটি সংরক্ষণাগার (ব্যবহার করে ar)। ভিতরে কিছু টার ফাইল রয়েছে; এর মধ্যে একটি (মূলত) এ উত্তোলিত হয়েছে /।
এটি কেবল এইচটিটিপি (বা এইচটিটিপিএস, বা এফটিপি, বা ... এপটি-গেইন প্রচুর প্রোটোকল সমর্থন করে)। বিশেষ কিছু না, যদিও। নোট করুন যে এখানে জিপিজি সহ স্বাক্ষরিত রিলিজ ফাইল রয়েছে, যা এমনকি ডাব্লু / ও এইচটিটিপিএসের সত্যতা গ্যারান্টি দেয়। ডেবিয়ান মিররগুলি বেশিরভাগ HTTP ব্যবহার করে না, HTTP ব্যবহার করে। (গোপনীয়তার জন্য কয়েকটি এইচটিটিপিএস সমর্থন করে)।
এটি কেবল একটি কাঠামোগত ফাইল সিস্টেম।
প্যাকেজ উত্সের সাথে কীভাবে অ্যাপটি-ইন্টারেক্ট হয় তার একটি দ্রুত, উচ্চ-স্তরের ওভারভিউ:
আপনার উত্স.লিস্ট ফাইলটিতে কোন উত্সগুলি দেখতে হবে তা আপনি কনফিগার করেন। এর মতো একটি লাইন বিবেচনা করুন:
deb http://http.us.debian.org/debian/ stretch main
debবলে যে এটি .deb (বাইনারি) ফাইলগুলি পাওয়ার জন্য একটি উত্স; তারপরে URL- উপসর্গ, স্যুট / রিলিজ ("প্রসারিত") এবং উপাদান ("প্রধান") রয়েছে।
apt-get আর্কিটেকচারের একটি তালিকা রয়েছে, এটি ডিপিকেজি থেকে পাওয়া যায়। আসুন বলে dpkg --print-architectureহয় amd64। apt-get এখন ইউআরএল-উপসর্গ, "ডিসটস" শব্দটি, স্যুট, উপাদান এবং আর্কিটেকচারের সংমিশ্রণ করে এটি থেকে ডাউনলোড করা URL গুলি তৈরি করতে পারে। তারপরে এটি "প্যাকেজস.এক্সজেড" এর মতো কয়েকটি স্থির ফাইলের নাম ব্যবহার করে। এটি উপরের ইউআরএল দেয় (# 1 এ)। সংজ্ঞায়িত নাম / পাথ সহ আরও কয়েকটি ফাইল রয়েছে যেমন রিলিজ ফাইল http://http.us.debian.org/debian/dists/stretch/ রিলেজ এবং এর স্বাক্ষর (একই, .gpg সংযুক্ত সহ)। এগুলি হ'ল সমস্ত (সম্ভবত সংক্রামিত) প্লেইন-পাঠ্য ফাইল। রিলিজ ফাইলে প্যাকেজস.এক্সজেড-এর মতো অ্যাপ্লিকেশন-র অন্যান্য ফাইলগুলির ডাউনলোডের জন্য চেকসাম রয়েছে।
প্যাকেজস.এক্সজেড ফাইলটি সেই স্যুট / কোডনাম / আর্কিটেকচারের সমস্ত প্যাকেজ তালিকাভুক্ত করে। এছাড়া দেয় পথ যেখানে যে ফাইল অবস্থিত; উদাহরণস্বরূপ pool/main/0/0ad/0ad_0.0.21-2_amd64.deb।
আপনি যখন কোনও প্যাকেজ ডাউনলোড করতে অ্যাপট-গেটকে জিজ্ঞাসা করেন, এটি প্যাকেজটি ডাউনলোড করতে সেই অবস্থানটি + বেস URL ব্যবহার করে, যাতে সেই প্যাকেজটি http://http.us.debian.org/debian/pool/main/0/0ad এ থাকে /0ad_0.0.21-2_amd64.deb
অন্য আকর্ষণীয় ডিরেক্টরি sourceপরিবর্তে হয় binary-amd64। এটি আপনার deb-srcপ্রবেশের জন্য ব্যবহৃত হয় ; এটিতে উত্স প্যাকেজগুলি সম্পর্কে তথ্য রয়েছে (এবং অন্যথায় মোটামুটি একই রকম)।
আরও কিছু জিনিস রয়েছে (এগুলি সবই optionচ্ছিক, আমি বিশ্বাস করি) যা ভাণ্ডারের অংশ হতে পারে (যেমন, HTTP- র মাধ্যমে উপলব্ধ): প্যাকেজস.এক্সজেড ফাইলের বিভিন্ন সংস্করণের মধ্যে পার্থক্য রয়েছে; প্যাকেজ বিবরণীর অনুবাদ, প্রতিটি ইনস্টলযোগ্য ফাইল এবং এটি কোন প্যাকেজের অন্তর্গত (কনটেন্টস- amd64.gz, উদাহরণস্বরূপ ব্যবহৃত, অ্যাপট-ফাইল, অ্যাপটি-গেট দ্বারা নয়) সম্পর্কিত একটি সম্পূর্ণ তালিকা ইত্যাদি etc. সম্ভবত আপনার সাথে প্রাসঙ্গিক নয়, তবে আপনি http://http.us.debian.org/debian/dists/stretch/ এর আশেপাশে ব্রাউজ করে এগুলি দেখতে পাচ্ছেন ; তাদের বেশিরভাগ হ'ল প্লেইন-টেক্সট ফাইল।
এই সমস্ত ফাইল সরল পাঠ্য। তারা, তাত্ত্বিকভাবে, হাতে তৈরি করা যেতে পারে। অনুশীলনে, প্রত্যেকে এইগুলির মধ্যে একটি সংগ্রহস্থল তৈরির সরঞ্জাম ব্যবহার করে । এখানে — এবং আমি সতর্ক করে দিচ্ছি যে এটি একটি পছন্দ ছিল অনেক আগে, এই সরঞ্জামগুলির আউটপুট হ'ল সাধারণ ফাইল বা, সবচেয়ে খারাপভাবে সিমলিংক। আপনি যে কোনও ওয়েব সার্ভারটি চান সেগুলিতে আপনি এগুলিকে সংযুক্ত করতে পারেন।