
শক্তি ক্ষমতা লিনাক্সে প্রজননযোগ্য বিল্ড অফার করা স্বচ্ছতা এবং নিরাপত্তার একটি চিহ্ন যেখানে বিভিন্ন ডিস্ট্রিবিউশন বর্তমানে কাজ করছে এবং অন্যরা ইতিমধ্যেই অফার করছে।
এর গুরুত্ব এই সত্যের মধ্যেই নিহিত এটা করতে পারবেন উভয় বিকাশকারী, গবেষক এবং ব্যবহারকারী যাচাই করুন যে বিতরণ করা বাইনারি সঠিকভাবে তৈরি করা হয়েছে প্রদত্ত উত্স কোড থেকে এবং পরিবর্তন করা হয়নি।
একটু পরামর্শ করলেন লিনাক্স ডকুমেন্টেশন, আমরা বুঝতে পারি যে:
এটা সাধারনত বাঞ্ছনীয় যে একই সোর্স কোড একই সেট টুল দিয়ে তৈরি করা পুনরুৎপাদনযোগ্য, অর্থাৎ ফলাফল সবসময় ঠিক একই রকম হয়। এটি যাচাই করা সম্ভব করে যে বাইনারি ডিস্ট্রিবিউশন বা এমবেডেড সিস্টেমের জন্য নির্মাণ পরিকাঠামো বিকৃত করা হয়নি। এটি একটি উৎস বা টুল পরিবর্তনের ফলে বাইনারিগুলির সাথে কোন পার্থক্য করে না তা যাচাই করা সহজ করে তুলতে পারে।
এবং লিনাক্সের ক্ষেত্রে এবং সাধারণত সমস্ত ওপেন সোর্স সফ্টওয়্যার, পুনরুত্পাদনযোগ্য সংকলন সম্প্রদায়টি সফ্টওয়্যারটি যাচাই এবং নিরীক্ষা করতে পারে তা নিশ্চিত করার জন্য অপরিহার্য উপরন্তু, এটি আমাদের দূষিত পরিবর্তন সনাক্ত করতে অনুমতি দেয়।
openSUSE ফ্যাক্টরি এখন প্রজননযোগ্য বিট-বাই-বিট বিল্ড অফার করে
এ কথা উল্লেখ করার কারণ হলো প্রকল্পটি openSUSE বিট-বাই-বিট পুনরুত্পাদনযোগ্য বিল্ড-এর জন্য সমর্থন চালু করেছে আপনার ভাণ্ডার ওপেনসুএস কারখানা, যা openSUSE Tumbleweed বিতরণের ভিত্তি।
এই আপডেট বাইনারি বিতরণ করা নিশ্চিত করে প্যাকেজগুলিতে ধারাবাহিকভাবে উৎপন্ন হয় প্রদত্ত সোর্স কোড থেকে, লুকানো পরিবর্তনগুলি অন্তর্ভুক্ত না করে এবং যেমন আমরা উল্লেখ করেছি, এটি করার সুবিধা হল যে কোনও ব্যবহারকারী নিজের জন্য যাচাই করতে পারেন যে প্রস্তাবিত বিল্ডগুলি সোর্স কোডগুলি থেকে তৈরি করা বিল্ডগুলির সাথে হুবহু মিলে যায়৷
একটি সাম্প্রতিক উদাহরণ হল যে পুনরুত্পাদনযোগ্য বিল্ডগুলি প্রমাণ তৈরি করার অনুমতি দেয়, কেবলমাত্র ফলাফলের পুনর্নির্মাণ এবং তুলনা করে, যে একটি জিসিসি বিল্ড যার উত্স একটি প্রতিশ্রুতিবদ্ধ xz দিয়ে টানা হয়েছিল তা প্রতিশ্রুতিবদ্ধ ছিল না; এই প্রক্রিয়াটি রিভার্স ইঞ্জিনিয়ার করার প্রয়োজন ছাড়াই সম্পন্ন করা হয়েছিল কিভাবে আপস ঘটেছে। একইভাবে, xz সমঝোতার তদন্তের সময় পুনরুত্পাদনযোগ্য বিল্ডগুলি দরকারী বলে জানা গেছে
খেলার যোগ্য বিল্ড নির্ভরতা মধ্যে নির্ভুলতা হিসাবে অ্যাকাউন্ট বিবরণ গ্রহণ করে অর্জন করা হয়, একই বিল্ড টুল সংস্করণ এবং কনফিগারেশন ব্যবহার করে, ডিফল্ট বিকল্প এবং সেটিংসের একটি অভিন্ন সেট, বিল্ডে ফাইলের ক্রম সংরক্ষণ করা (সামঞ্জস্যপূর্ণ বাছাই পদ্ধতি ব্যবহার করে), এবং কম্পাইলার দ্বারা অস্থায়ী তথ্য যুক্ত করা অক্ষম করা, যেমন র্যান্ডম মান, ফাইল পাথ রেফারেন্স, এবং সংকলন তারিখ এবং সময় বিবরণ
বাইনারি যাচাই করার ক্ষমতা নিরাপত্তার একটি অতিরিক্ত স্তর প্রদান করে শুধুমাত্র কম্পাইলার পরিকাঠামোতে বিশ্বাসের উপর নির্ভর না করে। এটি অত্যন্ত গুরুত্বপূর্ণ কারণ কম্পাইলার বা বিল্ড টুলগুলির সাথে আপস করার ফলে ক্ষতিকারক উপাদান সন্নিবেশিত হতে পারে বা ফলে বাইনারিগুলিতে লুকানো পরিবর্তন হতে পারে।
উদাহরণস্বরূপ, openSUSE বিকাশকারীরা অখণ্ডতা নিশ্চিত করতে পুনরাবৃত্তিযোগ্য বিল্ড ব্যবহার করা হয় বাইনারিগুলির xz প্যাকেজে বিখ্যাত ব্যাকডোর ঘটনা সনাক্ত করার পরে. এই ক্ষেত্রে, আপস করা liblzma লাইব্রেরি, GCC কোডের সাথে ফাইলগুলিকে ডিকম্প্রেস করতে ব্যবহৃত, GCC কোডে ক্ষতিকারক পরিবর্তনগুলি প্রবর্তন করতে পারে, যা ফলস্বরূপ একত্রিত অ্যাপ্লিকেশনগুলিকে প্রভাবিত করতে পারে।
এটি লক্ষ করা গুরুত্বপূর্ণ যে ফ্যাক্টরি রিপোজিটরিটি শেষ ব্যবহারকারীদের জন্য নয়, তবে প্রাথমিকভাবে বিতরণ বিকাশকারীদের জন্য। কারণ এর স্থায়িত্ব সব সময়েই নিশ্চিত নয়।
ফ্যাক্টরিতে যোগ করা প্যাকেজগুলি openQA ব্যবহার করে স্বয়ংক্রিয় পরীক্ষার মাধ্যমে যায়। একবার এই পরীক্ষাগুলি সম্পন্ন হয়ে গেলে এবং নির্ভরতা অবস্থার সামঞ্জস্যতা পরীক্ষা করা হলে, সংগ্রহস্থলের বিষয়বস্তুগুলি সপ্তাহে কয়েকবার আয়নার সাথে সিঙ্ক্রোনাইজ করা হয়। এই প্রক্রিয়ার চূড়ান্ত ফলাফল ওপেনসুস টাম্বলউইড হিসাবে প্রকাশিত হয়, যা স্থিতিশীল এবং নির্ভরযোগ্য বিতরণ যা শেষ ব্যবহারকারীরা আত্মবিশ্বাসের সাথে ব্যবহার করতে পারে।
যদি হয় এটি সম্পর্কে আরও জানতে আগ্রহী, আপনি বিশদ পরীক্ষা করতে পারেন নীচের লিঙ্কে।