Esta pagina se ve mejor con JavaScript habilitado

Averiguar a que Jail pertenece un proceso en FreeBSD

 ·  🎃 kr0m

Utilizar Jails como sistema de virtualización nos permite un uso mas eficiente de los recursos del sistema pero también puede causar problemas si un proceso de una de las Jails consume recursos de forma descontrolada, en estos casos debemos determinar a que Jail pertenece el proceso conflictivo ya sea para debugear la causa del problema o reiniciarlo.

El comando en sí es muy sencillo, tan solo debemos añadir la opción jid a un ps auwx tradicional, a continuación vemos su funcionamiento en un sistema con Jails mediante CBSD y mediante Iocage .


  • CBSD:

Consultamos las Jails disponibles:

bagheera # ~> cbsd jls

JNAME  JID  IP4_ADDR       HOST_HOSTNAME          PATH                    STATUS
jail1  17   192.168.69.X   jail1.alfaexploit.com  /usr/jails/jails/jail1  On        

Como ejemplo vamos a identificar el proceso Cron de la Jail con jid: 17 y del servidor padre:

bagheera # ~> ps -o jid -auwx|grep cron

 17 root       51357   0.0  0.0    11348   2632  -  INsJ 12:51      0:00.00 /usr/sbin/cron -s
  0 root       94054   0.0  0.0    11392   2780  -  Is   07:00      0:00.04 /usr/sbin/cron -s

  • IOCAGE:

Consultamos las Jails disponibles:

MightyMax # ~> iocage list

+-----+----------+-------+--------------+--------------+  
| JID |   NAME   | STATE |   RELEASE    |     IP4      |  
+=====+==========+=======+==============+==============+  
| 1   | DrWho    | up    | 12.1-RELEASE | 192.168.69.X |  
+-----+----------+-------+--------------+--------------+  
| 5   | Mistery  | up    | 12.1-RELEASE | 192.168.69.X |  
+-----+----------+-------+--------------+--------------+  
| 4   | Potras   | up    | 12.1-RELEASE | 192.168.69.X |  
+-----+----------+-------+--------------+--------------+  
| 7   | rTorrent | up    | 12.1-RELEASE | 192.168.69.X |  
+-----+----------+-------+--------------+--------------+

Identificamos el proceso Cron de las Jails y del servidor padre:

MightyMax # ~> ps -o jid -auwx|grep cron

  4 root     31389   0.0  0.0   11352    740  -  SsJ  31Aug20      0:18.83 /usr/sbin/cron -J 15 -s  
  5 root     47216   0.0  0.0   11352    924  -  SsJ   9Sep20      0:30.68 /usr/sbin/cron -J 15 -s  
  0 root     59237   0.0  0.0   11404   1368  -  Ss   31Aug20      0:18.43 /usr/sbin/cron -s  
  7 root     75964   0.0  0.0   11248   1664  -  SsJ  Mon12        0:01.27 /usr/sbin/cron -J 15 -s  
  1 root     89066   0.0  0.0   11352    964  -  SsJ  31Aug20      0:19.11 /usr/sbin/cron -J 15 -s

NOTA: El jid 0 indica que el proceso pertenece al equipo padre y no a una Jail.

Si te ha gustado el artículo puedes invitarme a un RedBull aquí