lsof

از ویکی‌پدیا، دانشنامهٔ آزاد

lsof
توضیحنمایش لیستی از فایل‌های باز
(ها)سیستم‌عاملشبه‌یونیکس
گونهمدیریت سیستم
طراح(ها)Vic Abell
اجازه‌نامهاجازه‌نامه بی‌اس‌دی
وب‌گاهhttp://people.freebsd.org/~abe
در حال خواندن تمام فایل‌های سیستم عامل

lsof که سرنام کلمات "list open files" است، فرمانی در سیستم‌عامل‌های شبه‌یونیکس است که لیستی از تمام فایل‌های باز شده و همچنین پروسه‌هایی که آن فایلها را باز کرده‌اند در اختیار قرار می‌دهد. lsof برنامه‌ای متن‌باز است و توسط Vic Abell نوشته شده و پشتیبانی می‌شود.

فایل‌های باز شده در یک سیستم می‌توانند شامل دیسک سخت، Pipe، سوکت اینترنت و وسایل سخت‌افزاری باشند که توسط پروسه‌های مختلف باز شده‌اند و در حال استفاده‌اند. یکی از کاربردهای این دستور می‌تواند زمانی باشد که به دلیل استفاده از یک فایل نامشخص، امکان جدا کردن (Unmount) دیسک سخت وجود نداشته باشد. با لیست کردن فایل‌های باز توسط این فرمان (و با استفاده از فیلتر مناسب برای خروجی دستور)، می‌توان پی برد که چه پروسه‌ای در حال استفاده از آن فایل خاص است.

مثالهای کاربردی[ویرایش]

برای نشان دادن اینکه چه پروسه‌هایی در حال استفاده از فایل‌های موجود در مسیر var/ هستند :

 # lsof /var
 COMMAND     PID     USER   FD   TYPE DEVICE SIZE/OFF     NODE NAME
 syslogd     350     root    5w  VREG  222,5        0 440818 /var/adm/messages
 syslogd     350     root    6w  VREG  222,5   339098   6248 /var/log/syslog
 cron        353     root  cwd   VDIR  222,5      512 254550 /var -- atjobs

برای نمایش پورت اختصاص داده شده به یک برنامه :

  # lsof -i -n -P | grep sendmail
  sendmail  31649    root    4u  IPv4 521738       TCP *:25 (LISTEN)

فرمان بالا نشان می‌دهد که برنامهٔ sendmail در حال استفاده از پورت استاندارد ۲۵ است.

  • سوییچ i- برای نمایش سوکت‌های IP
  • سوییچ n- برای اینکه نشانی‌ها به دامنه اینترنتی تبدیل نشوند
  • سوییچ P- برای اینکه بجای نام پورت، عدد آن را نمایش دهد

جستارهای وابسته[ویرایش]

پیوند به بیرون[ویرایش]

منابع[ویرایش]

مشارکت‌کنندگان ویکی‌پدیا. «lsof». در دانشنامهٔ ویکی‌پدیای انگلیسی، بازبینی‌شده در ۱۷ آبان ۱۳۸۹.