কম্পিউটার টিউটোরিয়াল

লিনাক্স ইনোড কীভাবে কাজ করে?

আপনি যদি যথেষ্ট দিন লিনাক্স ব্যবহার করেন, তবে আপনি "inodes" শব্দটি দেখতে পেয়েছেন। এটি কিছু কিছুর মতো যা মাঝেমধ্যে দেখাবে, কিন্তু আপনি যা করছেন সেটাকে প্রভাবিত করে না। এখানে আমরা ব্যাখ্যা করব ইনোড কী এবং কীভাবে এটি কাজ করে।

ইনোড কী?

একটি লাইব্রেরিতে, সকল বই জেনর, লেখকের নাম বা পাঠক বয়স গ্রুপ অনুযায়ী অর্গানাইজড থাকে। আপনি যদি "ববি ড্যানিয়েলস" এর একটি থ্রিলার খুঁজতে চান, তবে আপনি সরাসরি থ্রিলার সেকশনে যাবেন এবং "B" দিয়ে শুরু হওয়া লেখকের নাম খুঁজবেন। ঠিক একইভাবে, লিনাক্স সিস্টেমের সকল ফাইল দক্ষ রিট্রিভাল এবং ব্যবহার করার জন্য অর্গানাইজড থাকে। ইনোড হলো একটি এন্টিটি যা লিনাক্স সিস্টেমে ফাইল অরেঞ্জমেন্টে সাহায্য করে।

ফাইল মেটাডেটা কী?

ধরুন, "sample.txt" নামে একটি ফাইল রয়েছে যাতে "hello" ডেটা রয়েছে।

এই ফাইলের কিছু ডেটা এবং ইনফরমেশন রয়েছে যেগুলো এটির সাথে রিলেটেড: ফাইল সাইজ, পারমিশন, ইউজার এবং গ্রুপ ওনারশিপ, ক্রিয়েশন/অ্যাক্সেস/মডিফিকেশন টাইমস্ট্যাম্প, লিংক কাউন্ট, ইত্যাদি। এই সকল ইনফরমেশনকে মিলিতভাবে ফাইল মেটাডেটা বলা হয়।

ফাইল সিস্টেম কী?

একটি স্টোরেজ ডিভাইস যেমন হার্ড ড্রাইভে, একটি পার্টিশন ফাইল সিস্টেম হিসেবে ফরম্যাট করা হয় ফাইল স্টোরেজের জন্য ব্যবহৃত होने আগে। একটি ফাইল সিস্টেম হলো হার্ড ড্রাইভের লাইব্রেরিয়ান। ফরম্যালি, এটি ডেটা স্ট্রাকচার এবং অ্যালগোরিদমের একটি সেট যা টানডেমে কাজ করে পার্টিশনে মেথডিক্যালি ফাইল স্টোর করার জন্য।

লিনাক্স সিস্টেমের পার্টিশনগুলো ঘন ঘন EXT4-তে ফরম্যাট করা হয়। B-Tree File System (BTRFS), Reiser File System, ZFS, ইত্যাদি অন্যান্য ফাইল সিস্টেমও ব্যবহারের জন্য উপলব্ধ।

সকলকে একসাথে বাঁধা

ইনোড হলো Ext4-এ একটি ডেটা স্ট্রাকচার যা একটি ফাইলের সকল মেটাডেটা ধারণ করে।

অবশ্যই একটি ফাইল সিস্টেমে অসংখ্য ফাইল থাকবে। আপনি যেন অনুমান করেছেন, প্রতিটি ফাইলের নিজস্ব ইনোড থাকবে। ইনোডগুলোকে ইউনিকভাবে আইডেন্টিফাই করার জন্য, প্রতিটি ইনোড নম্বর করা হয়।

ইনোড নাম্বারিং কেমন হয়?

একটি ফাইল সিস্টেমে ইনোড নম্বর ১ থেকে শুরু হয়। প্রথম দশ ইনোড সিস্টেম ইউজের জন্য রিজার্ভড থাকে। ইউজার ফাইলগুলোর মেটাডেটা ইনোড ১১ থেকে স্টোর হয়। সকল ইনোড সুন্দরভাবে একসাথে স্ট্যাক করা থাকে একটি ইনোড টেবিলে।

