Cambio de nombres en interfaces de red en Arch Linux

Hace poco realicé una migración de una de mis laptops desde Debian a Arch Linux y en el momento de configurar lo relacionado con las interfaces de red me encontré con que la nueva norma de arranque de systemd había realizado un cambio a los nombres de los dispositivos que acostumbraba a ver en dichas interfaces..

Comenzando con el proceso habitual coloqué en una terminal (que por cierto usa rxvt unicode con zsh como consola predeterminada) “ip addr” obteniendo lo siguente:

En este caso configuraremos el nombre de la interfaz de red correspondiente al cable común con conector RJ45 que tenemos en casa para acceder a Internet. Lo primero que vemos  es que toma por nombre enp0s4. Esto difiere muchísimo del eth0 que tanto hemos visto. Lo que haremos será cambiar el nombre de dicha interfaz a uno más cómodo por así decirlo y que nos resulte más fácil de tipear en la consola..

Como paso previo tipearemos cat /sys/class/net/enp0s4/addres en la terminal para averiguar la MAC del dispositivo. Esto devolverá un número del tipo 000:00:00:00:00:0 o simplemente copiar el nombre de la dirección MAC que sale con el comando ip addr en el paso anterior. Debemos anotarlo porque lo necesitaremos mas adelante.

Luego de esto creamos una entrada en el directorio /etc/udev/rules.d/ de esta manera:

Un simple archivo de texto de nombre 10-network-rules que servirá como tramitador ante la norma udev. Es de notar que colocamos sudo porque necesitamos acceso a un archivo que requiere ese permiso para poder actuar.

Una ves abierto tipeamos en él:

SUBSYSTEM=="net", ACTION=="add", ATTR{address}=="00:90:f5:6e:83:57" NAME="internet"

quedando de esta manera en mi caso:

pulsamos la combinación de teclas CNTR + o para guardar los cambios y CNTR + x para salir del editor ( en este caso hago uso de nano pero pueden usar el que quieran ).  A continuación reiniciamos el equipo para que los cambios se hagan efectivos obteniendo luego del reboot lo siguiente:

Como verán si ponemos atención al nombre de las interfaces, aparece la que hemos renombrado con un nombre manejable que y que podemos tipear fácilmente.

Espero que les sea útil e invito a que hagan comentarios y preguntas al respecto en el caso de surgir alguna inquietud.

Desde ahora estaré publicando cosas como estas… saludos.

 


