سیستم فایل proc چیست؟

سیستم فایل proc/ یک سیستم فایل مجازی است

آموزش و رفع مشکلات مرتبط به انواع فایل سیستم در لینوکس
ارسال پست
نمایه کاربر
phoenix
مدیر کل سایت
مدیر کل سایت
پست در این موضوع: 1
پست: 201
تاریخ عضویت: شنبه 29 مهر 1396, 11:10 am
محل اقامت: مشهد
نوع دسکتاپ: LXQT
تماس:

سیستم فایل proc چیست؟

پست توسط phoenix » جمعه 12 آبان 1396, 5:40 pm

سیستم فایل proc/ یک سیستم فایل مجازی است که در حافظه اصلی قرار دارد و به محض boot شدن ایجاد شده و توسط هسته خوانده/نوشته و کنترل میشود و پس از خاموش شدن سیستم از بین خواهد رفت و بعد از راه اندازی مجدد سیستم یا روشن شدن مجدد سیستم از نو ایجاد و فایل های آن مقداردهی میشوند. بسیاری از ابزارها از فایل های درون این دایرکتوری استفاده میکنند. محتوای درون این دایرکتوری از دون نوع هستند:
دایرکتوری های عددی که هر کدام مربوط به یک قرایند می باشد و همچنین دایرکتوری های غیرعددی و دومین نوع محتوا فایل ها می باشند. همانطور که گفتم proc یک سیستم فایل واقعی نیست و یک سیستم فایل مجازی است و اگر دستور ls -l را اجرا کنید خواهید دید که حجم یا اندازه فایل ها و دایرکتوری های آن صفر است.

کد: انتخاب همه

[phoenix@phoenix proc]$ ls -l
total 0
dr-xr-xr-x.  9 root    root                  0 Nov  3 09:07 1
dr-xr-xr-x.  9 root    root                  0 Nov  3 09:07 10
dr-xr-xr-x.  9 root    root                  0 Nov  3 09:08 1009
dr-xr-xr-x.  9 root    root                  0 Nov  3 09:08 1010
dr-xr-xr-x.  9 root    root                  0 Nov  3 09:08 1012
dr-xr-xr-x.  9 root    root                  0 Nov  3 09:08 1013
dr-xr-xr-x.  9 root    root                  0 Nov  3 09:08 1014
dr-xr-xr-x.  9 root    root                  0 Nov  3 09:08 1026
dr-xr-xr-x.  9 root    root                  0 Nov  3 09:08 1027
dr-xr-xr-x.  9 root    root                  0 Nov  3 09:07 103
dr-xr-xr-x.  9 root    root                  0 Nov  3 09:07 104
dr-xr-xr-x.  9 root    root                  0 Nov  3 09:08 1049
dr-xr-xr-x.  9 root    root                  0 Nov  3 09:07 105
dr-xr-xr-x.  9 root    root                  0 Nov  3 09:08 1051
dr-xr-xr-x.  9 root    root                  0 Nov  3 09:08 1053
dr-xr-xr-x.  9 root    root                  0 Nov  3 09:08 1055
dr-xr-xr-x.  9 root    root                  0 Nov  3 09:08 1056
دایرکتوری های عددی به ازای هر فرآیند هستند و درون آنها نیز فایل ها و دایرکتوری های دیگری مطابق با همان فرایند وجود دارد. عدد دایرکتوری مربوط به شناسه آن فرایند است. همچنین فایل های درون خود دایرکتوری proc/ نیز اطلاعات خاصی از وضعیت فعلی سیستم را دارند که توسط هسته نوشته/خوانده و یا کنترل می شود. این فایلها(چه در زیر خود دایرکتوری proc/ یا چه در دایرکتوری های دیگر) توسط برنامه ها مورد استفاده قرار میگیرند.بطور مثال دستور hostname فایل زیر را میخواند تا HOSTNAME را نشان دهد.

کد: انتخاب همه

cat /proc/sys/kernel/hostname
و حال بخواهید بطور موقتی نام ماشین را تغییر دهید به عنوان مثال به fedora از دستور زیر استفاده کنید

کد: انتخاب همه

echo fedora > /proc/sys/kernel/hostname
امام این تغییر فایل دائمی نیست و به محض خامو یا Restart شدن از میان خواهد رفت. فایل های درون دایرکتوری proc/ همگی تنها خواندنی هستند و تنها هسته می تواند آنها را تغییر دهد یعنی تمامی کاربران به جز root دسترسی read only دارند و کاربر root میتواند بصورت بالا با دستور echo آنها را تغییر دهد یا اینکه با استفاده از دستورهایی بتوان آنها را خواند.

کد: انتخاب همه

stat -c%A /proc/sys/kernel/hostname
فایل هایی را که میتوان تغییر داد به دوگونه هستند فایلی که رشته ای را قبول میکند مانند آنچه که درباره فایل hostname گفته شد و فایل هایی که یک مقدار باینری یعنی 0 یا 1 را میگیرند مانند فایل ip_forward بطور خاص دستور sysctl برای تغییر فایل های درون دایرکتوری proc/sys/ استفاده میشود.
 ! پیام از: phoenix
برای توضیحات تکمیلی در ارتباط با دستورات cat و stat و echo و ls میتوانید بر روی هر دستور کلیک تا به صفحه همان دستور ارجاع داده شوید
تصویر برای ادامه کار و بالا رفتن کیفیت آموزش ها نیاز به حمایت مالی شما داریم پس لطفا از ما حمایت کنید
از اونجایی که برای جمع آوری و ترجمه و تالیف یک پست آموزشی زمان و زحمت زیادی صرف شده است.
لطفاً در صورت استفاده از این مطلب در سایت یا مقاله و ..... حتما با ذکر منبع و لینک برگشتی باشد.

مسلما این حمایت شما دوستان موجب پایداری اینگونه اثرها خواهد بود سربلند و پیروز باشین

ارسال پست

بازگشت به “آموزش - سوالات و مشکلات فایل سیستم در لینوکس”