প্যাকেজগুলির নির্দিষ্ট সংস্করণ স্থাপন করা সম্ভব, কোন প্রধান প্যাকেজ নির্ভর করে?


10

আমাদের ফ্রিবিএসডি 10.3 তে বিকাশের পরিবেশ রয়েছে। আমি শুনেছি যে ফ্রিবিএসডি প্যাকেজ নির্ভরতাগুলি সেভাবে পরিচালনা করে, এটি সর্বদা সমস্ত প্যাকেজের নতুন সংস্করণ সন্ধান করে, যা মূল প্যাকেজ নির্ভর করে। এবং এটি সত্য বলে মনে হচ্ছে। সুতরাং, আমার প্রশ্নগুলি হ'ল:

  1. এটা কি সত্য? এটি প্রমাণিত কোন অফিসিয়াল নথি আছে?
  2. কীভাবে এই সমস্যাটি কাটিয়ে উঠবেন সেরা উপায়?

7
আমার সন্দেহ, আপনি প্রথমে প্রয়োজনীয় সংস্করণটির প্যাকেজ ইনস্টল করতে পারেন, তারপরে pkg lockএটি এবং তারপরে আপনি যা চান তার সব কিছু ইনস্টল করতে পারেন।
প্রচারিত

1
আপনি কোন পোর্ট / প্যাকেজটি চান এবং কোন সংস্করণে এটি নির্ভর করে। উদাহরণস্বরূপ আপনার বিভিন্ন পাইথন / পোস্টগ্র্যাসকিএল / পিএইচপি সংস্করণ থাকতে পারে। কখনও কখনও একটি সফ্টওয়্যার জন্য একাধিক প্যাকেজ উপলব্ধ আছে, কখনও কখনও আপনি বন্দর থেকে আপনার বিশেষ প্যাকেজ তৈরি করতে পারেন।
রাফেল আহরেন্স

3
যদি আপনি অন্ধভাবে ফ্রিবিএসডি আপডেটগুলি (বা পিকেজি আপগ্রেড) চালনা করেন তবে হ্যাঁ, এটি এটি করতে পারেন এমন নতুনটি খুঁজে পাবেন এবং এটি ইনস্টল করার চেষ্টা করবেন। যেমনটি বলা হয়েছে, এখন (৯.২ বা তার পরে), আপনি পিকেজি লক <pkg> করতে পারেন যা আপনার ইনস্টল করা কি এবং এর নির্ভরতাগুলি পরিবর্তন থেকে রক্ষা করা উচিত। YMMV।
চতুর্মুখী

উত্তর:


1

কীভাবে ফ্রিবিএসডি প্যাকেজ তৈরি করে

ফ্রিবিএসডি প্রকল্পটি কেবল প্রকাশের জন্য এবং মাঝে মাঝে স্ট্যাবল শাখার জন্য প্যাকেজগুলি তৈরি করতে ব্যবহৃত হত। পুরানো প্যাকেজ বিল্ডাররা পোর্টবিল্ড নামে একটি বিতরণ সিস্টেম ব্যবহার করেছিলেন। এটি প্যাকেজগুলি তৈরি করতে আরও ছোট 2GB-4GB মেশিনের বৃহত ক্লাস্টার ব্যবহার করবে। এটি ত্রুটি-প্রবণ এবং ধীর ছিল, বেশিরভাগ পুরানো মেশিনগুলির কারণে। পুরো বিল্ডটি এখনও এক সপ্তাহ সময় নিতে পারে। আজ প্যাকেজগুলি পড্রিয়ার ব্যবহার করে একক বৃহত মেশিন ব্যবহার করে নির্মিত হয়েছে। ( ব্রায়ান ড্রুইয়ের ওয়েবপেজ থেকে )।

আরও দেখুন: ফ্রিবিএসডি-তে প্যাকেজ এবং পোর্টগুলির মিশ্রণ কীভাবে আপডেট করবেন

