'Ls -l' কমান্ডের আউটপুটটিতে কোনও ডিরেক্টরি আকারের অর্থ কী?


উত্তর:


45

এটি ডিস্কের জায়গার আকার যা ডিরেক্টরিতে মেটা তথ্য সঞ্চয় করতে ব্যবহৃত হয় (অর্থাত্ এই ডিরেক্টরিতে অন্তর্ভুক্ত হওয়া ফাইলগুলির টেবিল)। যদি এটি 1024 অর্থাত্ এর অর্থ হ'ল ডিস্কে 1024 বাইট ব্যবহার করা হয় (এটি সর্বদা সম্পূর্ণ ব্লক বরাদ্দ করে)।


3
এবং যখন কোনও ডিরেক্টরিতে কয়েক হাজার ফাইল থাকে, তখন ডিরেক্টরিটির আকারটি সহজেই> 10 কেবি
গ্লেন জ্যাকম্যান

1
@ টেক্সউইকিঞ্জার আমার মনে হয় ডিরেক্টরিগুলিতে ইনোডের তালিকা থাকে, প্রকৃত ফাইলের নাম নয়।
Рахматуллин

6
@ ЯрославРахматуллин ডিরেক্টরি এন্ট্রিতে একটি ইনোড নম্বর এবং একটি ফাইলের নাম থাকে।
200_সাক্সেস

2
সুতরাং একটি ডির "আকার" কেবলমাত্র ফাইলের আকারের সাথে সম্পর্কিত, কেবল ফাইলের আকারের সাথে সম্পর্কিত?
লি

1
@ লি: হ্যাঁ, এটা ঠিক।
বিড়াল

14

"মুদ্রিত একটি ডিরেক্টরি এর আকার" ls -lকোনও ফাইল টাইপের সাথে) stat()কলটির মাধ্যমে প্রতিবেদন করা মান statbuf.st_size