37 comentarios

  1.   itachi dijo

    woooo gracias por la info, me viene genial, pues son un poco coñazo los nombres que aparecen con systemd.

    1.    oyashiro-sama dijo

      pues sip .. Aunque no es un proble real si es uno de forma.. Mejor hacer La gestion de dichas interfaces con nombres mas representativos

  2.   pandev92 dijo

    VIVA sysvinit XDDD

    1.    oyashiro-sama dijo

      Imagino pero ya veo que no eres el usuario objetivo de esta entrada jajaj

  3.   elav dijo

    Todavía no le veo lo bueno a systemd.. En vez de facilitarnos la vida, me parece que la está complicando.. ¿Alguien me puede decir realmente una ventaja “real”?

    1.    ridri dijo

      Otro caso como pulseaudio que por casualidad es del mismo creador. Tanta maravilla que es pero falla más que una escopeta de feria y hay que volver a dejar que alsa maneje el sonido.
      Para ser justos aun está muy verde pero ahora mismo la única ventaja que le veo es que hace arrancar el sistema 5 segundos más rápido por decir algo. Esperemos que debian siga manteniendo el sysvinit y que systemd sea opcional.

      1.    freebsddick dijo

        En lo particular pienso que systemd es buena opcion solo que va durar algo en calar entre los usuarios.. Una de las cosas que veo es que a mayoria de los problemas solo se hace por estar mal documentado… No niego que podria haber problemas de fondo pero ello no significa que sean problemas que hagan calificar en mal o bien una determinada implementacion

        1.    ridri dijo

          Parece que las bondades de systemd son algo esotéricas. He leido explicaciones sobre la mejorías que implemente pero no se si se traducen en un mejor funcionamiento. Y si no teniamos dispersión en linux ahora mismo hay tres sistemas de inicio que yo sepa:sysvinit, upstart y systemd. Y para colmo systemd va a obligar a cambiar la jerarquía de archivos unix, lo que se conoce como /usr move. Una interesante información:
          http://hackingthesystem4fun.blogspot.com.es/2012/03/usrmove-la-mentira-usrmove-lie.html

          1.    msx dijo

            Interesantisimo articulo, despues lo leo completo. (Y si, a la jerarquia de directorios no le vendria nada mal una limpieza, eso de que los archivos de configuracion se guarden en un directorio llamado “etc” y las configuraciones de las aplicaciones se repartan a lo largo distintos directorios repartidos por el sistema es tonto. En ese sentido la gente de Fedora viene haciendo un buen trabajo.)

            Con respecto a lo que comentan sobre PulseAudio en lo personal nunca lo habia necesitado, yo soy de esos que con ALSA estan sobrados (siempre reconocio el HW a la perfeccion).
            En el caso particular de la distro que uso, nunca tuve problemas con la maquina de escritorio aunque en la laptop era desesperante como se rompia el audio luego de salir de suspension.
            Por suerte hace unos dias, despues de comentarlo bastante en el foro, uno de los usuarios informo del problema en el bugtracker, encontraron el error y sacaron inmediatamente un parche que se encargaron de aplicar en Chakra a la espera de la proxima version estable de PA que va a incluir dicho parche.
            Versión actual de PA en Chakra: 3.0

  4.   msx dijo

    Buen tip, +1

    Que bueno ver que GNU+Linux finalmente ha salido del útero de Unix para convertirse en un nuevo sistema más potente, flexible y moderno, acorde a los requerimientos actuales.
    systemd con lo enorme que es sigue siendo increíble, una maravilla de potencia, flexibilidad y modularidad, excelente laburo el de Poettering y asociados.

  5.   lawliet dijo

    Esta muy bien ese tutorial, pero opino que si eres capaz de realizar todos esos pasos también eres capaz de aprenderte enp0s4 que es más fácil, por el otro lado es bueno saber como se hacen las cosas, a veces se necesitan y mi interfaz ciertamente tiene un nombre incomprensible.

    1.    freebsddick dijo

      Bueno no creo realmente que sea una cosa de ser capaz de recordar o nop.. lo que trato de hacer con este mini tuto es de resolver una potencial incomodidad para el usuario de manera muy superficial ademas con esto quiero demostrar que Gnu linux es en extremo flexible por lo que lo puedes personalizar a voluntad siqguiendo simples pasos… el punto mas superficial es que queda mas mono colocando cosas personalizadas dentro del sistema..

  6.   just-another-dl-user dijo

    ahora al instalar la nueva .iso de archlinux, el wifi me lo reconoce como wlp2s0 y a veces como wlan0, alguien sabe porque?

    1.    freebsddick dijo

      Systemd realiza el cambio y el kernel proporciona el soporte para la interfaz.. Sigue el tuto que publique y fijalas estaticamente.. asi te ahorras problemas

  7.   pasaba por aqui dijo

    yo me cruce con esa situacion hace un tiempo tambien, pero son dos cosas distintas
    por convencion el archivo debe de ser menor que 80 (usualmente es 70 para este caso) y
    esto depende de como este el resto de la configuracion o cuantas placas tengamos

    cat /etc/udev/rules.d/80-net-name-slot.rules
    # This file masks persistent renaming rules for network devices. If you
    # delete this file, /usr/lib/udev/rules.d/80-net-name-slot.rules may
    # rename network devices according to ID_NET_NAME_{ONBOARD,SLOT,PATH}
    # properties of your network devices, with priority in that order. See
    # the output of ‘udevadm test-builtin /sys/class/net/$interface’ for
    # details on what that new name might be.
    #
    # http://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames

    en el link, pone las 3 opciones al final (a freedesktop), con el archivito este no me las crea automaticamente, y no es un 70- o sea que no lo nombro con un nombre particular, sigue siendo eth0 como deberia ser (si tengo solo una) y si coloco mas como las usb, me las sigue nombrado eth1 – 2 – 3, o las nombra en el orden de deteccion del modulo, el 70- es util si tenemos mas de una placa y nos importa el nombre (queremos que una placa determinada sea eth0 y la otra sea eth1 o le queres dar un nombre, y no coincide con el nombre que automagicamente sale del orden del montaje del modulo)

    si esta el 80- me las sigue nombrando magicamente nombres normales eth0 eth1 eth2 (segun el orden de deteccion)
    si no esta el 80- o lo mando a null tengo nombres “raros” que si quiero puedo condicionarlos
    si esta el 70- o en el caso del tuto el 10- condiciono los nombres (por ahi hay un bug que anduvo dando vueltas en enero y si no era 70 no lo tomaba no recuerdo si era la arch o la debian, pero en una sucedio)

    a mi me resulta mas usar el netcfg y en algunos equipos bridge-utils
    en la debian no uso el 80- sino que uso el que el udev me genero antes de pasar al systemd /etc/udev/rules.d/70-persistent-net.rules

    1.    freebsddick dijo

      Lo mas seguro que el problema venga de debian …. aunque habria que ver si el bug afectaba al paquete raw disponible y no al desarrollado por cada distro.. con lo ultimo pues como comento es solo una de las tantas formas de realizar una correcta configuracion

      1.    msx dijo

        Mirá, como todo buen kacker le pedí espacio a mi /home para instalar Kali Linux (sucesor de Backtrack 5).
        Kali, al contrario que BT está basado en Debian, de hecho _es_ Debian con el agregado especial de… systemd!
        De hecho me llamó mucho la atención -de forma positiva- ver que Kali Linux corre con systemd como si lo hubiera usado Debian toda la vida.

        Meanwhile, el grupo Debian Dev Core:

        “Dev1:-Hey, oyeron acerca de eso nuevo, systemd, no sería genial implementarlo?”
        “Dev2:-WTF, pero quién te crees que eres!!! Cuando tu todavía te cagabas encima yo ya usaba SysV,y te advierto que pienso seguir usándolo hasta que me muera!!!”
        “Dev3:-Oye maldito, cuida lo que dices…”
        “Dev4:-A mi se me hace que tío es un infiltrado…”
        “Dev5:-Mira merluzo, en Debian nos jactamos de juntar telarañas, no nos vengas con mierdas nuevas de este tipo. Quizás dentro de 15 o 20 años cuando esté lo suficientemente testeado le demos una segunda mirada y si vemos que cumple los requisitos lo incorporemos a Sid”
        “Dev1:-Pero bueno muchachos, está bien, no se pongan así, sólamente que me parece que es un *gran* PID1, mucho más flexible, completo y potente que SysV que a decir verdad ya hace rato que muestra signos de achaques, yo sólamente queria…”
        “Dev2:-BLASFEMIA!!!”
        “Dev4:-Tú, confiesa, rápido, vienes de Arch, no maldito!?”
        “Dev5:-QUEEEEE??? Pero tú qué te crees, cómo vamos a incorporar algo que no está lo suficientemente testeado!!??”
        “Dev1 respondiendole a Dev5:-Pero bueno, es que hoy en día con lo amplio que es el F/LOSS ya no hace falta esperar años, al estar testeado el software masivamente y por distintas distribuciones está prácticamente asegurada la compatibilidad y estabilidad, just my 50 cents…”
        “Dev3:-Pues que te den por culo tus 50 centavos entonces, que parte no entendiste que esto es Debian? Nosotros incorporamos sólamente software obsoleto a nuestra distribución, coño.”
        “Dev5:-Pues claro, bien dicho Dev3, óyeme tú Dev1, recién cuando este software empiece a ser reemplazado por la generación siguiente de PID1 consideraremos incorporarlo a Debian. Punto, no se hable más del tema.”
        “Dev1:-Es que…”
        “Dev2:-Y dale, te la estás buscando hombre, más te vale que inviertas tu tiempo en parchear y dar soporte a SysV y extender su vida útil otros diez años que vamos, si nos viene sirviendo tan bien desde hace 20 años atrás por qué vamos a reemplazarlo ahora.”
        “Dev3:-Eso hombre, que todavía si miramos a SysV con cariño hay PID1 para rato.”
        “Dev1:-Bueno, ok, me parece que tienen razón, mejor me pongo a parchear un software que no estaba pensado para los requerimientos modernos así con mucho esfuerzo podemos seguir usándolo…”
        “Dev4:-Claro, claro, esa es la forma y no tus modernismos.”
        “Dev1:-Ok, ok, me convencieron, systemd es una idiotez y el tipo que lo hizo es un imbécil, a quién se le ocurre hacer semejante porquería cuando existe SysV?”
        Dev{2,3,4,5}:-“A brindar muchachos por los próximos 50 años de estancamiento!”

        1.    pandev92 dijo

          La ventaja de systemd contra sysvinit/openrc o upstart, no es que sea tan grande, simplemente está de moda porque iniciqa en 3 o 4 segundos más rápido.

          1.    pasaba por aqui dijo

            yo de upstart no se, creo que nunca lo use, por lo menos a sabiendas.
            Lo de los 3 o 4 segundos es relativo, yo tengo un ordenador, que en un arranque completo demoraba unos 10 minutos (una debian sin X y con todo lo posible optimizado) con systemd, se fue a la midad o menos (mismos servicios, mismos discos, mismo cpu, misma ram), es decir, hasta que toma carga,

          2.    pandev92 dijo

            Si has usado ubuntu alguna vez, pues debería saber que es upstart, sino claramente no..

          3.    msx dijo

            “simplemente está de moda porque iniciqa en 3 o 4 segundos más rápido.”
            En realidad no es asi, de hecho el main developer de systemd expresamente explica en un correo de su ML que jamas pensaron a systemd como un sistema de inicio rapido, que eso es solo una consecuencia del funcionamiento de systemd – lo que es realmente jugoso pensando en lo que se podria lograr si deciden optimizar systemd para ser mas veloz…

            “La ventaja de systemd contra sysvinit/openrc o upstart, no es que sea tan grande”
            Con respecto a SysV init es ENORME la ventaja con respecto a Upstart no tanto.
            SysVinit es una catramina, una carreta al lado de Porsche.
            Aunque SysVinit sirvio a su proposito durante muchisimos años la realidad es que cada vez mas se notan las limitaciones implicitas de un software hecho, pensado y diseñado hace muchos años y para ese momento.
            Algunos de los problemas de SysV ademas de su lentitud al bootear son las race-conditions que generalmente se dan en distintos entornos, su estructura de activacion y desactivacion de demonios y lo complejo que resulta agregar nuevas aplicaciones y demonios a esta estructura sin romper la secuencia de inicio.

            systemd soluciona todo esto de una forma limpia, practica, estandarizada y bien documentada – cuando en SysV lo general es que cada distribucion lo implemente como mas le gusta.

            Sobre Upstart no conozco mucho mas alla de sus archivos de configuracion que a rigor de verdad SON HORRIBLES, es chino, es una tortura editarlos y es muy facil equivocarse si no estas canchero y hacer lio.
            Por otra parte Upstart parece ser verdaderamente eficiente ya que las ultimas versiones de Ubuntu en mi maquina iniciaban y apagan casi instantaneamente – una maravilla.
            Sin embargo cuando le preguntaron a Poettering sobre si realmente hacia falta sysmted y si no analizaron otras opciones como Upstart, el respondio que si, que las habian analizado, que habia muchas cosas que les gustaban y que de hecho estaba en los planes implementar en systemd pero que segun ellos la base estructural de Upstart no era buena y que era muy posible que en el futuro tuvieran problemas derivado de ello.

            Hay que recordar que systemd nace como iniciativa de Red Hat por dos motivos importantes:
            1. debido a la _vastisima_ experiencia que tiene la empresa en sus miles de deployments llegaron a la conclusion que necesitan realizar ciertos cambios fundamentales en su sistema para que cumpla con sus requerimientos, cambios que logicamente enervan a mas de un veterano – como todo cambio profundo.
            2. para nadie es secreto que Red Hat busca ser Red Hat y no GNU+Linux.

            Mas alla de arabescos y otras distracciones, lo concreto es que systemd esta siendo adoptado cada vez mas por la comunidad GNU+Linux y esto es forzosamente bueno por varios motivos:
            1. el desarrollo es acelerado por lo que se puede lograr un mejor producto en menor tiempo
            2. al incluir las necesidades de varias distribuciones y al colaborar desarrolladores importantes de esas distribuciones con systemd e interactuar con desarrolladores de otras distribuciones discutiendo parches y caracteristicas es infinitamente mas facil lograr un producto de calidad
            3. es agnostico a la distribucion en que se implemente (importantisimo!) y consolidado como un estandar (como lo es POSIX) algo que seguramente valorara un administrador que tenga que trabajar en ambientes heterogeneos compuestos por distintas distribuciones pero que compartan una base de management del sistema similar.
            $ systemctl va a funcionar igual en Fedora que openSUSE o Arch o Chakra o Red Hat o Kali Linux o cualquier otra distribucion que utilice systemd y eso genial.
            4. contar con un gran numero de gente idonea trabajando en el mismo PID1 que utiliza la propia distro hace muchos mas sencillo el trabajo para los propios devs al momento de solucionar problemas o buscar ayuda o ideas sobre como implementar una u otra funcion.
            5. al ser systemd un proyecto abierto y -muy importante- interdisciplinario hace que la tasa adopcion y mejoramiento del proyecto se una de las mas elevadas de los proyectos del FLOSS.
            Por ejemplo, cuando un mantenedor de un paquete de cualquier distribucion, que involucra iniciar demonios al inicio presenta su version del servicio en la lista de correo de systemd pidiendo comentarios y sugerencias, esta pasando que luego de una colaboracion general se logra tener ese servicio a punto, de la mejor manera posible, el que no solo utiliza el desarrollador que abrio el tema sino que ademas se envia UPSTREAM a los desarrolladores de la propia aplicacion para que decidan si desean hacer ese servicio parte de su propio paquete y con eso hacerlo 100% systemd-compatible OOTB.
            6. systemd tiene cientos de cientos de caracteristicas nuevas que hacen mucho mas facil y suave la administracion de los sistemas que maneja. Por ejemplo se encarga de gestionar el modulo PAM para los login managers, gestionar las conexiones remotas al sistema, cargar servicios on-demand escuchando en sockets en vez de tener un demonio dormido en memoria y robando CPU y memoria en espera de ser activado, gestionar de forma fehaciente interfases de red y dispositivos pluggeados al sistema… es realmente un monstruo, un Leviathan enorme pero que a diferencia de otros sistemas de este tamaño funciona de forma agil, rapida y muy suave y creo que la unica razon de que esto sea asi, para un sistema ENORME como es systemd (piensen que en poco tiempo va a gestionar todo el sistema) es que esta pensado para ser eficiente, modular y escalable desde el vamos.

            Particularmente lo que mas sufro de usar systemd es que tengo que re-aprender todo lo que hasta ahora venia utilizando para administrar mi maquina.
            Es entendible que algunos prehistoricos acostumbrados a usar una metodologia determinada durante muchos años se resistan a semejante cambio… but hey! esto es informatica, aca lo unico que no cambia es que el cambio es continuo 😉

            Saludos.

          4.    msx dijo

            Olvidaba:
            “Si has usado ubuntu alguna vez, pues debería saber que es upstart, sino claramente no..”

            Que respuesta mas desagradable, no? Propio de alguien que se la cree y sabe muy poco.

            Siguiendo tu razonamiento estoy absolutamente seguro que sabes como se produce todo el alimento que ingeris, no? Digo TODO.
            Lo mismo que cuando te subis al bus o a un avion, tenes absoluto conocimiento de todas las partes del vehiculo, hasta la mas minima, de como funciona, que aceites, lubricantes y otros fluidos utilizan y como estan compuestos cada uno y su proceso de fabricacion.
            O cuando usas un boligrafo, seguramente tenes muy en claro como se hace la tinta.

            No se si @pasaba por aqui todavia no leyo tu estupidez o es simplemente demasiado educado y civilizado para contestarte como debes.

            Yo por mi parte ya estoy viejo y bastante gruñon como para aguantar a giles como vos:
            CHUPAME UN HUEVO.
            (y no, no defiendo a nadie, simplemente me cayo demasiado mal tanta mediocridad y soberbia venenosa en una sola frase).

          5.    pandev92 dijo

            msx, windows usa el mismo sistema de arranque desde la época de moisés xD, el mismo sistema de archivos, el mismo sistema de sonido y no pasa nada! Así que esto es Linux, donde reinventamos la rueda o lo intentamos cada 5 o 6 años, pero no es la informática, solo es una parte de ella XD

          6.    msx dijo

            Ahh mira…
            Claramente no.
            El sistema de booteo cambio de 98/Me a XP (NTLD) y luego volvio a cambiar con Windows 7 y ahora fue actualizado con Windows 8 – lo que es logico porque las tecnologias no son las mismas y los requerimientos tampoco.

          7.    pandev92 dijo

            windows 7 tiene el de windows vista.

          8.    pandev92 dijo

            msx, pero tu que coño te fumas, pero que coño te has creido? si he respondido totalmente normal, pero tu tienes mierda en tu cabeza interpretando las cosas como una persona con complejo de inferioridad, no es culpa mia. Simplemente era una afirmación que le hice al compañero, sin ganas de chuleo ni nada, todo te lo creastes tu en tu cabeza, pinche wey.Anda y tomate un tila, para esa amargura que tienes dentro

            1.    elav dijo

              Ya les pedí el otro día de favor que pararan con esto. Yo no soy el papá de ninguno de los dos para estarlos regañando.. Se van a fajar para Twitter, G+ o Skype.. Está bueno ya.


        2.    pasaba por aqui dijo

          Muy bueno,
          lo que tiene quiza la debian (por ahora), es que no es tan estricto con los scripts y magicamente se acomoda, aunque el «Sí, ¡haga lo que le digo!» no tiene precio

        3.    lawliet dijo

          Que los de Arch somos blasfemos? Bueno, Arch es todo lo contrario de Debian Stable, seguro es eso

          1.    msx dijo

            No no, es como esos cavernicolas digitales nos ven, totalmente espantados del ritmo que llevamos los archeros ;-D

  8.   eliotime3000 dijo

    El principal problema no es los comandos, sino es la costumbre que le agarra a una distro con la cual se acostumbra.

    Buena opción la de Arch, pero por ahora probaré el Slackware.

  9.   st0rmt4il dijo

    Gracias por el tip!

    1.    freebsddick dijo

      que bien que resulto util

  10.   Ellery dijo

    Buen tip =) solo que en la redacción del texto viene de la siguiente forma

    “Un simple archivo de texto de nombre 10-network-rules.” y en la imagen que es la manera correcta viene como 10-network.rules

    Saludos

  11.   Abraham Tamayo dijo

    Me sirvio .. por una configuracion de conky que tengo pero tambien estoy en contra de este tipo de articulos donde hacen parecer muy dificil linux a los ojos inexpertos ..
    que mas da si tu interface se llama como se llame si lo importante es que tengas internet .. igual y en mi configuracion de conky me servia el otro nombre del wifi y si es por usar aircrack tambien es la misma historia pero como linux te da esa opcion de personalizacion pues la cambie .. gracias por el articulo .. una imagen
    https://pbs.twimg.com/media/BI9FCzQCEAIM0ud.png:large

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*

*

  1. Responsable de los datos: Miguel Ángel Gatón
  2. Finalidad de los datos: Controlar el SPAM, gestión de comentarios.
  3. Legitimación: Tu consentimiento
  4. Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal.
  5. Almacenamiento de los datos: Base de datos alojada en Occentus Networks (UE)
  6. Derechos: En cualquier momento puedes limitar, recuperar y borrar tu información.