استاندارد سلسله‌مراتب سیستم‌فایل

استانداردِ سلسله‌مراتبِ سیستمِ فایل (FHS)، ساختار و محتوای دیرکتوری در سیستم‌عامل‌های شبه‌یونیکسی را معین می‌کند. این استاندارد توسط بنیاد لینوکس پشتیبانی می‌شود. آخرین نسخه این استاندارد نسخه ۳٫۰ است که در تاریخ سه ژوئن ۲۰۱۵ عرضه شد. در حال حاضر این استاندارد فقط در سیستم‌عامل لینوکس استفاده می‌شود.

 ساختار دیرکتوری 
300px|thumb|سلسله‌مراتب سیستم‌فایل معمول اوبونتو
در استانداردِ سلسله‌مراتبِ سیستمِ فایل(FHS)، تمامی فایل‌ها و دایرکتوری‌ها در زیر دیرکتوریِ ریشه (root directory) / حضور دارند (حتی اگر آن دیرکتوری و فایل‌ها روی دستگاه‌های فیزیکی و مجازی دیگری (نسبت به دیرکتوری ریشه) ذخیره شده باشند). بعضی از این دایرکتوری‌ها فقط روی یک سیستم مشخص وجود دارند، درصورتی که زیرسیستم‌های مشخصی، مانند سامانهٔ پنجرهٔ اکس نصب شده باشد.

بیشتر این دایرکتوری‌ها در تمامی سیستم‌های عامل یونیکسی وجود دارند و به‌طور کلی کاربرد و کارکرد آن‌ها در سیستم‌های مختلف شبیه به هم است. با این حال توضیحاتی که در مورد کارکرد دایرکتوری‌ها در ذیل خواهد آمد مشخصاً برای FHS استفاده می‌شود و برای سکوهای رایانش دیگر به غیر از لینوکس معتبر نیستند.

