GNU/Linux >> Znalost Linux >  >> Linux

Sledování aktivity Syscall v Linuxu pomocí Process Monitor (Procmon)

Microsoft již několik posledních let odvádí chvályhodnou práci ve prospěch Linuxu i open-source. Otevřeli mnoho aplikací, jako je VSCode, .NET, Teams, prohlížeč Edge atd. Nedávným přírůstkem do seznamu je Process Monitor . Process Monitor, krátce Procmon , umožňuje vývojářům pohodlně a snadno sledovat aktivitu syscall v systémech Linux.

Process Monitor je linuxové přepracování klasického nástroje Procmon ze sady Sysinternals nástrojů pro Windows. Sada Sysinternals obsahuje několik nástrojů pro správu, diagnostiku, odstraňování problémů a monitorování systému Microsoft Windows. Process Monitor je součástí sady Sysinternals.

Process Monitor je pokročilý monitorovací nástroj pro Windows, který zobrazuje systém souborů, registr a aktivitu procesů/vlákna v reálném čase. V operačních systémech Windows v reálném čase monitoruje souborový systém, registr, procesy, vlákna a aktivitu DLL.

Linux má samozřejmě nativní nástroj příkazového řádku s názvem Strace ke sledování systémových volání a signálů. Strace je cool, ale pohledy na Procmon byly podle mého názoru vždy čistší a hezčí.

Společnost Microsoft vydala Procmon pro Linux před několika měsíci. Procmon je napsán v C++ a jeho zdrojový kód je volně dostupný na GitHubu.

Instalace Process Monitor v Linuxu

Ujistěte se, že jste přidali úložiště softwaru Microsoft Linux ve vašem systému Linux. Například spusťte následující příkazy pro přidání úložiště Microsoft Linux na Ubuntu Linux:

$ wget -q https://packages.microsoft.com/config/ubuntu/$(lsb_release -rs)/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
$ sudo dpkg -i packages-microsoft-prod.deb
$ sudo apt update

Po povolení úložiště Microsoft spusťte následující příkaz k instalaci Procmon na Ubuntu:

$ sudo apt install procmon

V jiných distribucích Linuxu nahraďte apt se správcem balíčků vaší distribuce. Například můžete nainstalovat Procmon do Fedory, RHEL pomocí příkazu:

$ sudo dnf install procmon

Sledujte aktivitu Syscall v Linuxu pomocí Process Monitor

Chcete-li sledovat všechny procesy a systémová volání ve vašem systému Linux, spusťte Process monitor jako sudo nebo root uživatel bez jakýchkoli možností:

$ sudo procmon

Ukázkový výstup:

Chcete-li zobrazit vlastnosti události jakéhokoli procesu, stačí jej vybrat a stisknout klávesu ENTER.

Můžete použít funkční klávesy F1 na F9 k provádění různých úkolů, jako je zobrazení nápovědy, řazení procesů, vyhledávání, filtrování, export, zobrazování statistik atd. Například stiskněte F8 zobrazíte top 10 statistik systémového volání. Chcete-li ukončit Process Monitor, stiskněte q nebo F9 klíč.

V současné době obsahuje Procmon pro Linux pouze omezenou sadu funkcí. Ve skutečnosti to vypadá jako zlomek toho, co monitor procesů dělá na Windows. Pokud může být Procmon tak úplný jako pod Windows, bylo by to pro vývojáře Linuxu užitečnější. Další podrobnosti najdete na stránce projektu GitHub.


Linux
  1. Monitorujte svůj systém Linux ve svém terminálu pomocí procps-ng

  2. Jak monitorovat ethernetovou aktivitu v Linuxu pomocí Arpwatch

  3. Jak sledovat aktivitu uživatele v Linuxu

  1. Jak monitorovat zabezpečení serveru Linux pomocí Osquery

  2. Proč spouštět příkaz prostředí Linux s '&'?

  3. Ekvivalent Process Monitor pro Linux?

  1. Monitorujte svou Javu na Linuxu pomocí jconsole

  2. Monitorujte svůj Linux server pomocí Checkmk

  3. Jak monitorovat systém Linux pomocí příkazu Glances