এক্সট 4 পার্টিশনে 4 বিলিয়ন ফাইলের সীমা অতিক্রম করা হলে কী হবে?


46

উদাহরণস্বরূপ 5 বিলিয়ন ফাইলের ট্রান্সফার সহ একটি এক্সট 4 পার্টিশনে 4 বিলিয়ন ফাইলের সীমা অতিক্রম করা হলে কী হবে?

উত্তর:


79

সম্ভবত, আপনি "ডিভাইসে কোনও স্থান বাকি নেই" ত্রুটির কিছু স্বাদ দেখতে পাবেন:

# truncate -s 100M foobar.img
# mkfs.ext4 foobar.img
Creating filesystem with 102400 1k blocks and 25688 inodes
---> number of inodes determined at mkfs time ^^^^^
# mount -o loop foobar.img loop/
# touch loop/{1..25688}
touch: cannot touch 'loop/25678': No space left on device
touch: cannot touch 'loop/25679': No space left on device
touch: cannot touch 'loop/25680': No space left on device

এবং অনুশীলনে আপনি এই সীমাটিকে "4 বিলিয়ন ফাইল" এর চেয়ে অনেক তাড়াতাড়ি আঘাত করেছেন। উভয়ের সাথে আপনার ফাইল সিস্টেমগুলি পরীক্ষা করুন df -hএবং df -iসেখানে কতটুকু জায়গা বাকি রয়েছে তা অনুসন্ধান করুন।

# df -h loop/
Filesystem      Size  Used Avail Use% Mounted on
/dev/loop0       93M  2.1M   84M   3% /dev/shm/loop
# df -i loop/
Filesystem     Inodes IUsed IFree IUse% Mounted on
/dev/loop0      25688 25688     0  100% /dev/shm/loop

এই উদাহরণস্বরূপ, যদি আপনার ফাইলগুলি গড়ে 4K আকার না হয় তবে আপনি স্টোরেজ-স্পেসের চেয়ে খুব শীঘ্রই ইনোড-স্পেসের বাইরে চলে যান। এটা অন্য অনুপাত নির্দিষ্ট করার সম্ভব ( mke2fs -N number-of-inodesবা -i bytes-per-inodeবা -T usage-typeসংজ্ঞায়িত হিসাবে /etc/mke2fs.conf)।


1
আপনার উত্তরের জন্য ধন্যবাদ, একসময় আমি উদ্বিগ্ন, আমার প্রধান পার্টিশনে 400 মিলিয়ন ফাইল রয়েছে (রেড 50), আমার অনেক গিট রিপোজিটরি রয়েছে, এটি যদি সুরক্ষার জন্য ছিল তবে এটি হবে
বেনসুপার্পসি

5
@ensuperpc: যদি অনেকগুলি ফাইল নিয়মিতভাবে ব্যবহার না করা হয় - কেবলমাত্র ব্যাকআপের উদ্দেশ্যে - আপনি প্রতিটি প্রকল্পকে তার নিজস্ব ফাইলটিতে রাখার বিষয়টি বিবেচনা করতে পারেন। এটি ফাইলগুলির সংখ্যা যথেষ্ট হ্রাস করে এবং আপনি যদি কোনও সংকোচন বিকল্প ব্যবহার করেন তবে স্থানও দখল করে occupied
জামেএসকিফ

27
@ জেমসেকফ যদি আপনার ইতিমধ্যে git repackনা থাকে তবে পৃথক সমস্ত বস্তুকে একটি প্যাক ফাইলে একত্রিত করার জন্য প্রতিটি গিট রিপোজিটরিতে চালানোর চেষ্টা করুন।
ব্যবহারকারী 253751

13
+1 যেহেতু আপনি কেবল ব্যবহার করছেন touch, কোনও অভিনব ধারণা নেই echo, আপনি একটি গুরুত্বপূর্ণ পয়েন্ট এবং প্রায়শই তৈরি হওয়া ভুল ধারণাটিও দেখান: খালি ফাইলগুলি দিয়ে একটি ডিস্ক পূরণ করা সম্ভব।
রেক্সকোগিটানস

6
@ জামেস্কেফ git repackকোনও কার্যকারিতা আলগা করে না, এটি এখনও একই গিট রেপো হিসাবে কাজ করে, tarঅনেক প্রকল্পের জন্য এটি অপঠনযোগ্য করে তোলে কোনও প্রকল্প বা গিট সংগ্রহস্থল আশা করে
ফেরিবিগ

52

সীমাটি পৌঁছে যাওয়ার পরে, ফাইলগুলি তৈরির পরবর্তী প্রচেষ্টা ব্যর্থ হবে ENOSPC, ইঙ্গিত করে যে লক্ষ্য ফাইল সিস্টেমে নতুন ফাইলগুলির জন্য কোনও স্থান নেই।

আপনি যে দৃশ্যের বর্ণনা দিয়েছেন তাতে সীমাটি পৌঁছে গেলে সাধারণত স্থানান্তর বাতিল করতে হবে।

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