একটি ফাইলের জন্য কি হার্ডলিংকের সীমা আছে?


24

একটি ফাইলের জন্য কি হার্ডলিংকের একটি সীমা রয়েছে? এটি কোথাও নির্দিষ্ট করা হয়? লিনাক্সের নিরাপদ সীমা কি? এবং অন্যান্য পসিক্স সিস্টেমগুলির জন্য কী?

উত্তর:


16

পজিক্সের প্রয়োজন অপারেটিং সিস্টেমটি হার্ড লিঙ্কগুলির ধারণাটি বোঝে তবে হার্ড লিঙ্কগুলি কোনও বিশেষ পরিস্থিতিতে ব্যবহার করা যেতে পারে তা নয়। ফোন করে আপনি নির্দিষ্ট স্থানে কতগুলি হার্ড লিঙ্কের অনুমতি দেওয়া হয়েছে তা (এটি ফাইল সিস্টেমের ধরণের দ্বারা পৃথক হতে পারে) পেতে পারেন । সর্বনিম্ন সীমা ( ) 8, কিন্তু এই বরং অর্থহীন হিসাবে অনেক অন্যান্য ত্রুটি যাহাই হউক না কেন রিপোর্ট করতে পারেন (এর অনুমতি অস্বীকার করেছেন, ডিস্ক পূর্ণ, ...)।pathconf(filename, _PC_LINK_MAX)_POSIX_LINK_MAXlink()

statগঠন দোকানে লিংক ধরনের একটি ক্ষেত্র গণনা nlink_t, তাই এই ক্ষেত্র ধরণ আপনার সিস্টেমে একটি সর্বোচ্চ সীমা দেয়। তবে একটি ভাল সুযোগ রয়েছে যা আপনি কখনও পৌঁছাতে পারবেন না: nlink_tঅনেকগুলি ফাইল সিস্টেমে 32-বিট থাকলেও কেবল 16 বিট পাওয়া সাধারণ (লিনাক্স উত্সের একটি দ্রুত গ্রেপ দেখায় যে এক্স [234], এনটিএফএস, ইউএফএস এবং এক্সএফএস কার্নেল ডেটা স্ট্রাকচারে 16-বিট লিঙ্ক গণনা ব্যবহার করে)।


পরিপূরক হিসাবে: বিটিআরএফএস 8 বিট লিঙ্ক গণনা ব্যবহার করে বলে মনে হচ্ছে।
ম্যাকিয়েজ পাইচোটকা

@ রথার, একই ডিরেক্টরিতে হার্ড লিঙ্কগুলির জন্য 8-বিট লিঙ্ক গণনা, তবে এই ব্লগ পোস্টের অনুসারে
গিলস 'অশুভ হওয়া বন্ধ করুন'

11

এটি ফাইল সিস্টেম নির্ভর।

ext2 / 3/4 সীমা 65k লিঙ্ক

ext4 উত্স লাইন 643, struct ext4_inode->__le16 i_links_count


1
আসল সীমা 65534।
জোশুয়া 0

4
আরও কম (একই ext4.h তে পাওয়া যায়): / * কোনও ফাইলের লিঙ্কের সর্বাধিক গণনা * / # ডেফাইন EXT4_LINK_MAX 65000
PoltoS

10

লিনাক্স কার্নেল উত্সগুলিতে ext3 ইনোড কাঠামো ডিস্ক বিন্যাসের দিকে তাকানো (* অন্তর্ভুক্ত / লিনাক্স / এক্সট3_fs.h *) যা লিঙ্কগুলি একটি 16 বিট সংখ্যা হিসাবে তালিকাবদ্ধ করে

struct ext3_inode {
    ... snip ...
    __le16  i_links_count;  /* Links count */

}

আমি অনুমান করি যে এর অর্থ একটি ext3 ফাইল সিস্টেমের 65535 টি পর্যন্ত লিঙ্ক থাকতে পারে।

আমি অন্যান্য ফাইল সিস্টেমের জন্য মানগুলি পরীক্ষা করে দেখিনি।


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