ফ্রিবিএসডি-তে সোলারিস এবং উইন্ডোজের মতো একটি বিবর্তিত এবিআই (এবং এপিআই) রয়েছে যখন লিনাক্সের একটি স্থিতিশীল (স্থির?) এবিআই (এবং এপিআই) রয়েছে তাই লিনাক্সের সাথে পুরানো বাইনারিগুলি এখনও একটি নতুন ওএস সংস্করণে চলবে, যদিও লিনাক্সবিহীন ওএসগুলির সাথে এই আইসন নয় ' t সবসময় কেস (কখনও কখনও এটি হয়)।

ব্যবহার pkg lockএখনও করতে পারেন মাথাব্যাথা হতে যখন এটি করবে লক (একটি সতর্কবার্তা অফার) যখন আপনি ব্যবহার আপগ্রেড করার চেষ্টা pkg upgradeএটি এখনও অনুমান করা হয়েছে যে উচ্চতর সংখ্যাযুক্ত সংস্করণ ভাল (কাম্য) এবং এটা কিছু আপনি কি করতে চাইবেন যে - তাই এটি অনুমতি জিজ্ঞেস করে, এবং আপনি অনুমতি দিতে পারেন, তবে এটির নিশ্চয়তা দেয় না যে অন্য কিছু ভঙ্গ হবে না। উপরের ইউআরএল বা এই আলোচনাটি দেখুন: " আপনি কি কোনও ওএস সংস্করণের জন্য পিকেজির মাধ্যমে বাইনারি প্যাকেজগুলির বিতরণ করা বাইনারি প্যাকেজগুলির সংস্করণগুলি লক করতে ফ্রিবিএসডি পছন্দ করবেন? " সংস্করণ

এক প্যাকেজ লক করা থাকে কখনও কখনও আপনি যখন হবে, এটি আনলক করে আপগ্রেড করার অনুমতি দিতে হবে কাজ (এবং তার সব নির্ভরতা) এক প্যাকেজের জন্য কোন নিশ্চয়তা যে অন্য কিছু নতুন লাইব্রেরি সঙ্গে বেমানান হবে না এর ( এবং এইভাবে এছাড়াও, একটি আপগ্রেড প্রয়োজন যদি বর্তমানে উপলব্ধ আছে)।

ব্রায়ান ড্রুয়েরির ব্লগ: " ফ্রিবিএসডি জার্নাল: পড্রিয়ার " মন্তব্য করেছে:

"আপনার সার্ভারে পোর্টমাস্টার, পোর্টআপগ্রেড এবং পোর্টগুলি ব্যবহার বন্ধ করুন এবং প্যাকেজগুলিতে স্যুইচ করুন।

আপনার নিজস্ব প্যাকেজ সেট আপ করতে পড্রিয়ারের সাথে কয়েক মিনিট সময় লাগে এবং ভবিষ্যতে আপনাকে অনেক সময় সাশ্রয় করতে পারে।

...

যদি আপনি একাধিক ফ্রিবিএসডি সিস্টেম বজায় রাখছেন এবং ইতিমধ্যে প্যাকেজগুলি ব্যবহার করছেন না, আপনার উচিত। আমি কেবল ২০ টি সার্ভার বজায় রেখেছি, তবে প্রতিটি সিস্টেমে বন্দর তৈরি করতে আমার প্রচুর সময় লেগেছিল এবং উত্পাদন মেশিনে সম্পদ নষ্ট হয়। একাধিক সার্ভারে পোর্ট তৈরি করার সময়, তাদের বিকল্পগুলি বা সংস্করণগুলি সিঙ্কের বাইরে পাওয়া খুব সহজ। একবারে একটি সিস্টেমে প্যাকেজ তৈরি করে আমি আমার সিস্টেমে বোঝা কমিয়ে দিয়েছি, আমার যে পরিমাণ কাজ করতে হয়েছিল তা কমিয়ে দিয়েছি এবং আমার সমস্ত সিস্টেমকে সামঞ্জস্যপূর্ণ করেছি। প্রতিটি সিস্টেমে একই ব্যর্থতা মোকাবেলা করার পরিবর্তে আমার কেবল এটি বিল্ড সিস্টেমে পরিচালনা করা দরকার।

