هسته لینوکس برای FS Ext4 شامل پشتیبانی از عملیات حساس به حروف بزرگ و کوچک است

تد تسو، نویسنده فایل سیستم های ext2/ext3/ext4، پذیرفته شده به شاخه بعدی Linux که اساس انتشار هسته لینوکس 5.2 را تشکیل می دهد، تنظیم کنید تغییر می کند، که از عملیات حساس به حروف کوچک و بزرگ در سیستم فایل Ext4 پشتیبانی می کند. وصله ها همچنین از کاراکترهای UTF-8 در نام فایل ها پشتیبانی می کنند.

حالت عملیات حساس به حروف بزرگ و کوچک به صورت اختیاری در رابطه با فهرست‌های جداگانه با استفاده از ویژگی جدید "+F" (EXT4_CASEFOLD_FL) فعال می‌شود. هنگامی که این ویژگی روی یک فهرست تنظیم می شود، تمام عملیات با فایل ها و زیرشاخه های درون آن به حروف بزرگ و کوچک حساس نیستند، از جمله حروف بزرگ و کوچک هنگام جستجو و باز کردن فایل ها نادیده گرفته می شود (به عنوان مثال، فایل های Test.txt، test.txt و test.TXT در چنین مواردی دایرکتوری ها یکسان در نظر گرفته خواهند شد). به‌طور پیش‌فرض، به استثنای دایرکتوری‌هایی با ویژگی «+F»، سیستم فایل همچنان به حروف کوچک و بزرگ حساس است. برای کنترل گنجاندن حالت حساس به حروف بزرگ، مجموعه ای اصلاح شده از ابزارهای کمکی ارائه شده است e2fsprogs.

پچ های تهیه شده توسط گابریل کریسمن برتازی از Collabora و پذیرفته شده با هفتم تلاش های پس از سه سال توسعه و حذف نظرات پیاده سازی فرمت ذخیره سازی دیسک را تغییر نمی دهد و فقط در سطح تغییر منطق مقایسه نام در تابع ext4_lookup() و جایگزینی هش در ساختار dcache (Directory Name Lookup Cache) کار می کند. مقدار ویژگی "+F" در inodeهای دایرکتوری های جداگانه ذخیره می شود و به همه فایل های تودرتو و زیر شاخه ها منتشر می شود. اطلاعات رمزگذاری در superblock ذخیره می شود.

برای جلوگیری از برخورد با نام فایل‌های موجود، ویژگی «+F» را فقط می‌توان روی فهرست‌های خالی در سیستم‌های فایلی تنظیم کرد که پشتیبانی یونیکد در نام فایل‌ها و دایرکتوری‌ها در مرحله mount فعال است. نام ورودی‌های دایرکتوری که ویژگی «+F» برای آن‌ها فعال است، به‌طور خودکار به حروف کوچک تبدیل می‌شوند و در این فرم در dcache منعکس می‌شوند، اما به شکلی که کاربر در ابتدا تنظیم کرده بود، روی دیسک ذخیره می‌شود. علیرغم پردازش نام‌ها بدون توجه به حروف، نام‌ها بدون از دست دادن اطلاعات مربوط به مورد شخصیت‌ها نشان داده و ذخیره می‌شوند (اما سیستم به شما اجازه نمی‌دهد یک نام فایل با همان کاراکترها، اما در حالت متفاوت ایجاد کنید).

منبع: opennet.ru

اضافه کردن نظر