st_sizeডিরেক্টরিগুলির জন্য এটি কী বোঝায় তা পুরোপুরি ফাইল সিস্টেমের ধরণের উপর নির্ভর করে। আপনি যদি ফাইল সিস্টেমের ধরণটি না জানেন এবং এর ধারণাগুলি না জানেন তবে আপনি মানটি থেকে কোনওটি কমাতে পারবেন না st_size

  • Namedতিহাসিক ইউনিক্স ফাইল সিস্টেমে সাধারণত নামকরণ করা হয় v7-fs, ডিরেক্টরিগুলি 16 বাইট এন্ট্রিগুলিতে পুনরাবৃত্তি হয়েছিল যাতে একটি 16 বিটের ইনোড নম্বর এবং 14 ফাইল বামের নাম রয়েছে। ডিরেক্টরিটির "আকার" read(2)অপারেশনের ক্ষেত্রে সার্থক ছিল এবং সর্বদা বর্ধমান বা যেমন ছিল তেমন থাকত না। .এবং ..এন্ট্রি ম্যানুয়ালি বর্তমান এবং ডিরেক্টরির একটি স্তর উপরে বিরুদ্ধে হার্ড লিঙ্ক করে নির্মিত হয়। বুদ্ধিমান খালি মেইডেন ডিরেক্টরিটির লিঙ্কের সংখ্যা 2।

  • বিএসডি-৪.২ ফাইল সিস্টেমটিতে যেহেতু 1989 (এসভিআর 4) বলা হয় ufs, ডিরেক্টরিগুলি পরিবর্তনশীল দৈর্ঘ্যের রেকর্ডগুলির একটি সিরিজ যা এমন ফর্ম্যাট ব্যবহার করে যা স্থিতিশীল হওয়ার জন্য মঞ্জুর হয় না, সুতরাং ব্যবহারকারীর স্পেস কমান্ডগুলি এই ফর্ম্যাটটি পড়ার অনুমতি নেই। রিপোর্ট করা "আকার" হ'ল ভিট-এর আকারে ভি 7-এফএস, আকারটি সাধারণত বাড়তে থাকে বা যেমন হয় তেমন থাকে তবে ফাইল সিস্টেমের নতুন সংস্করণগুলি কিছু শর্তে আকার সঙ্কুচিত করতে পারে - তবে আপনি যখন এটি আশা করতে পারেন সবসময় নয়। খালি ডিরেক্টরি হিসাবে লিঙ্ক গণনা রিপোর্ট হিসাবে 2 হয় v7-fs

  • ইন WOFS, আমি 1988 থেকে মে 1991 এর গ্রীষ্মের মধ্যে ডিজাইন করেছি এবং প্রয়োগ করেছি এমন ফাইল সিস্টেম, ডিরেক্টরিগুলি সর্বদা "আকার" 0 এর প্রতিবেদন করে এবং read(2)কল ব্যবহার করে পড়তে পারে এমন কোনও ধরণের সামগ্রী কখনও না থাকে । এটি কারণ WOFSহ'ল প্রথম কপি অন-লিখন ফাইল সিস্টেম এবং WOFSফাইলগুলিতে ডিরেক্টরিটিতে তালিকাভুক্ত হওয়ার পরিবর্তে তারা যে ডিরেক্টরিতে থাকে সেগুলি রিপোর্ট করে। আপনি যদি কোনও WOFSডিরেক্টরি ব্যবহার করে পড়েন তবে readdir()আপনি কেবলমাত্র প্রবেশের জন্য ডেটা পাবেন তবে কখনও কখনও .এবং এর জন্য নয় ..। খালি ডিরেক্টরিটির লিঙ্ক গণনাটি WOFS1 এবং পুরো আচরণটি সম্পূর্ণ পসিক্স অনুগত comp

  • ইন ZFS, যে WOFSকাগজপত্র পড়ার পরে প্রয়োগ করা হয়েছিল । ZFSএকটি অনুলিপি-রচনামূলক ফাইল সিস্টেম এবং এর লেখকরা অস্বীকার করেন না যে তারা ধারণাটি অনুলিপি করেছেন WOFS। ZFS উপর ডিরেক্টরি প্রতিবেদন number of directory entriesমধ্যে st_size, তাই রিপোর্ট "আকার" ডিরেক্টরির তথ্য থেকে দখলকৃত ডিস্ক স্থান থেকে সম্মান সঙ্গে কোনো সত্যিকারের অর্থ আছে। কোনও জেডএফএস ডিরেক্টরিতে নেই .এবং ..এন্ট্রি নেই , তবে আপনি যদি কল করেন তবে readdir()এই এন্ট্রিগুলি প্রথম দুটি ক্রিয়াকলাপের জন্য নকল হয় এবং ফিরে আসে। জেডএফএস হ'ল তালিকার একমাত্র এফএস যা হার্ড-লিংক ডিরেক্টরিগুলিকে সমর্থন করে না তবে ডিরেক্টরিগুলির জন্য লিঙ্কের গণনা সর্বদা ২ Z

  • জেডএফএসের মতো, ডাব্লুএফএল কিছুগুলি অনুলিপি করে তবে সমস্ত ধারণাগুলি থেকে নয় WOFS। কাগজটি প্রকাশের WAFLতিন বছর পরে নেটপ্পসের লেখা WOFSছিল, ডাব্লুএএফএল হ'ল কপিরাইট-অন-রাইটিং, তবে ডাব্লুএইএফএল "আকার" মানগুলি বলে মনে করছে যে অনুমানের অধীনে ডিরেক্টরিতে "সত্যিকারের ডিরেক্টরি আকার" হতে পারে।


13

একটি ডিরেক্টরি নিজের এবং এর বিষয়বস্তু সম্পর্কে মেটা-ডেটার জন্য 4096 বাইট (সর্বনিম্ন) সংরক্ষণ করে।

