একটি হার্ড লিঙ্ক এবং অনুলিপি করা ফাইলগুলির মধ্যে পার্থক্য কী?


22

আমার বোঝা হ'ল হার্ড লিঙ্কগুলিতে মূল ফাইলের একটি অনুলিপি অন্তর্ভুক্ত থাকে এবং আমি একটি ডিরেক্টরিতে একটি হার্ড-লিঙ্কযুক্ত ফাইল মুছতে পারি এবং এটি অন্য ডিরেক্টরিতে এখনও বিদ্যমান থাকে।

যদি এটি হয় তবে আমি কেন কঠোর লিঙ্কগুলি ব্যবহার করতে চাই? কেন শুধু দুটি পৃথক ফাইল নেই?

উত্তর:


29

আপনি যদি কোনও ফাইল অনুলিপি করেন তবে এটি সামগ্রীটির সদৃশ হবে। সুতরাং আপনি যদি একটি একক ফাইলের বিষয়বস্তুটি পরিবর্তন করেন তবে অন্যটির উপর এর কোনও প্রভাব নেই has

আপনি যদি একটি হার্ডলিঙ্ক করেন তবে এটি একই সামগ্রীতে নির্দেশিত একটি ফাইল তৈরি করবে। সুতরাং আপনি যদি ফাইলগুলির যে কোনও একটির কন্টেন্ট পরিবর্তন করেন তবে পরিবর্তনটি উভয় ক্ষেত্রেই দেখা যাবে।


3
খুব বড় ফাইলগুলির জন্য, মূল ফাইলটি অনুলিপি করার চেয়ে কি হার্ড লিঙ্কটি তৈরি করা সবসময় দ্রুত হয়?
জর্জে বুকারান

14

একটি হার্ড লিঙ্ক মূলত একই ফাইলের জন্য দ্বিতীয় ফাইলের নাম। সুতরাং আপনি যদি কোনও ফাইলকে হার্ডলিঙ্ক করেন তবে এটি কেবল একবার ফাইল সিস্টেমে থাকবে এবং সুতরাং একবারে কেবল স্থান গ্রহণ করবে। সুতরাং আপনি যদি ডিস্কস্পেস সংরক্ষণ করতে চান তবে এটি ব্যবহার করতে চান


4
তাত্ক্ষণিক প্রতিক্রিয়া জন্য ধন্যবাদ। তাহলে আমি কেন নরম লিঙ্কের পরিবর্তে একটি হার্ড লিঙ্কটি ব্যবহার করতে চাই?
মাইক বি

5
একটি সফটলিঙ্ক মূলত অন্য কোনও ফাইলের পয়েন্টার। সুতরাং আপনি যদি আসল ফাইলটি মুছে ফেলেন তবে এই সফটলিঙ্কটি এখনও বিদ্যমান থাকবে তবে নষ্ট হবে। একটি হার্ডলিঙ্ক একই ফাইলের জন্য 2 টি নাম, যাতে সেগুলি স্বতন্ত্রভাবে মোছা যায়।
পিটার

19
পিটারের ব্যাখ্যাটি ভাল, তবে তিনি "লিঙ্ক কাউন্ট" রেখে গেছেন। ফাইলের ইনোডে (ডিস্ক মেটাডেটাতে) একটি লিঙ্ক গণনা রয়েছে। একটি হার্ড লিঙ্ক লিঙ্কের সংখ্যা বাড়িয়ে তোলে, একটি নরম লিঙ্ক দেয় না। লিঙ্ক গণনাটি শূন্যে নেমে গেলে কার্নেলটিকে কোনও ফাইলের সামগ্রী মুছতে অনুমতি দেওয়া হয়।
ব্রুস এডিগার

4
আমি মনে করি এ সম্পর্কে অ্যালানের উত্তরের একটি গুরুত্বপূর্ণ বিষয় রয়েছে: একটি ফাইল পরিবর্তন করা সমস্ত হার্ডলিঙ্কগুলিকে পরিবর্তন করে, একটি অনুলিপি সহ তাদের আলাদা আলাদা সামগ্রী থাকতে পারে।
donothingsuccessfully

6

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

সিস্টেমটি প্রতিটি ইনোডে কতগুলি হার্ড লিঙ্ক রয়েছে তার একটি গণনা রাখে। লিঙ্কের গণনা 0 হলে ফাইলটি আর পৌঁছানো যায় না এবং ডেটা ওভাররাইট করা নিরাপদ হিসাবে চিহ্নিত করা হয়। 2 টি হার্ড লিঙ্কযুক্ত একটি ফাইল দেওয়া হয়েছে, আপনি যদি উভয় লিঙ্ক মুছলে, ডেটা মুছে ফেলা হবে না। আপনি উভয়ই মুছলে ডেটা চলে যাবে।

কমান্ডে -iস্যুইচ ব্যবহার করে আপনি ফাইলগুলির ইনোড সংখ্যা দেখতে পাবেন ls

অন্যদিকে একটি নরম লিঙ্ক, অন্য একটি ফাইলকে ফাইলের নাম দ্বারা নির্দেশ করে। আপনি যদি আসল ফাইলটি সরান বা মুছলে লিঙ্কটি নষ্ট হয়ে যাবে।


0

যে অংশটি জিজ্ঞাসা করেছিল তার অংশের প্রসঙ্গে, "কেন আমি কঠোর লিঙ্কগুলি ব্যবহার করতে চাই না?":

হার্ড-লিঙ্কযুক্ত ফাইলগুলি (বা সেই বিষয়টির জন্য নরম (প্রতীকী) -যুক্ত লিঙ্কগুলি একটি একক এক্সিকিউটেবল ফাইল রাখার একটি দরকারী উপায় সরবরাহ করে যা বিভিন্ন উদ্দেশ্যে মুখোশ তৈরি করা যায়।

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

একটি ক্লাসিক উদাহরণ এলভিএম। এক সময় এইচপি-ইউএক্স বিভিন্ন এক্সেকিউটেবল জন্য কঠিন সংযুক্ত ফাইল (ব্যবহৃত যেমন vgdisplay, vgcreate, vgextend, ইত্যাদি আজ, লিনাক্স মত এসব কমান্ড আসলে প্রতীকী (নরম) লিঙ্ক lvmএক্সিকিউটেবল।


এই প্রশ্নের সাথে কোন সম্পর্ক নেই।
rjmunro

1
@ আরজমুনরো আমি আলাদা হতে অনুরোধ করছি। ওপি জিজ্ঞাসা করেছিল, "আমি কেন কঠোর লিঙ্কগুলি ব্যবহার করতে চাই না?"
জেআরফেরগসন

আমি শেষ উদাহরণটি বুঝতে পারি না। একসময় প্রচুর এক্সিকিউটেবলের শক্ত লিঙ্ক ছিল, এখন এক এক্সিকিউটেবলের নরম লিঙ্ক রয়েছে। এই নরম লিঙ্কগুলি কীভাবে আলাদা?
ইমানুয়েল বার্গ

@ ইমানুয়েলবার্গ আমার বক্তব্যটি হ'ল শক্ত বা নরম লিঙ্কগুলি ব্যবহার করা হোক না কেন, এটিই নাম যার দ্বারা এক্সিকিউটেবলকে অনুরোধ করা হয়েছে যা কার্যকর করার জন্য বৈধ যে বিকল্পগুলি এবং যুক্তিগুলি নির্ধারণ করে।
জেআরফেরগসন

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