কিন্তু, হিট ...

অফিসিয়াল প্যাকেজগুলি থেকে কেন নিজেকে বিচ্যুত করতে হবে? পোর্ট ফ্রেমওয়ার্কটি বিল্ড-টাইম কনফিগারেশন পরিবর্তন করতে পোর্টগুলির জন্য বিকল্পগুলির সহায়তা সরবরাহ করে। সমস্ত অ্যাপ্লিকেশন রান-টাইম কনফিগারেশন সমর্থন করে না। কোন বৈশিষ্ট্যগুলি সক্ষম করা হয়েছে তার উপর নির্ভর করে কিছু অ্যাপ্লিকেশনগুলিকে আলাদাভাবে সংকলন করতে হবে। অন্যের ডিফল্ট বন্দরটিতে বৈশিষ্ট্য এবং নির্ভরতা কমিয়ে আনার বিকল্প রয়েছে। সার্ভার প্রশাসকদের জন্য, এটি দ্রুত কিছু ডিফল্ট প্যাকেজগুলির প্রয়োজনীয়তা পূরণ করে না তা সন্ধান করতে পারে lead

তাই ...

কাস্টম প্যাকেজ পাওয়ার কয়েকটি উপায় রয়েছে। Pkg একাধিক সংগ্রহস্থল ব্যবহার করে সমর্থন করে। এটিকে অফিসিয়াল ফ্রিবিএসডি সংগ্রহস্থলটিকে প্রাথমিক হিসাবে এবং কাস্টমকে মাধ্যমিক হিসাবে ব্যবহার করতে সেট আপ করা যেতে পারে। Pkg এটি সংগ্রহ করতে পারে এমন সংখ্যার দ্বারা সীমাবদ্ধ নয় এবং অগ্রাধিকারের জন্য সেগুলি পুনরায় সাজানো যেতে পারে। একাধিক সংগ্রহস্থলগুলির সমস্যা হ'ল এটি বর্তমানে বজায় রাখা কঠিন হতে পারে। যখন পিকেজি সনাক্ত করে যে কোনও ইনস্টল করা প্যাকেজটি ট্র্যাক করছে এমন কোনও সংগ্রহস্থল থেকে বিভিন্ন বিকল্প বা নির্ভরতা রয়েছে, প্যাকেজটি সম্ভাব্য যে কোনও দূরবর্তী সংস্করণ থেকে পুনরায় ইনস্টল করা হবে। আপনি পিকেজি লক পিকেজিএনএম এবং পিকেজি আনলক করা পিকেজিএনএম দিয়ে আপগ্রেড করার সময় প্যাকেজটি লক করতে পারেন বা এটি পিকেজি এ্যানোটেট -এ পিকেজিএনএম-র সংগ্রহস্থল রেপোনামের সাথে একটি নির্দিষ্ট ভাণ্ডারে আবদ্ধ করতে পারেন। ফ্রিবিএসডি প্যাকেজগুলির সাথে আপনার কাস্টম সংগ্রহস্থলের জন্য পোর্ট গাছ রাখার সূক্ষ্ম সমস্যাও রয়েছে। যেহেতু প্যাকেজগুলি সপ্তাহে একবার পোর্টগুলি গাছের স্ন্যাপশট থেকে তৈরি করা হয়, যদি আপনার কাস্টম সংগ্রহস্থলটি এটি মেলে না তবে এটি বিবাদ সৃষ্টি করতে পারে। আপনার পছন্দসই বিকল্পগুলির সাথে আপনার যা প্রয়োজন কেবল তার একটি সম্পূর্ণ প্যাকেজ সেট তৈরি করা অনেক সহজ।

সমাধান:

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

পাউডিয়েরের সাহায্যে আপনার নিজস্ব সংগ্রহস্থল স্থাপনের ফলে পোর্টগুলির নমনীয়তা এবং প্যাকেজগুলির পরিচালনা সহজতর হয়।

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