সিমলিংক হল এমন ফাইল যা সরাসরি অন্য ফাইলের সাথে লিঙ্ক করে। লিনাক্স সিস্টেমে, সিমলিংক শর্টকাট হিসেবে কাজ করে।
"সিমলিঙ্ক" শব্দটি হল "প্রতীকী" এবং "লিঙ্ক" এর একটি পোর্টম্যানটো, যা অন্যান্য জিনিসের প্রতীকী উল্লেখ হিসাবে এই ধরনের ফাইলগুলির উপযোগিতাকে হাইলাইট করে৷
তথাকথিত "হার্ড" লিঙ্কগুলি আক্ষরিক লিঙ্কগুলির চেয়ে তাদের উল্লেখ করা ফাইলগুলির অনুলিপি হিসাবে বেশি কাজ করে। "নরম" বা প্রতীকী লিঙ্কগুলি কেবল তাদের লক্ষ্যগুলি নির্দেশ করে। এই লিঙ্কগুলি মুছে ফেলার ফলে তারা যে ফাইলগুলি নির্দেশ করে তার কিছুই করে না এবং যতগুলি সিমলিঙ্ক প্রয়োজন ততগুলি সুবিধার জন্য তৈরি করা যেতে পারে৷ এটি ফাইল সিস্টেম এবং পার্টিশন জুড়ে ফাইলগুলিকে একইভাবে নির্দেশ করার জন্য তাদের দুর্দান্ত করে তোলে৷
সিমলিংকের ব্যবহার
একটি একক অ্যাপ্লিকেশন আরও দক্ষতার সাথে চালানোর জন্য একটি ফাইল সিস্টেমের অন্তর্নিহিত কাঠামো পরিবর্তন করা একটি গুরুতর কাজ হবে। পরিবর্তে, সিমলিঙ্কগুলি প্রায়শই বিষয়গুলিকে সহজ করার জন্য এবং মূল ফাইলগুলির অবস্থানগুলিকে প্রভাবিত না করে রেফারেন্সের জন্য প্রোগ্রামগুলির জন্য কৃত্রিম ফাইলের শ্রেণিবিন্যাস তৈরি করতে ব্যবহৃত হয়৷
সিমলিংকের ব্যবহার বিভিন্ন প্রোগ্রামকে সহজ করে তোলে, কিন্তু এটি ফাইল সিস্টেমের বিশ্লেষণকেও জটিল করে তোলে।
সিমলিঙ্কের সমস্যাগুলি
যখন সিমলিঙ্কগুলি সঠিকভাবে কাজ করে, তারা আসলে বিদ্যমান একটি ফাইলের একটি পরিষ্কার পথ বানান করে। ব্যর্থ সাংকেতিক লিঙ্ক, যাইহোক, এমন ফাইলগুলিকে নির্দেশ করে যা বিদ্যমান নেই বা মুছে ফেলা হয়েছে। এই প্রতীকী লিঙ্কগুলি মানব ব্যবহারকারী এবং প্রোগ্রাম উভয়ের জন্য বিভ্রান্তি তৈরি করে যা তাদের নির্ভুলতার উপর নির্ভর করে।
যদি সিমলিংক দ্বারা টার্গেট করা ফাইলগুলিকে অদলবদল করা হয়, লিঙ্কটি নিজেই নতুন ফাইলের দিকে নির্দেশ করে, এর বিষয়বস্তু সম্পূর্ণরূপে উপেক্ষা করে। এই অন্ধ বিশ্বাস কার্যকারিতা লিঙ্ক চেইনিং এবং আপেক্ষিক লিঙ্কগুলিকে একটি সম্ভাবনা তৈরি করে।
লিঙ্ক চেইনিং, বিশেষ করে, চক্রীয় লিঙ্কের দিকে নিয়ে যেতে পারে (অসীম দৈর্ঘ্যের লিঙ্ক লুপ) যদি একটি লিঙ্ক একটি দ্বিতীয় লিঙ্কের উল্লেখ করে যেটি, পরিবর্তে, প্রথমটিতে ফিরে আসে।
শুধুমাত্র মানুষের হস্তক্ষেপ দ্বারা এই ধরনের সমস্যা অগত্যা আসে না; অনুপযুক্ত ডিভাইস মাউন্টিং মান এবং কিছু স্বয়ংক্রিয় প্রক্রিয়া দুর্ভাগ্যজনক প্রাচুর্যে "মৃত লিঙ্ক" হিসাবে অভিহিত করা তৈরিতে অবদান রাখতে পারে। এখানেই সুনির্দিষ্টভাবে ব্যবস্থাপনার কৌশলগুলো কাজে আসে।
সিমলিঙ্কগুলি পরিচালনা করা
লিনাক্স সিস্টেমে সিমলিংকগুলি পরিচালনা করার জন্য সহজেই উপলব্ধ বিভিন্ন ধরনের ইউটিলিটি রয়েছে। coreutils-এ একটি ডিফল্ট অন্তর্ভুক্তি হল ln
, যা টার্মিনাল থেকে এই ধরনের লিঙ্ক তৈরির সুবিধা দেয়।
প্রতীকী লিঙ্কগুলি সম্পূর্ণরূপে পরিচালনা করার জন্য, তবে, আপনাকে সেগুলি খুঁজে পেতে এবং দ্রুত বিশ্লেষণ করতে সক্ষম হতে হবে। এই উদ্দেশ্যে বিবেচনা করার মতো একটি সাধারণ কমান্ড-লাইন বিকল্প যথাযথভাবে symlinks
নামে পরিচিত। .
যদিও কিছু লিনাক্স ডিস্ট্রো যেমন ফেডোরা ডিফল্টরূপে ইনস্টল করা এই টুলের সাথে আসে, উবুন্টুর মতো অন্যরা তা করে না। উবুন্টুতে "সিমলিংকস" ইনস্টল করতে, কেবল একটি টার্মিনাল উইন্ডো খুলুন এবং নিম্নলিখিতটি লিখুন:
sudo apt install symlinks
সিমলিঙ্ক তৈরি করা হচ্ছে
আপনার টার্মিনাল থেকে সিমলিঙ্ক তৈরি করা লিনাক্সে সহজ। আপনার নির্বাচিত টার্গেটের নাম এবং ফাইল এক্সটেনশনে "original-file.txt" পরিবর্তন করে অনুসরণ করা কোডটি লিখুন, তারপরে আপনি যা হতে চান তাতে "লিঙ্কনাম" পরিবর্তন করুন।
ln -s original-file.txt linkname
ln
ইউটিলিটি লিঙ্ক তৈরির জন্য, এবং আপনি এটি চালালে এটি তা করবে। -s
উপরের কমান্ডে অন্তর্ভুক্ত করলে জেনারেট করা লিঙ্কটিকে প্রতীকী করে তোলে।
আপেক্ষিক প্রতীকী লিঙ্কগুলিও একটি -r
যোগ করে তৈরি করা যেতে পারে নিম্নরূপ একই আদেশে:
ln -rs original-file.txt linkname
মাউন্ট পয়েন্টের পরিবর্তন নির্বিশেষে আপেক্ষিক লিঙ্কগুলি কার্যকরী থাকে।
সিমলিঙ্ক খোঁজা
উপরে উল্লিখিত Symlinks ইউটিলিটি আমাদের একটি প্রদত্ত ডিরেক্টরিতে প্রতীকী লিঙ্কগুলি খুঁজে পাওয়ার সহজ উপায় প্রদান করে। এর জন্য কমান্ডটি নিম্নরূপ:(আপনি যে ডিরেক্টরিটি অনুসন্ধান করতে চান তার সম্পূর্ণ পাথে "ডিরেক্টরি-নাম" পরিবর্তন করুন।)
symlinks -v directory-name
একটি r
যোগ করা হচ্ছে এই কমান্ডটি সিমলিংককে নির্দিষ্ট ডিরেক্টরির মধ্যে ফাইলগুলিকে বারবার পরীক্ষা করতে বলে। এটি নিম্নলিখিত মত দেখায়:
symlinks -rv directory-name
আপনি যদি চক্রাকার লিঙ্কগুলির সাথে উদ্ভূত সমস্যাগুলি নিয়ে চিন্তিত হন তবে পুনরাবৃত্তি ব্যবহারে সতর্ক থাকুন৷ সাইক্লিক লিঙ্কগুলি এমন লিঙ্কগুলি যা শেষ পর্যন্ত ভুলভাবে নিজের কাছে ফিরে যায়; তারা সিমলিংক ইউটিলিটিকে ঝুলিয়ে দিতে পারে কারণ এটি তাদের অসীম কাঠামোতে পুনরাবৃত্তি করার চেষ্টা করে।
উপরে দেখানো কমান্ডের অ-পুনরাবৃত্ত সংস্করণটি কেবল বিদ্যমান যেকোন সাইক্লিক লিঙ্কগুলিকে "ঝুলন্ত" বা অন্য কথায়, ভাঙা বলে প্রকাশ করবে। সিমলিঙ্কস টুলটি সক্ষম এমন বিশ্লেষণ যা এটি আসলে এই ধরনের ভাঙা লিঙ্কগুলিকে ঠিক করতে দেয়৷
সিমলিঙ্ক ঠিক করা
একটি প্রদত্ত ডিরেক্টরিতে প্রতীকী লিঙ্কগুলি ফিক্স করা সিমলিঙ্কগুলির সাথে তুলনামূলকভাবে সহজ। এখানে ব্যবহার করার জন্য কমান্ড:
symlinks -cds directory-name
উপরের কমান্ডটি একবারে একাধিক জিনিস করে। এটি যেকোন পরম লিঙ্কগুলিকে আপেক্ষিক লিঙ্কগুলিতে রূপান্তরিত করে, ঝুলে থাকা লিঙ্কগুলিকে সরিয়ে দেয় এবং "দীর্ঘ" লিঙ্কগুলিকে ছোট করে (তাদের পথে প্রচুর "../" যুক্ত লিঙ্কগুলি)।
আপনি এই অপারেশন চালানোর সম্ভাব্য ফলাফল সম্পর্কে অনিশ্চিত হলে, আপনি কি -c
পরীক্ষা করতে পারেন একাই নিম্নলিখিতগুলি চালিয়ে কিছু পরিবর্তন না করেই করবে:
symlinks -t directory-name
আশা করি, আপনি এখন সিম্বলিক লিঙ্কগুলি কী এবং কীভাবে আপনি সেগুলি দক্ষতার সাথে পরিচালনা করতে পারেন সে সম্পর্কে আরও ভালভাবে বুঝতে পেরেছেন৷ আপনার ফাইল সিস্টেমে আরও নির্দিষ্ট অপারেশন চালানোর জন্য Symlinks ইউটিলিটির বাকি ক্ষমতাগুলি দেখুন৷