
Bienvenidos a este capítulo del Curso de Linux para Hackers – Gestión de Procesos II. Comparte este articulo y síguenos para recibir más capítulos y cursos gratis.
Esta guía es parte de un curso mucho más grande en donde te enseñamos a convertirte en hacker de 0 a 100. Desde los conocimientos más básicos hasta conseguir empleo.
En esta guía veremos desde cero un tema tan amplio como es Linux y lo haremos desde el punto de vista del hacking y la ciberseguridad.
Para saber más comente a continuación, respondemos todos y cada uno de los comentarios.
¿Te gustaría enterarte de cuando lanzamos descuentos y nuevos cursos?

Conceptos que aprenderás en esta sección:
- Localización de procesos por nombre con
pidofypgrep: cómo obtener el PID de un proceso a partir de su nombre. - Prioridad de procesos con
nice: cómo ajustar la prioridad de un proceso al iniciarlo. - Cambio de prioridad con
renice: modificar la prioridad de un proceso en ejecución. - Consulta de ayuda y manual (
man): dónde encontrar información detallada sobrepidof,pgrep,niceyrenice.
Localización del proceso mediante el comando pidof y pgrep
El comando pidof también nos permite localizar el proceso. Si queremos rastrear un proceso por su nombre, el comando pidof nos será muy útil. Muestra los PID de los procesos cuando se utiliza con el nombre del proceso.
Para localizar el PID de un proceso, ejecute el comando pidof de la siguiente manera:
pidof nombre_proceso
Si tenemos el proceso en ejecución con el nombre exacto nano , ejecute el comando de la siguiente manera para obtener sus PID.
pidof nano
Considere el siguiente resultado:

El comando pidof es otra herramienta en Unix/Linux que permite obtener el ID de proceso (PID) de programas que están actualmente en ejecución, a diferencia de pgrep, que tiene opciones más avanzadas de filtrado. pidof es especialmente útil cuando solo necesitas rápidamente el PID de un proceso específico para tareas como matar el proceso o monitorearlo.
La sintaxis básica de pidof es:
pidof [opciones] <nombre_del_programa>
Aquí tienes algunos ejemplos prácticos de cómo usar pidof en Linux.
Ejemplos de Uso de pidof
Obtener el PID de un proceso específico:Este comando devolverá el PID de un proceso que coincide con el nombre dado. Por ejemplo, si queremos encontrar el PID del proceso nginx:
pidof nginx
Esto devolverá uno o varios PIDs si hay múltiples instancias de nginx en ejecución.
Verificar si un proceso está activo:Si deseas verificar si un proceso está en ejecución, puedes combinar pidof con un condicional. Esto es útil para scripts de shell que necesitan verificar el estado de un servicio.
if pidof nginx > /dev/null;
then echo "Nginx está en ejecución"
else echo
"Nginx no está en ejecución"
fi
Matar un proceso usando pidof:Puedes usar pidof junto con kill para detener un proceso específico. Esto es útil cuando necesitas finalizar un programa sin conocer su PID de antemano.
kill $(pidof nginx)
O para forzar la finalización, podrías usar:
kill -9 $(pidof nginx)
Obtener PIDs de varios procesos a la vez:Si deseas obtener los PIDs de varios procesos en una sola línea, pidof permite hacerlo. Por ejemplo, para obtener los PIDs de nginx y apache2 al mismo tiempo:
pidof nginx apache2 Esto listará los PIDs de todos los procesos coincidentes.
Obtener el PID del proceso padre (PPID):Con la opción -s, pidof devuelve solo un PID, normalmente el de la instancia principal de un proceso, o su proceso padre. Esto puede ser útil si solo necesitas el primer PID:
pidof -s nginx
Ejecutar una acción solo si un proceso específico está corriendo:Puedes utilizar pidof dentro de un script de shell para ejecutar comandos condicionalmente. Por ejemplo, supongamos que quieres reiniciar nginx solo si el proceso no está en ejecución:
pidof nginx > /dev/null || systemctl restart nginx
Aquí, el comando systemctl restart nginx solo se ejecutará si pidof no encuentra ningún proceso nginx en ejecución.
También te recomendamos consultar las páginas man para este comando:
man pidof

