আপনি যদি yum প্যাকেজ ম্যানেজার ব্যবহার করা লিনাক্স ডিস্ট্রিবিউশনগুলোর যেকোনো একটিে থাকেন, তবে আপনি অপারেটিং সিস্টেম ইনস্টল করা সম্পন্ন করার পর 얼마 নেই "Cannot find a valid baseurl for repo: base" এরর দেখতে পেতে পারেন। এটি সবচেয়ে সাধারণত ফেডোরা, রেড হ্যাট এবং CentOS লিনাক্স ডিস্ট্রিবিউশনের সাথে জড়িত একটি এরর, কিন্তু আপনি এটি SUSE-এর কম্প্যাটিবল ভার্সনে yum আপডেট করার চেষ্টা করার সময়ও পেতে পারেন। আপনি সাধারণত এই এররটি আপডেট করার চেষ্টা করার সময় পাবেন, কিন্তু सौভাগ্যয়, এর চारों ओर ঘুরে যাওয়ার একটি খুব সহজ উপায় আছে।
পদ্ধতি ১: yum কে baseurl খুঁজে বের করতে বাধ্য করা
এই এরর মেসেজ নির্দেশ করে যে, যেকোনো কারণের জন্য, Yellowdog Updater, Modified (yum) সিস্টেম যে বেসটি ব্যবহার করে প্যাকেজ ইনফরমেশন খুঁজে বের করার জন্য সেটি অ্যাক্সেস করতে পারছে না। এরর মেসেজ রিপ্রডিউস করতে, sudo yum update বা সারমে yum update চালান যদি আপনি রুট ইউজার হন। যদি এই বার আপডেট হয়, তবে এররটি শুধু একটি নেটওয়ার্কিং হিকাপের কারণে ছিল এবং আপনাকে আর কিছু করতে হবে না।

অন্যথায়, আপনি দেখতে পায়েন যে আপনি এরর মেসেজ রিপ্রডিউস করেছেন। প্রথমে চেক করার জিনিস হলো নিশ্চিত করা যে আপনি নেটওয়ার্কের সাথে কানেক্টেড আছেন। আপনাকে নিশ্চিত করতে হবে যে আপনি ইন্টারনেট আউটেজ অনুভব করছেন না, যা এই এররটির সবচেয়ে সাধারণ কারণ। আপনি যদি ইন্টারনেটে থাকেন এবং এখনও একটি বৈধ baseurl খুঁজে পাচ্ছেন না, তবে ping mirrorlist.centos.org ট্রাই করুন এবং দেখুন কী হয়। পিং প্রসেস শেষ করতে Ctrl+C চাপুন এবং আপনি কী রেজাল্ট পেলেন তা দেখুন। আপনি যদি রেড হ্যাট বা ফেডোরা ব্যবহার করেন, তবে আমরা যে CentOS URL ব্যবহার করলাম তার বদলে এরর আপনাকে যে মিররলিস্ট URL রিপোর্ট করলো সেটি ব্যবহার করতে পারেন।
আপনি যদি সার্ভারগুলো পিং করতে না পারেন, তবে আপনাকে অপেক্ষা করতে হতে পারে কারণ সেগুলো অস্থায়ী আউটেজ অনুভব করছতে পারে। অন্যথায়, আপনি যদি নেটওয়ার্কিং ইশু পান, তবে ছবিতে দেখানো পথ ফলো করুন এবং ONBOOT= লাইনটি yes বা no-তে টগল করুন। আপনি দুটোই ট্রাই করতে পারেন। একবার সেট হলে, sudo dhclient চালান যতক্ষণ না আপনি ssh-এর মাধ্যমে কাজ করছেন এবং তারপর আবার yum আপডেট করার চেষ্টা করুন। আপনি যদি এখনও প্যাকেজ ম্যানেজার আপডেট করতে সংগ্রাম করছেন, তবে সেই ফাইলটি আবার এডিট করুন।

আপনি NM_CONTROLLED নামে একটি অপশন পাবেন, যা আপনাকে no-তে সেট করতে হবে। আপনি যদি এটি করলে, নিশ্চিত করুন যে ONBOOT= ও no-তে সেট আছে। আপনি যখন অপশনগুলাকে no-তে সেট করেন, নিশ্চিত করুন যে আপনি শুধু ছোট হাতের অক্ষরে শব্দগুলো টাইপ করছেন কারণ CentOS এবং ফেডোরার কিছু ভার্সেন এই আচরণে কেস সেনসিটিভ হতে পারে।
ফাইলটি এডিট করা শেষ করলে, নিশ্চিত করুন যে মেশিনের প্রথম নেটওয়ার্কিং ইন্টারফেসে একটি ইথারনেট ক্যাবল আটকে আছে এবং ifdown eth0; ifup eth0 চালিয়ে নেটওয়ার্ক রিসেট করার চেষ্টা করুন। আমাদের উদাহরণের মতো CentOS 7 ব্যবহারকারীরা এই ফাইলটি খুঁজে পাওয়া যাবে না কারণ জিনিসগুলো পরিবর্তন করা হয়েছিল। যদি সেটি হয়, তবে নিচের ছবিতে দেখানো বা সেটি রিসেম্বল করে এমন কিছু খুঁজে বের করার চেষ্টা করুন। CentOS-এর ডেভেলপাররা সর্বশেষ মিনিমাল ইনস্টল কোড রিভ্যাম্প করার সময় কিছু পরিবর্তন করেছিল, এবং তার ফলস্বরূপ কিছু নেটওয়ার্কিং ইন্টারফেসের নাম পরিবর্তন হয়েছিল।

সবকিছু ভালো লাগলে, আবার yum আপডেট করার চেষ্টা করুন এবং দেখুন কি কাজ করে।
পদ্ধতি ২: baseurl আনকমেন্ট করা
কিছু বিরল পরিস্থিতিতে, এই এররটি নেটওয়ার্কিং ইশুর কারণে নয় হতে পারে। আপনি যদি নিশ্চিত হন যে আপনি কানেক্টেড আছেন এবং এখনও কিছুই কাজ করছে না, তবে নিচের ছবিতে দেখানো ফাইলটি রুট সুপারইউজার হিসেবে আপনার পছন্দের টেক্সট এডিটর দিয়ে খুলুন। একবার আবার, আপনি যদি আমাদের মতো CentOS ব্যবহার না করেন তবে সঠিক ফাইল খুঁজে বের করার জন্য একটি সিম্পল নাম পরিবর্তন প্রয়োজন হবে।

আপনাকে একটি লাইন দেখতে মিলবে যা পড়ছে:
baseurl=https://mirror.centos.org/centos/$releasever/os/$basearch/
নিশ্চিত করুন যে এটি # চিহ্নের মত কোনো কমেন্ট ফ্ল্যাগ দিয়ে শুরু হয়নি। যদি হয়, তবে এটিকে রিমুভ করুন এবং তারপর ফাইলটি সেভ করুন। আবার আপডেট করার চেষ্টা করুন। এটি সিস্টেমকে এইবার সঠিকভাবে আপডেট করতে বাধ্য করা উচিত, যা এটি করতে পারবে না যদি এটি এই লাইনটি খুঁজে না পায় কারণ এটি একটি কমেন্ট ফ্ল্যাগ দ্বারা লুকিয়ে রাখা হয়েছিল।