ইনোড টেবিলে একটি এন্ট্রি ২৫৬ বাইট সাইজের হবে। একটি ফাইলের জন্য, লিনাক্স বুদ্ধিমানের মত সকল মেটাডেটা ২৫৬ বাইটের ভিতরে অর্গানাইজ করে! এছাড়া, একটি ফাইলের ইনোডে ফাইল সিস্টেমে ফাইলটির ডেটা কোথায় অবস্থিত সেটাও রয়েছে। মনে রাখবেন—শুধু ফাইলের মেটাডেটা ইনোডে স্টোর থাকে।

একটি ফাইল সিস্টেমে মোট ইনোডের সংখ্যা উপলব্ধ স্পেস এবং পার্টিশনে স্টোর করা যায় এমন ফাইল সংখ্যার ওপর নির্ভর করে।

ইনোড কীভাবে অ্যালোকেট এবং ডি-অ্যালোকেট হয়?

যেহেতু ইউজার একটি ফRESHলি ফরম্যাটেড ফাইল সিস্টেমে ফাইল যোগ করে, ইনোড ১১ থেকে শুরু করে ফাইল মেটাডেটা ধারণ করার জন্য অ্যালোকেট হয়।

একটি অন্য ডেটা স্ট্রাকচার রয়েছে যাকে "Inode Bitmap" বলা হয় ইনোডের অ্যালোকেশন স্ট্যাটাস ট্র্যাক করার জন্য। এটি বিটের একটি সংকলন যা একটি ম্যাপ হিসেবে কাজ করে।

আমরা ইনোড বিটম্যাপে আট বিট বিবেচনা করি ইনোড ১১ থেকে ১৮-এর অ্যালোকেশন স্ট্যাটাস ডিনোট করার জন্য নিচের টেবিল অনুযায়ী। বিটম্যাপে ১ ভ্যালু মানে ইনোডটি অ্যালোকেটেড, অর্থাৎ একটি ফাইলের মেটাডেটা ধারণ করতে ব্যবহৃত হচ্ছে। বিটম্যাপে ০ ভ্যালু মানে ইনোডটি বর্তমানে ব্যবহারে নেই। এখানে, আমরা দেখতে পাচ্ছি ইনোড ১৭ ব্যবহারে রয়েছে।

যদি সেই ফাইলটি ডিলিট হয় যেটির মেটাডেটা ইনোড ১৭-এ রয়েছে, তবে এর সংশ্লিষ্ট বিটম্যাপ স্ট্যাটাস ০ হয়ে যাবে, যা ইন্ডিকেট করে যে এটি অন্য ফাইলের জন্য ফ্রি।

এক ফাইলের ইনোড নম্বর কীভাবে দেখব?

এটি করার দুটি উপায় রয়েছে।

প্রথমটি হলো ls কমান্ড -i স্যুইচ দিয়ে, ফাইলের নামের পর। আউটপুটের প্রথম ফিল্ড হলো ইনোড নম্বর যেটে "sample.txt"-র মেটাডেটা রয়েছে।

একই ইনফরমেশন stat কমান্ড দিয়ে ফাইলের নামের পর পাওয়া যায়।

একটি পার্টিশনের জন্য মোট উপলব্ধ ইনোডের সংখ্যা দেখতে, df কমান্ড -i স্যুইচ দিয়ে ব্যবহার করা যায়।

"/dev/sda4" পার্টিশনে ৪০৪৭৫৪৪৮০ ইনোড উপলব্ধ, য 그중 শুধু ৩৫৯০৪৪ ইনোড ব্যবহার করা হয়েছে।

উপসংহার

প্রকৃতিতে, ইনোড টেবিল সকল ফাইলের মেটাডেটা মেটিকুলাসলি ইনোডগুলতে স্ট্যাক করে, ফাইল ডেটার লোকেশন সম্পর্কে ইনফরমেশন সহ। লিনাক্স ইনোড সম্পর্কে আমরা যা আলোচনা করেছি, এটিই সঠিকভাবে айেসবর্গের টিপ। এর ইনার ওয়ার্কিং সম্পর্কে আরও জানতে, আপনি এই লিংকটি দেখতে পারেন।

  1. লিনাক্সে ফাইলে নির্দিষ্ট শব্দ খুঁজে বের করুন

  2. লিনাক্সে জিপ ফাইল এক্সট্র্যাক্ট করার পদ্ধতি

  3. লিনাক্সে Zsync ব্যবহার করে ফাইলের অংশ ট্রান্সফার করার পদ্ধতি

  4. লিনাক্সে ফাইল Permanently ডিলিট করুন – ধাপে ধাপে গাইড