pgrep – Comando para Buscar Procesos por Nombre
pgrep es una herramienta en Unix/Linux que permite buscar procesos en ejecución basándose en criterios específicos, generalmente el nombre del proceso. Es extremadamente útil para identificar procesos que están ejecutándose sin tener que inspeccionar manualmente con ps aux o top.
La sintaxis básica de pgrep es:
pgrep [opciones] <nombre_proceso>
Ejemplos de Uso de pgrep
Buscar el ID de un proceso específico:
Imagina que quieres saber el ID de proceso (PID) de todos los procesos llamados nginx.
grep nginx
Esto devolverá una lista de todos los PIDs asociados con nginx, si está ejecutándose.
Combinar con ps para obtener detalles de procesos:
Si deseas ver detalles más completos de los procesos encontrados, puedes combinar pgrep con ps:
ps -fp $(pgrep nginx)
Esto usará pgrep para encontrar los PIDs de nginx y luego ps para mostrar detalles detallados de esos procesos específicos.
Usar patrones de búsqueda:
pgrep permite el uso de patrones para buscar procesos con coincidencias parciales. Por ejemplo, si tienes un proceso cuyo nombre incluye «java» (como java-server o java-client), puedes hacer lo siguiente:
grep java
Esto te devolverá los PIDs de todos los procesos que incluyan «java» en su nombre.
Buscar procesos de un usuario específico:
Con la opción -u, puedes especificar el usuario que posee el proceso. Por ejemplo, para buscar procesos de nginx que pertenecen al usuario root:
pgrep -u root nginx
Buscar por el grupo de procesos:A veces, un proceso específico puede estar en un grupo de procesos. Para buscar estos, puedes usar -G seguido del ID de grupo (GID):
pgrep -G 1000 nginx
Esto solo mostrará procesos nginx que pertenezcan al grupo con GID 1000.
Ejecutar una acción si el proceso está activo:
Puedes combinar pgrep con && o || para ejecutar comandos condicionales. Por ejemplo, reiniciar un servicio solo si el proceso nginx no está activo:
pgrep nginx || systemctl restart nginx
Aquí, el comando systemctl restart nginx solo se ejecutará si pgrep no encuentra procesos nginx activos.
Mostrar solo un número limitado de resultados:
Si solo quieres los primeros 3 PIDs encontrados para nginx:
pgrep -n -l -c nginx
El -n es para buscar el último proceso lanzado, -l muestra el nombre, y -c cuenta las coincidencias
El comando pgrep tiene más opciones que puedes explorar
pgrep --help

También te recomendamos consultar las páginas man para este comando:
man pgrep

Diferencias Principales entre pidof y pgrep
pidofes más simple y generalmente solo requiere el nombre exacto del proceso, mientras quepgreppermite expresiones regulares y opciones avanzadas de filtrado.pgreppermite especificar el usuario del proceso, grupos de procesos y patrones en los nombres, mientras quepidofsolo busca por el nombre exacto.
En resumen, pidof es ideal cuando solo necesitas rápidamente el PID de un proceso específico, y pgrep es útil para búsquedas de procesos más complejas o detalladas.
NICE
Linux puede ejecutar muchos procesos a la vez, lo que puede reducir la velocidad de algunos procesos de alta prioridad y generar un rendimiento deficiente. Para evitar esto, puedes indicarle a tu máquina que priorice los procesos según tus requisitos.
Esta prioridad se llama Niceness en Linux, y tiene un valor entre -20 a 19. Cuanto menor sea el índice de Niceness, mayor será la prioridad otorgada a esa tarea. El valor predeterminado de todos los procesos es 0.
Para iniciar un proceso con un valor de amabilidad distinto del valor predeterminado, utilice la siguiente sintaxis
nice -n 'Valor' nombre del proceso
Si ya hay algún proceso ejecutándose en el sistema, entonces puedes ‘Renice’ su valor usando la sintaxis.
renice 'valor' -p 'PID'