توضیحاتدیرکتوریدیرکتوری ریشهٔ کل سلسله‌مراتب سیستم فایل/فایل‌های باینری مربوط به دستورها و برنامه‌های لینوکس (که از خط فرمان صدا زده می‌شوند) که باید برای حالت تک‌کاربره برای تمام کاربران دردسترس باشند مانند cat یا ls یا cp/binفایل‌های مربوط به Boot loader (بارگذار راه‌انداز) مانند هسته یا همان kernel و initrd/bootفایل‌های دستگاهی ضروری مانند /dev/null//devفایل‌های تنظیمات سراسری سیستم (مربوط به تمام سیستم)
در مورد نام این دیرکتوری مناقشاتی وجود داشته‌است. در نسخه‌های اولیهٔ سند پیاده‌سازی یونیکس، در آزمایشگاه بِل، بیان می‌شود که نام این دیرکتوری از کلمهٔ etcetera گرفته شده‌است. چرا که در ابتدا این دیرکتوری فایل‌هایی را در خود نگه می‌داشت که به دایرکتوری‌های دیگر تعلق نداشت (گرچه امروزه FHS این دیرکتوری را ملزم به نگهداری فایل‌های متنیِ تنظیمات می‌کند و این دیرکتوری نباید شامل فایل‌های باینری باشد). از زمان  انتشار سند اولیهٔ مذکور وجه تسمیهٔ (دلیل نامگذاری) این دیرکتوری به طُرُق مختلف بارها توضیح داده شده‌است. بعضی نام این دیرکتوری را مخفف Editable Text Configuration به معنای تنظیمات متنیِ قابل ویرایش می‌دانند و بعضی Extended Tool Chest به معنای صندوقچهٔ توسعه‌یافتهٔ ابزار/etcفایل‌های تنظیمات مربوط به بسته‌های (پکیج‌ها) افزونه‌ها/etc/optفایل‌های تنظیمات، مانند کاتالوگ‌ها، مربوط به نرم‌افزاری که SGML پردازش می‌کند./etc/sgmlفایل‌های تنظیمات برای سامانهٔ پنجرهٔ اکس، نسخه ۱۱/etc/X11فایل‌های تنظیمات، مانند کاتالوگ‌ها، برای نرم‌افزاری که فایل XML را پردازش می‌کند./etc/xmlدایرکتوری‌های خانهٔ کاربران، که حاوی فایل‌های ذخیره شده و تنظیمات شخصی و غیره می‌باشد./homeفایل‌های کتابخانه‌ای (لایبرری) که وجودشان برای فایل‌های باینری در /bin و /sbin ضروری است./libدر این دیرکتوری رسانه‌های جداشدنی مانند درایو فلش یا لوح فشرده یا یو اس بی[USB] به صورت دیرکتوری نمایش داده می‌شوند./mediaسیستم فایل‌هایی که به صورت موقت mount می‌شوند./mntبسته‌های (پکیج‌های) نرم‌افزاری اختیاری/optسیستم فایل مجازی که اطلاعات مربوط به فرایندها و هسته (کرنل) را به صورت فایل فراهم می‌کند./procدیرکتوری خانه برای کاربر روت/rootفایل‌های باینری سیستمی مانند fsck و init و route/sbinداده‌های مربوط به سایت که سیستم در اختیار کاربران قرار می‌دهد، مانند داده‌ها و اسکریپت‌هایی که توسط وب‌سرور ارائه می‌شود یا داده‌هایی که به وسیلهٔ سرور FTP ارائه می‌شود و مخازنی(repository) که مربوط به سامانه‌های کنترل نسخه می‌باشند/srvفایل‌های موقتی؛ که طول عمرشان از یک بازراه‌اندازی سیستم تا بازراه‌اندازی بعدی سیستم است به عبارت دیگر میان دو بازراه‌اندازی یعنی با بازراه‌اندازی سیستم این فایل‌ها پاک می‌شوند و ممکن است این فایل‌ها محدودیت حجمی در ذخیره داشته باشند./tmpسلسله‌مراتب ثانوی برای داده‌های کاربر، که شامل اکثر اپلیکیشن‌های کاربران می‌شود./usrباینری‌های دستورهای غیرضروری (که در حالت تک‌کاربره نیازی به آن‌ها نیست) برای تمامی کاربران/usr/binفایل‌های سرآیند استاندارد/usr/includeفایل‌های کتابخانه‌ای برای فایل‌های باینری که در دایرکتوری‌های /usr/bin و /usr/sbin وجود دارند./usr/libسلسله‌مراتب سومی برای داده‌های محلیِ مختص این هاست./usr/localفایل‌های باینری غیرضروری سیستمی مانند دیمِن‌هایی برای سرویس‌های شبکه/usr/sbinکد منبع، مانند کد منبع هسته (کرنل) به همراه فایل‌های سرآیند آن/usr/srcفایل‌های متغیر (تغییرپذیر) -فایل‌هایی که انتظار می‌رود تا محتویات آن‌ها به‌طور پیوسته در طول عملیات سیستم‌عامل در حال تغییر باشد- مانند فایل‌های لاگ و فایل‌های موقتی ایمیلShould be shareable and read-only, cf. http://www.pathname.com/fhs/pub/fhs-2.3.html./varدادهٔ مربوط به کَشِ برنامه‌ها. این داده‌ها به صورت محلی، در نتیجهٔ عملیات ورودی/ خروجی یا عملیات‌های محاسباتی زمان‌بر تولید می‌شوند. برنامه باید بتواند در صورت لزوم این نوع داده‌ها را دوباره تولید یا ذخیره کند. فایل‌های کَش را می‌توان پاک کرد، بدون آنکه داده‌ای از دست برود (چرا که دوباره برنامه می‌تواند آن‌ها را تولید کند)/var/cacheلاک فایل‌ها. فایل‌هایی که اطلاعات مربوط به منابع در حال استفاده را پیگیری و نگهداری می‌کنند./var/lockفایل‌های لاگ. لاگ‌های مختلف/var/logصندوق رایانامهٔ (صندوق پستی) کاربر/var/mailفایل‌های موقتی که طول عمرشان از یک بازراه‌اندازی تا بازراه‌اندازی دیگر سیستم (میان دو بازراه‌اندازی) است./var/tmp

 تاریخچه 
 نسخهتاریخ انتشار ملاحظات  ۱۹۹۴-۰۲-۱۴ FSSTND  ۱۹۹۴-۱۰-۰۹ FSSTND  ۱۹۹۵-۰۳-۲۸ FSSTND  ۱۹۹۷-۱۰-۲۶ FHS جانشین FSSTND 1.2 می‌باشد در این نسخه نام استاندارد به سلسله مراتب سیستم فایل تغییر کرد  ۲۰۰۰-۰۴-۱۲ FHS  ۲۰۰۱-۰۵-۲۳ FHS  ۲۰۰۴-۰۱-۲۹ FHS  ۲۰۱۵-۰۵-۱۸ FHS 

 جستارهای وابسته 
 لینوکس

 منابع 

رده:استانداردهای رایانه
رده:دایرکتوری‌های سیستم فایل
رده:فناوری‌های مرتبط با فایل‌سیستم در یونیکس
رده:لینوکس
رده:مدیریت سیستم