এছাড়াও, 4096 বাইটগুলি ext2 / ext3 / ext4 ফাইল সিস্টেমের জন্য ডিফল্ট বরাদ্দ ইউনিট (ব্লক) এবং এর জন্য ডিরেক্টরি কোনও ছোট হতে পারে না।

বিভিন্ন ফাইল সিস্টেমে আপনি বিভিন্ন ডিফল্ট আকারের ডিরেক্টরি খুঁজে পেতে পারেন যা ফাইল সিস্টেমের ডিফল্ট ব্লক আকারের কারণে।

ডিরেক্টরি আকারগুলি পূর্ণ হওয়ার সাথে সাথে তারা গতিশীলভাবেও বাড়তে পারে, তবে একবার পূরণের পরে মেটা-ডেটার জন্য সংরক্ষিত স্থান ডিরেক্টরিটি অপসারণ না করে পুনরায় বরাদ্দ করা যায় না।


1
আপনি কোন মেটা-ডেটা উল্লেখ করছেন?
স্টাফেন চেজেলাস

1
বিশদগুলি ফাইল সিস্টেমে নির্ভর করে তবে সাধারণত ফাইলের নাম, ইনোড নম্বর, ফাইলের ধরণ (ফাইল, দির, ফিফো, সকেট, ডিভাইস নোড, সিমলিংক, ইত্যাদি), মালিক, গোষ্ঠী, অনুমতি, বৈশিষ্ট্য, এসিএল, সিমলিংক লক্ষ্য অন্তর্ভুক্ত থাকে ta
কাস

6
@ ক্রেইগস্যান্ডার্স, ডিরেক্টরিটিতে কেবলমাত্র অবজেক্টের নাম এবং সংশ্লিষ্ট ইনোড নম্বর রয়েছে । ইনোডে বস্তুর ধরণ, মালিক / গোষ্ঠী, অনুমতি, এসিএল এবং বর্ধিত বৈশিষ্ট্যগুলি যেখানেই রাখা হয়েছে তার উল্লেখ রয়েছে ... অন্য যে কোনও কিছুতে পসিক্স ফাইল সিস্টেম শব্দার্থবিজ্ঞানের মারাত্মক বিভাজন ঘটবে।
ভনব্র্যান্ড

আমার ইউএফএস প্রতি ডিরেক্টরিতে নিজস্ব মেটা ডেটার জন্য মাত্র 512 বাইট সংরক্ষণ করে।
FUZxxl

4

একটি ডিরেক্টরি একটি ডিরেক্টরি ডিরেক্টরি যেমন ফোনের ডিরেক্টরি। এটি কেবল একটি ফাইল যা সংখ্যার তালিকা এবং তাদের পাশের একটি নাম। প্রতিটি সংখ্যা ফাইল-সিস্টেমের একটি ফাইলকে উল্লেখ করে (একটি ইনোড নম্বর) এবং নামটি ফাইলের নাম।

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


আপনি মেটা-ডেটা কী রাখা হয়েছে তার সঠিক বিবরণ এবং আকার বৃদ্ধির বিষয়ে ব্লক বরাদ্দ বিবেচনা অন্তর্ভুক্ত করতে পারেন। এটি ইতিমধ্যে প্রদত্ত সুন্দর রূপকথার সাথে আরও সঠিক উত্তরটি তৈরি করবে। :)
n611x007

3
@ ন্যাক্সা, এটি ফাইলসিস্টেম নির্ভর, এবং এমনকী একটি ফাইল সিস্টেমের মধ্যেও (এক্সট ৪ এর মতো), আপনি কোন বিকল্পগুলি সক্ষম করবেন তার উপর নির্ভর করে, তাই চেষ্টা করার চেয়ে এবং এটিকে পুরোপুরি ছাড়িয়ে যাওয়ার পরিবর্তে আমি এটিকে "এটি ফাইল সিস্টেম নির্ভর" হিসাবে রেখে দেব which এই প্রশ্নের জন্য প্রাসঙ্গিক।
স্টাফেন চেজেলাস
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.