Para cambiar la Niceness, puede utilizar el comando ‘top’ para determinar el PID (identificación del proceso) y su valor Nice (NI). Luego utilice el comando renice para cambiar el valor.
Entendamos esto con un ejemplo.

También te recomendamos consultar las páginas man para este comando:
El comando renice tiene más opciones que puedes explorar
renice --help

También te recomendamos consultar las páginas man para este comando:
man renice

Resumen de los puntos clave:
- Localización de procesos con
pidof
El comandopidofpermite encontrar el PID de un proceso especificando su nombre. Por ejemplo,pidof nanodevuelve el PID de todos los procesos activos con el nombre «nano». Esto resulta útil para identificar el PID de un proceso conocido. - Filtrado de procesos con
pgrep
Similar apidof, el comandopgreppermite localizar procesos por nombre y cuenta con más opciones para filtrar resultados. Conpgrep, se puede buscar un proceso específico con opciones avanzadas (consultarpgrep --helpoman pgreppara más detalles). - Prioridad de procesos con
nice
La «Niceness» determina la prioridad de los procesos, con valores entre -20 (máxima prioridad) y 19 (mínima prioridad). Para iniciar un proceso con una prioridad específica, utilizanice -n <valor> nombre_proceso. El valor predeterminado es 0, y un valor menor indica mayor prioridad. - Modificar prioridad con
renice
Para cambiar la prioridad de un proceso en ejecución, usarenice, especificando el nuevo valor de «Niceness» y el PID del proceso:renice <valor> -p <PID>. Primero, puedes identificar el PID y la prioridad actual con el comandotopops. - Consulta de ayuda (
man) para cada comando
Los manuales (man pidof,man pgrep,man nice,man renice) y opciones de ayuda (--help) son esenciales para entender a fondo las opciones avanzadas y configuraciones de cada comando en la administración de prioridades y localización de procesos en Linux.
Pon en práctica lo aprendido
Ahora pon a prueba lo aprendido con estas preguntas y ejercicios.
Preguntas
- ¿Para qué se utilizan los comandos
pidofypgrep? - ¿Cómo se usa el comando
pidofpara localizar el PID de un proceso? - ¿Qué hace el comando
pgrepy qué ventaja ofrece respecto apidof? - ¿Qué es el valor de
Nicenessy cómo afecta a los procesos en Linux? - ¿Cuál es el rango de valores del
Nicey qué representa un valor más bajo o más alto? - ¿Cómo se inicia un proceso con una prioridad diferente a la predeterminada utilizando
nice? - ¿Para qué sirve el comando
renicey cómo se utiliza? - ¿Qué comando permite ver el PID y el valor
Nicede los procesos en ejecución? - ¿Cómo se cambia el valor de
Nicenessde un proceso ya en ejecución? - ¿Dónde se puede obtener más información detallada sobre
pidof,pgrep,niceyrenice?
Ejercicios
- Localice el PID de un proceso en ejecución, como
nano, usandopidofy describa el resultado. - Explique las diferencias entre
pidofypgreppara localizar procesos en Linux. - Ejecute el comando
pgrep <nombre de proceso>con un proceso en ejecución en su sistema y explique la salida. - Utilice el comando
nicepara iniciar un proceso con un valor de prioridad específico y verifique su valorNicecontop. - Cambie la prioridad de un proceso en ejecución con
renicey verifique el cambio contop. - Ejecute
nice -n -10 <nombre de proceso>y explique la prioridad otorgada al proceso. - Inicie un proceso en segundo plano con un valor
Nicede 15 y verifique que el valor se mantenga usandops. - Consulte
pgrep --helpy mencione dos opciones avanzadas que considere útiles. - Investigue y explique la función de
renice --helppara ajustar la prioridad de varios procesos simultáneamente. - Consulte el manual de
nicey explique cómo ejecutar un proceso con la máxima prioridad posible.
Respuestas a las Preguntas
- Comandos
pidofypgrep: Ambos localizan el PID de procesos en ejecución.pidofbusca por nombre exacto del proceso, mientras quepgreppermite búsquedas más flexibles. - Uso de
pidof:pidof <nombre_proceso>muestra el PID del proceso si el nombre es exacto. - Comando
pgrep: Localiza procesos por nombre de manera flexible, permitiendo expresiones regulares para filtrar la búsqueda. - Valor de
Niceness: Prioridad de un proceso, donde valores más bajos (-20) aumentan la prioridad, y valores altos (19) disminuyen la prioridad. - Rango de
Nice: De -20 a 19; un valor menor indica mayor prioridad. - Iniciar proceso con
nice:nice -n <valor> <proceso>ajusta la prioridad de inicio del proceso. - Comando
renice: Cambia la prioridad de un proceso en ejecución, identificado por su PID. - Ver PID y
Nice: El comandotopmuestra tanto el PID como el valor deNicede los procesos. - Cambiar
Nicenessconrenice:renice <valor> -p <PID>ajusta la prioridad de un proceso existente. - Obtener ayuda: Usando
manparapidof,pgrep,nice, yrenice, o con--helpen cada uno.
Respuestas a los Ejercicios
- Uso de
pidofpara obtener el PID:pidof nanomuestra el PID denanosi está en ejecución. Ejemplo:1234. - Diferencias entre
pidofypgrep:pidofbusca solo coincidencias exactas, mientras quepgreppuede buscar por patrones y expresiones regulares. - Ejecutar
pgrep <nombre de proceso>: Muestra los PIDs que coinciden con el nombre o patrón ingresado. Útil para procesos con nombres parciales. - Ejecutar
nicey verificar contop: Ejecutarnice -n 10 nanoy observar entopmuestraNI=10paranano, indicando prioridad ajustada. - Cambiar prioridad con
renice:renice 5 -p 1234cambia la prioridad del proceso con PID1234aNI=5. Verificar entop. - Ejecutar
nice -n -10 <nombre de proceso>: Otorga alta prioridad al proceso (NI=-10). - Iniciar proceso en segundo plano con
Nice15:nice -n 15 ls -l &, se verifica enps auxqueNI=15. - Opciones avanzadas de
pgrep --help:-l: Muestra el nombre del proceso junto al PID.-u <usuario>: Muestra solo procesos de un usuario específico.
- Usar
renice --helppara prioridad de varios procesos:renicepuede ajustar todos los procesos de un usuario o grupo. - Ejecutar con máxima prioridad usando
nice:nice -n -20 <proceso>inicia el proceso con prioridad máxima (valor más bajo deNice).
No te detengas, sigue avanzando
Aquí tienes un propósito que debes considerar seriamente: si has querido mejorar tus habilidades en hacking, Ciberseguridad y programación ahora es definitivamente el momento de dar el siguiente paso. ¡Desarrolla tus habilidades aprovechando nuestros cursos a un precio increíble y avanza en tu carrera! El mundo necesita más hackers…
- Cómo conseguir trabajo de hacker en 2024
- Trabaja remoto e internacionalmente como Hacker en 2024
- Se necesitan más Hackers – Hechos y estadísticas de 2024
- Se Necesitan más Hackers – La escasez de habilidades en ciberseguridad está empeorando
- El salario de un hacker – Cuanto se gana como Pentesters/ Infosec
- Las empresas te estan buscando para hacerle frente a los ciberataques
- Cómo convertirse en analista de ciberseguridad
- Inicia en hacking y ciberseguridad como analista SOC
- DevOps vs DevSecOps para Hackers
- DevOps vs DevSecOps para Empresas
¿Te gustaría enterarte de cuando lanzamos descuentos y nuevos cursos?

