কীভাবে লিনাক্স একটি মুভি কমান্ড পরিচালনা করে


12

কীভাবে লিনাক্স হুডের নীচে মুভি কমান্ড পরিচালনা করে?

বলি আমি আমার বাড়ি সরে যাই

/home/me

এবং আমি এটি অন্য ডিরেক্টরিতে স্থানান্তর করি

/home/foo/me

সমস্ত ফাইল এবং ডিরেক্টরিগুলির পথগুলি কীভাবে meপরিবর্তিত হয়? আমি জানি আমার Desktopদিরের অধীনে meএখন /home/foo/me/Desktopপাশাপাশি রয়েছে Documents /home/foo/me/Documentsতবে ফাইল meপ্রতিস্থাপনের পরিবর্তন প্রতিফলিত করার জন্য ফাইল সিস্টেমটি প্রতিটি প্যাথাকে স্পষ্টভাবে আপডেট করে ? এটি খুব দক্ষ শোনাচ্ছে না এবং এটি সম্ভবত এটি নয়।

আমি এই বিষয়ে আরও তথ্য কোথায় পেতে পারি?


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

আহ, সম্ভবত
জেফের

@ জোস কোনটি যেখানে ভগ্নাংশটি ডান থেকে আসে?
শূন্য 298

3
@ শূন্য ২৯৮ না, টুকরো টুকরো টুকরো টুকরো টুকরো টুকরো টুকরো টুকরো টুকরো টুকরো টুকরো টুকরো টুকরো টুকরো টুকরো টুকরো টুকরো টুকরো টুকরো টুকরো / এই জাতীয় ফাইলের কর্মক্ষমতা লিখুন। বড় / গভীর / শাখা প্রশাখার ফোল্ডার গাছের বিষয়বস্তুগুলি সাধারণত অবিচ্ছিন্ন এবং সেই পথে ঘুরে বেড়ানো প্রত্যাশিত হয় না।
পিটারিস

উত্তর:


21

এটি কীভাবে ফোল্ডারগুলি সরায় তা বোঝার জন্য আপনাকে লিনাক্সের আওতায় ফাইল সিস্টেম সম্পর্কে কিছুটা বুঝতে হবে। প্রতিটি ফাইল এবং ফোল্ডার একটি " ইনোড " নামক ডেটা কাঠামোর অংশ হিসাবে সংরক্ষণ করা হয় । প্রতিটি ফাইলের একটি ইনোড নম্বর থাকে তাই ফোল্ডারও থাকে।

আপনার ফোল্ডারের ইনোড দেখতে, কমান্ডটি ব্যবহার করুন ls -ial foldername। প্রথম কলামটি ফাইলের ইনোড নম্বরটি দেখায়। প্রতিটি ফোল্ডারের জন্য দু'টি অনন্য নাম .এবং ..যথাক্রমে নিজস্ব ডিরেক্টরি এবং প্যারেন্ট ডিরেক্টরি উপস্থাপন করে।

সাব-ডিরেক্টরি এবং ফাইলগুলি অন্য ডিরেক্টরিতে (যেমন / হোম / আমি / কোথাও / অন্য কোনও) ডিরেক্টরিতে ডিরেক্টরি (যেমন, / হোম / আমি / উত্স) সরাতে আপনি একটি পরীক্ষা করার চেষ্টা করতে পারেন। / হোম / আমি / উত্স এবং এর সমস্ত বিষয়বস্তুর ইনোড নম্বর সরানোর আগে এবং পরে একই থাকে। পার্থক্যটি হ'ল ইনোড নম্বর .., যা মূলত / হোম / আমার ইনোড নম্বরটি ভাগ করে এবং এখন / হোম / আমার / কোথাও / অন্য কোনও জায়গায় ইনোড নম্বর হয়ে যায়। সহজ কথায়, লিনাক্স ডিরেক্টরি উত্সের লিঙ্কটি আপডেট করে এবং তারপরে এটি সম্পন্ন হয়।

হার্ড ডিস্কে থাকা সামগ্রীগুলি যেভাবেই সংশোধিত হয় না, ফোল্ডারটি সরানো হলে কেবল ইনড সূচি আপডেট করা হয়। আপনি যদি ফোল্ডারটিকে অন্য কোনও শারীরিক স্থানে নিয়ে যান তবে অবশ্যই এটি নয়।


3
ডান, যতক্ষণ না সরানো ফাইল সিস্টেমের সীমানা অতিক্রম করে না।
কোজিরো

3

আপনি যদি প্রোগ্রামগুলি যেমন mvএবং cpকাজ করতে আগ্রহী হন তবে মনে রাখবেন যে সেগুলি ওপেন সোর্স এবং কোডের মাধ্যমে পড়ে আপনি সবচেয়ে সঠিক ব্যাখ্যা পেতে পারেন accurate এখানে সমস্ত মূল ইউটিলিটিগুলির লিঙ্ক রয়েছে। বিশেষত, আপনি এখানে এমভি খুঁজে পেতে পারেন


6
you can get the most accurate explanation by reading through the code.আমি আলাদা করতে অনুরোধ করি; দীর্ঘদিন ধরে আমার সি এর সাথে একেবারে অভিজ্ঞতা নেই, এবং এখনও আমি এটিকে পছন্দ করি না। এছাড়াও, উত্স কোডটি প্রায়শই অনুকূলিত হয় এবং এতে প্রয়োজনের চেয়ে আরও বেশি প্রান্তের কেস থাকে। একটি প্রতীকী ব্যাখ্যা প্রায়শই আরও সাহায্য করে।
শেলভাকু

1
@ শেলভাকুতে "প্রয়োজনের চেয়ে আরও প্রান্তের কেস রয়েছে"। দৃust় কোড উপস্থিত সমস্ত প্রান্ত কেস পরিচালনা করে। তবে এটি সত্য যে কোনও ধারণার প্রথম ব্যাখ্যায় সমস্ত প্রান্তের কেসগুলি উপস্থাপন করা প্রয়োজন হতে পারে না।
অরেগন ট্রেইল

@ ওরেগন ট্রেইল দুঃখিত, আমি এটাই বোঝাতে চাইছি, কোডটির আরও ধারালো কেস রয়েছে তার পরে তার ব্যাখ্যা দরকার
শেলভাকু

আমি আনন্দিত যে এটি আপনার আসল অনুভূতি ছিল, তবে আপনি এখনও আমার " হ্যান্ডলগুলি " জোর মিস করেছেন বলে মনে হয় । ভালো করে লেখা কোড না আছে প্রান্ত ক্ষেত্রে, এটা পরিচালনা প্রান্ত মামলা। ;) আমি জানি আপনি এখানে সঠিক জায়গা থেকে এসেছেন, তবে আপনার ক্রিয়াগুলি সম্পর্কে আপনার যত্নবান হওয়া উচিত।
অরেগন ট্রেইল
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.