سلام بله میتونید براش یک اسکریپت بنویسید. برای چک کردن چندین پورت هم میتونید از آپشن -i استفاده کنید. بخش شماره 5 آموزش زیر را برای کسب اطلاعات بیشتر بخونید.
دستور lsof در لینوکس به همراه 10 مثال عملی
اطلاعیه
بستن
هنوز اطلاعیه ای در دست نیست.
چگونه بفهمیم در لینوکس چه کسی در حال استفاده از یک فایل است
بستن
X
-
چگونه بفهمیم در لینوکس چه کسی در حال استفاده از یک فایل است
در این مقاله ما نحوه ی پیدا کردن کسی که درحال استفاده از یک فایل خاص در لینوکس است را شرح خواهیم داد. این امر به شما کمک می کند تا process و کاربری که در حال استفاده از یک فایل باز هست را بدانید.
ما می توانیم دستور lsof را برای فهمیدن اینکه کسی از فایلی استفاده میکند و دقیقا چه کاربری، اجرا کنیم. این دستور در سرچ خودش برای فایلهای باز، kernel memory را می خواند و به شما کمک میکند همه ی فایل های باز را لیست کنید. در این چنین شرایطی یک فایل باز ممکن است یک فایل خاص، یک دایرکتوری، یک block special file، یک character special file، یک stream، یک فایل network و موارد بیشمار دیگری باشد زیرا در لینوکس همه چیز تنها یک فایل است.
ابزار lsof در یک فایل سیستم تنها برای شناسایی کسی که در حال استفاده از فایلی که رو آن سیستم عامل است، استفاده می شود. شما می توانید دستور lsof را روی فایل سیستم لینوکس اجرا کنید و خروجی مشخص کننده ی اطلاعات process و owner مربوط به پروسس هایی است که از فایل استفاده می کنند. خروجی زیر را مشاهده کنید :
کد PHP:$ lsof /dev/null
کد PHP:COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
systemd 1843 mohammad 0r CHR 1,3 0t0 6 /dev/null
dbus-daem 1925 mohammad 0u CHR 1,3 0t0 6 /dev/null
gnome-ses 1928 mohammad 0r CHR 1,3 0t0 6 /dev/null
at-spi-bu 2041 mohammad 0r CHR 1,3 0t0 6 /dev/null
dbus-daem 2046 mohammad 0u CHR 1,3 0t0 6 /dev/null
at-spi2-r 2048 mohammad 0u CHR 1,3 0t0 6 /dev/null
gnome-she 2066 mohammad 0r CHR 1,3 0t0 6 /dev/null
gvfsd 2073 mohammad 0r CHR 1,3 0t0 6 /dev/null
gvfsd-fus 2078 mohammad 0r CHR 1,3 0t0 6 /dev/null
pulseaudi 2088 mohammad 0r CHR 1,3 0t0 6 /dev/null
ibus-daem 2096 mohammad 0r CHR 1,3 0t0 6 /dev/null
ibus-dcon 2100 mohammad 0r CHR 1,3 0t0 6 /dev/null
ibus-dcon 2100 mohammad 1w CHR 1,3 0t0 6 /dev/null
ibus-dcon 2100 mohammad 2w CHR 1,3 0t0 6 /dev/null
ibus-exte 2101 mohammad 0r CHR 1,3 0t0 6 /dev/null
ibus-exte 2101 mohammad 1w CHR 1,3 0t0 6 /dev/null
ibus-exte 2101 mohammad 2w CHR 1,3 0t0 6 /dev/null
ibus-x11 2103 mohammad 0r CHR 1,3 0t0 6 /dev/null
...
کد PHP:$ lsof -u mohammad
کد PHP:COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
systemd 1480 mohammad cwd DIR 8,3 4096 2 /
systemd 1480 mohammad rtd DIR 8,3 4096 2 /
systemd 1480 mohammad txt REG 8,3 1595792 3147496 /lib/systemd/systemd
systemd 1480 mohammad mem REG 8,3 1700792 3150525 /lib/x86_64-linux-gnu/libm-2.27.so
systemd 1480 mohammad mem REG 8,3 121016 3146329 /lib/x86_64-linux-gnu/libudev.so.1.6.9
systemd 1480 mohammad mem REG 8,3 84032 3150503 /lib/x86_64-linux-gnu/libgpg-error.so.0.22.0
systemd 1480 mohammad mem REG 8,3 43304 3150514 /lib/x86_64-linux-gnu/libjson-c.so.3.0.1
systemd 1480 mohammad mem REG 8,3 34872 2497970 /usr/lib/x86_64-linux-gnu/libargon2.so.0
systemd 1480 mohammad mem REG 8,3 432640 3150484 /lib/x86_64-linux-gnu/libdevmapper.so.1.02.1
systemd 1480 mohammad mem REG 8,3 18680 3150450 /lib/x86_64-linux-gnu/libattr.so.1.1.0
systemd 1480 mohammad mem REG 8,3 18712 3150465 /lib/x86_64-linux-gnu/libcap-ng.so.0.0.0
systemd 1480 mohammad mem REG 8,3 27112 3150489 /lib/x86_64-linux-gnu/libuuid.so.1.3.0
systemd 1480 mohammad mem REG 8,3 14560 3150485 /lib/x86_64-linux-gnu/libdl-2.27.so
...
کد PHP:$ sudo lsof -i TCP:80
کد PHP:COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
httpd 903 root 4u IPv6 20222 0t0 TCP *:http (LISTEN)
httpd 1320 apache 4u IPv6 20222 0t0 TCP *:http (LISTEN)
httpd 1481 apache 4u IPv6 20222 0t0 TCP *:http (LISTEN)
httpd 1482 apache 4u IPv6 20222 0t0 TCP *:http (LISTEN)
httpd 1493 apache 4u IPv6 20222 0t0 TCP *:http (LISTEN)
httpd 1763 apache 4u IPv6 20222 0t0 TCP *:http (LISTEN)
httpd 2027 apache 4u IPv6 20222 0t0 TCP *:http (LISTEN)
httpd 2029 apache 4u IPv6 20222 0t0 TCP *:http (LISTEN)
httpd 2044 apache 4u IPv6 20222 0t0 TCP *:http (LISTEN)
httpd 3199 apache 4u IPv6 20222 0t0 TCP *:http (LISTEN)
httpd 3201 apache 4u IPv6 20222 0t0 TCP *:http (LISTEN)
برای اطلاعات بیشتر به صفحه ی راهنمای دستور lsof مراجعه کنید.
کد PHP:$ man lsof
همچنین توصیه میشود مطالعه کنید.
دستور lsof در لینوکس به همراه 10 مثال عملی
ابزار fswatch - مانیتور کردن تغییرات فایل ها و دایرکتوری ها در لینوکس
امنیت فایل ها و دایرکتوری ها با استفاده از ACL در لینوکس
دستور chattr برای ایجاد فایل های مهم و غیر قابل تغییر در لینوکس
در این پست ما نحوه ی تشخیص کاربری که در حال استفاده از فایل خاصی در لینوکس است را شرح دادیم و نحوه ی شناسایی اطلاعات مربوط به owner و process هایی که در حال استفاده از یک فایل باز هستند را نمایش دادیم. سوال و نطرات خود را با ما به اشتراک بگدارید.آخرین ویرایش توسط Habili; در تاریخ/ساعت 02-07-2021, 03:47 PM.
یک نظر بدهید: