উত্তর:
ইউনিক্সে সমস্ত সাধারণ ফাইল হ'ল হার্ডলিংক। ইউনিক্সের হার্ডলিংকগুলি (এবং সর্বাধিক (সমস্ত?)) ফাইল সিস্টেমগুলিকে একটি বলা হয় তার উল্লেখ inode
। inode
একটি রেফারেন্স কাউন্টার আছে, যখন আপনি ফাইলে এক "লিঙ্ক" (যা স্বাভাবিক কার্যপ্রণালী হয়) কাউন্টার 1. হয় যখন আপনি একটি দ্বিতীয়, তৃতীয়, চতুর্থ, ইত্যাদি লিঙ্ক তৈরি করেছি, এবার পাল্টা বৃদ্ধি করা হয় (বর্ধিত) প্রতিটি সময় এক এক। আপনি যখন rm
কোনও লিঙ্ক মুছবেন তখন কাউন্টারটি একে একে হ্রাস (হ্রাস) করা হবে। যদি লিঙ্ক কাউন্টারে 0 পৌঁছে যায় তবে ফাইল সিস্টেম অপসারণ করে inode
এবং ব্যবহারের জন্য উপলব্ধ স্থানটি চিহ্নিত করে।
সংক্ষেপে, যতক্ষণ না আপনি শেষ লিঙ্কটি মুছবেন না ততক্ষণ ফাইলটি থেকে যাবে।
Edit:
শেষ লিঙ্কটি সরানো হলেও ফাইলটি থাকবে । কোনও ফাইলের মধ্যে থাকা ডেটা সুরক্ষার বিষয়টি নিশ্চিত করার একটি উপায় যা অন্য কোনও প্রক্রিয়াতে অ্যাক্সেসযোগ্য নয়। ফাইল সিস্টেম থেকে ডেটা সম্পূর্ণরূপে সরানো কেবলমাত্র তখনই করা হয় যদি ডেটাটির মেটাডেটাতে দেওয়া হিসাবে এর সাথে 0 টি লিঙ্ক থাকে এবং কোনও প্রক্রিয়া দ্বারা এটি ব্যবহার না করা হয়।
এই আইএমএইচও হ'ল হার্ড-লিঙ্কগুলি বোঝার সহজতম উপায় (এবং সফটলিঙ্কগুলি থেকে এটির পার্থক্য)।
unlink
।
/proc
এটি একটি পৃথক (ভার্চুয়াল) ফাইল সিস্টেম files
unlink()
1990-এর দশকের প্রথমার্ধে যখন আমি এমএস-ডস-এ সি প্রোগ্রামিংয়ের সাথে খেলতে শুরু করি তখন কোনও ফাইল মুছে ফেলার আহ্বান আমাকে শেষ অবধি বিস্মিত করে। :)
আমি যা ভাবি তার চেয়ে টেস্টিং সহজ ছিল: আমি একটি পাঠ্য ফাইল তৈরি করেছি, তারপরে এর সাথে শক্ত লিঙ্ক যুক্ত। হার্ড লিঙ্ক মোছা হচ্ছে না না ফাইল এটি hardlinked করা হয় এবং যে ফাইলটি দেহাবশেষ এটা যেখানে লিঙ্ক করা হয়েছে তা মোছা।
আপনার ডিস্কের সমস্ত ফাইলই আসলে আপনার ড্রাইভের আসল ডেটার দিকে নির্দেশক।
আপনি যখন সেই ফাইলটির জন্য একটি হার্ডলিঙ্ক তৈরি করেন তখন হার্ডলিঙ্ক-এড ফাইলটি একই ফাইলের দিকে নির্দেশ করবে যা মূল ফাইলটি নির্দেশ করেছিল।
উদাহরণস্বরূপ, a.txt ড্রাইভে থাকা ফাইলটির ডেটা (বাইট) নির্দেশ করছে, যখন হার্ডলিঙ্ক বি.এস.টি.এস.টি তৈরি করা হবে তখন এটি a.txt এর দিকে কী ইঙ্গিত করেছিল তা নির্দেশ করবে।
সুতরাং এগুলির একটি অপসারণ করা একে অপরের সাথে পৃথক হওয়া অন্যকে প্রভাবিত করবে না।
কিন্তু, আপনি যখন উভয়কে মুছে ফেলবেন তখন সিস্টেমটি দেখতে পাবে যে ডিস্কে থাকা ডেটাতে কোনও ফাইল নেই যা তার দিকে নির্দেশ করে, সুতরাং সিস্টেমটি এটি একটি মুক্ত স্থান হিসাবে বিবেচনা করবে এবং যখন ইচ্ছা তখন এটি ওভাররাইট করবে।
FILE "A.txt"
সাদৃশ্যপূর্ণ LINK "B.txt"
, বিশেষত যেমন আপনি একটিকে FILE
এবং অন্যটিকে একটি বলেছিলেন LINK
। লিঙ্কটি আসলে কালো তীর is
unlink()
।