Me llega a pasar muy seguido que no hay RPMs o vía de que por yum u otros medios pueda instalar un software que necesite, como es el caso de iperf3.5 en un CentOS 7, los RPMs y repositorios que encontré sólo llegaban a iperf3.1 en CentOS 7, y desafortunadamente no cae en mi poder elegir CentOS 8 y realmente necesitaba iperf3.5.
Índice de contenidos
¿Qué es iperf?
iperf es una utilería desarrollada por ESnet / Lawrence Berkeley National Laboratory, que es usada para poder testear anchos de banda, iperf puede ejecutarse en modo servidor o modo cliente. La liga a github con documentación es https://github.com/esnet/iperf
¿Por qué necesitaba iperf 3.5 y no podía continuar con iperf 3.1?
Básicamente por un parámetro de iperf3, el de ‘–connect-timeout’ que nos permite, se cancele la prueba en el cliente si es que el servidor no responde al inicio durante los segundos que se indiquen.
Cuando probé con iperf3.1 me mandaba el siguiente error:
[root@telecomgscae ~]# iperf3 -c ip.ip.ip.ip --connect-timeout 3600
iperf3: unrecognized option '--connect-timeout'
Como lo resolví
Básicamente busqué el código fuente, lo compilé, instalé y probé, de la siguiente forma.
Paso 1. Descargar compilador gcc
Es un paso un poco obvio, pero no siempre recordamos si ya instalamos gcc, nuestro compilador de c. Para instalarlo en nuestro Linux ejecutamos:
[root@host ~]# sudo yum -y install gcc
Paso 2. Descargar código fuente de iperf
La liga de versiones se encuentra en la página de github pero de cualquier forma hago el link aquí https://downloads.es.net/pub/iperf/
Escogemos la versión que necesitamos y verificamos el sha256 de nuestra descarga así:
[root@host ~]# sha256sum iperf-3.5.tar.gz
Y la comparamos con la lista del sitio.
Paso 3. Descomprimir código fuente
A mi me gusta dedicar un directorio a mis códigos fuente en /opt por lo que creo un directorio en opt y guardo mis compilaciones ahí de esta forma:
[root@host ~]# sudo mkdir /opt/compile-lab
Entonces muevo mi archivo gz a ese directorio, lo descomprimo y borro así:
[root@host ~]# mv iperf-3.5.tar.gz /opt/compile-lab/
[root@host ~]# cd /opt/compile-lab/
[root@host compile-lab]# tar -xzf iperf-3.5.tar.gz
[root@host compile-lab]# sudo rm iperf-3.5.tar.gz
Paso 4. Compilar e instalar
Entonces debemos entrar a la carpeta recién creada de iperf3 y realizamos nuestra compilación e instalación de la siguiente forma:
[root@host compile-lab]# cd iperf-3.5
[root@host iperf-3.5]# ./configure
[root@host iperf-3.5]# make
[root@host iperf-3.5]# make install
Conclusiones
Hay cosas que tenemos que resolver a mano y la mejor forma para hacerlo es apuntando para que no se nos olvide, por eso hago estas miniguias hoy sucedió en iperf3.5 ayer con otra utilería. Recuerden que para cualquier comentario los escucho en mi Twitter @SoyTabs
Espero les guste y si no de cualquier forma compartan.