Sobre los autores
Álvaro Chirou
Yo soy Álvaro Chirou, tengo más de 20 Años de experiencia trabajando en Tecnología, eh dado disertaciones en eventos internacionales como OWASP, tengo más de 1.800.000 estudiantes en Udemy y 100 formaciones profesionales impartidas en la misma. Puedes seguirme en mis redes:
Laprovittera Carlos
Soy Laprovittera Carlos. Con más de 20 años de experiencia en IT brindo Educación y Consultoría en Seguridad de la Información para profesionales, bancos y empresas. Puedes saber más de mi y de mis servicios en mi sitio web: laprovittera.com y seguirme en mis redes:
Hacker de 0 a 100 desde las bases hasta conseguir empleo
¿Quieres iniciarte en hacking y ciberseguridad pero no sabes por dónde empezar? Inicia leyendo nuestra guia gratuita: https://achirou.com/hacker-de-0-a-100-desde-las-bases-hasta-conseguir-empleo/ que te lleva de 0 a 100. Desde los fundamentos más básicos, pasando por cursos, recursos y certificaciones hasta cómo obtener tu primer empleo.

Hemos creado una ruta de 0 a 100. Un plan de desarrollo que va desde las bases: cómo aprender hacking, qué aprender, en qué orden; pasando por las areas técnicas necesarias como Linux, Redes, Programación y los conocimientos necesarios en ciber seguridad, hacking, pentesting hasta la práctica y el inicio laboral: Crear tu propio laboratorio, certificaciones, adquirir experiencia e iniciarse laboralmente.
Este es un mega post. Una guía con más de 250 artículos que te llevaran por el camino del hacker. Esta guía es gratuita y esta creada gracias al esfuerzo y al trabajo combinado de Alvaro Chirou y mío (Laprovittera Carlos).
Creamos esta guía (futuro curso) para que puedas iniciarte en este mundo. Puedes arrancar ahora, GRATIS, solo necesitas un PC, conexión a internet y paciencia (Ser hacker NO ES un camino de la noche a la mañana).
El Hacking y la ciberseguridad es una carrera divertida, emocionante y gratificante que te recompensará y desafiará por igual. Sin embargo, para quienes buscan adentrarse en este campo en auge y en constante evolución, puede resultar difícil saber por dónde empezar. ¡Ahí es donde entra en juego nuestra guía en ciberseguridad!

Esta es la hoja de ruta hacia el trabajo de ciberseguridad de tus sueños. Te ayudará a entender qué conocimientos, habilidades y certificados son necesarios para alcanzar tus metas profesionales y tener una carrera próspera. Si quieres ser consultor de ciberseguridad, analista de malware, evaluador de penetración, analista de SOC o cualquier otro puesto de ciberseguridad, esta guía es lo que necesitas.
SIGUE APRENDIENDO GRATIS CON NUESTRAS GUIAS
- Cómo Iniciarse en Hacking y Ciberseguridad en 2024
- Hacker de 0 a 100 desde las bases hasta conseguir empleo
- Curso de Redes para Hackers
- Curso Gratis de Programación
- Curso Gratis Linux – Capitulo 1 – Introducción a Linux
- Curso Gratis de Redes – Capitulo 1 – Tipos de redes y servicios
- Guía de Hacking y Pentesting capitulo 1: Introducción al Pentesting
- Como iniciarse en TRY HACK ME – Complete Beginner #1
- OSINT #1 Más de 200 Search Tools
- Curso Gratis de Java para Hackers
- Hardware para Hackers – Los mejores 40 Dispositivos de Hacking
- Guía de Flipper Zero – Qué es y para qué sirve
- SIGUE APRENDIENDO GRATIS EN NUESTRO BLOG
Aprende con nuestros más de 100 cursos que tenemos disponibles para vos
Compartimos estos recursos para ayudar a la comunidad de hacking y ciberseguridad. COMPARTE y Siéntete libre de agregar más sugerencias en los comentarios a continuación, respondemos todos y cada uno de los comentarios.
Saludos amigos y happy hacking!!!