Jorge Verón Schenone

Haciendo pruebas: Shell script que les permitirá cambiar el nombre del host fácilmente

Jorge Verón Schenone at

Les dejo un shell script (guion de intérprete de órdenes Bash), que les permitirá cambiar el nombre del host fácilmente.-

Aclaraciones
:

  • Es conveniente revisar previamente el  contenido de sus archivos /etc/hosts ($ nano /etc/hosts) y /etc/hostname ($ nano /etc/hostname) para poder realizar las modificaciones pertinentes en el script.-
  • Se aceptan sugerencias y modificaciones.-
  • Se lo debe ejecutar en un directorio o subdirectorio de usuario (/home/usuario/...).-
  • Soy un aficionado a la informática (no esperen demasiado :) ).-
    ¡ Un cordial saludo !

    Jorge

    El código:

    #! /bin/sh
    # NAME_="nombredelhost.sh"
    # PURPOSE_="Cambiar el nombre del host"
    # VERSION_="1.0"
    # DATE_="2015-10-13; last update: 2015-10-14"
    # AUTHOR_="J.V.S."
    # CATEGORY_="public"
    # PLATFORM_="GNU/Linux"
    # SHELL_="bash"
    # DISTRIBUTE_="yes"

    clear
    # clear: permite limpiar la pantalla de la terminal.

    echo "Se requieren privilegios de root"
    # echo: muestra una línea de texto o la incluye en un archivo (con el signo ">" sustituye el contenido del archivo y con ">>" lo añade a continuación).
    echo "Se borran del directorio local los archivos creados previamente"
    sudo rm -f hosts
    # sudo: permite ejecutar un comando como superusuario.
    sudo rm -f hostname
    # rm: comando de la familia de sistemas operativos Unix para eliminar archivos y directorios
    nombre="nombre"
    echo "Introduce el nombre del host a crear"
    read nombre
    # read: Permite interactuar con el usuario (input del teclado), posibilitándole asignar un valor a una variable.
    echo $nombre > hostname

    echo "127.0.0.1 localhost" > hosts
    echo "127.0.1.1 $nombre" >> hosts
    # Se agrega el nuevo nombre y se agrega el resto del contenido existente.
    echo "" >> hosts
    echo "# The following lines are desirable for IPv6 capable hosts" >> hosts
    echo "::1 ip6-localhost ip6-loopback" >> hosts
    echo "fe00::0 ip6-localnet" >> hosts
    echo "ff00::0 ip6-mcastprefix" >> hosts
    echo "ff02::1 ip6-allnodes" >> hosts
    echo "ff02::2 ip6-allrouters" >> hosts
    sudo chmod 644 hostname
    # chmod: Cambiar los permisos de un archivo
    # Código numérico:
    # 1 = ejecución
    # 2 = escritura
    # 3 (1+2) = escritura y ejecución
    # 4 = lectura
    # 5 (4+1) = lectura y ejecución
    # 6 (4+2) = lectura y escritura
    # 7 (4+2+1) = lectura, escritura y ejecución
    sudo chmod 644 hosts

    sudo chown root hostname
    # chown: Cambio de propietario de un archivo o directorio.
    sudo chgrp root hostname
    # chgrp: Cambia el grupo al que pertenece un archivo.
    sudo chown root hosts
    sudo chgrp root hosts
    sudo cp -f hosts /etc/hosts
    # cp: Se utiliza para copiar archivos. En este caso, sobreescribimos el existente.
    sudo cp -f hostname /etc/hostname
    echo "Listo!"
    clear
    exit 0


Se lo debe copiar, pegar y guardar como un archivo con extensión .sh ("nobredelhost.sh" por ejemplo) y asignarle luego un permiso de ejecución (chmod 755).

Fabián Bonetti likes this.

Pensando en una alternativa para el scrip propuesto. Sería a través de la implementación del comando "sed". Más adelante intentaré implementarlo. ¡ Salu2 !

Jorge Verón Schenone at 2015-10-15T11:17:28Z

Hola, mira tengo este pequeño proyecto llamdo Configure GNU Linux https://github.com/l30bravo/ConfigureGNULinux.

La idea es crear programas BASH para configurar maquinas de escritorio (Usuarios) y Servidores.

A usuarios como Instalación de Impresoras, Servidor de Impresoras, SAMBA para compartir archivos con entornos Windows, etc ...

Servidores, LAMP, Otros servicios.

La idea es ayudar a usuarios con procedimientos y configuraciones por medio de scripts en bash.

Tengo algo abandonado el proyecto por tiempo, estoy buscando interesados que me ayuden con ideas y scripts :), se te interesa me dices.

Saludos

l30bravo at 2015-10-15T19:36:36Z

Jorge Verón Schenone likes this.

>> l30bravo:

“Hola, mira tengo este pequeño proyecto llamdo Configure GNU Linux https://github.com/l30bravo/ConfigureGNULinux.

La idea es crear programas BASH para configurar maquinas de escritorio (Usuarios) y Servidores.

A usuarios como Instalación de Impresoras, Servidor de Impresoras, SAMBA para compartir archivos con entornos Windows, etc ...

Servidores, LAMP, Otros servicios.

La idea es ayudar a usuarios con procedimientos y configuraciones por medio de scripts en bash.

Tengo algo abandonado el proyecto por tiempo, estoy buscando interesados que me ayuden con ideas y scripts :), se te interesa me dices.

Saludos”


¡ Hola Leonardo ! Me alegra contactarte, había pasado mucho tiempo sin tener noticias tuyas. Como no, cuando disponga de algo de tiempo y reuna más conocimiento, te estaré avisando. ¡ Un gran abrazo !

Jorge Verón Schenone at 2015-10-16T03:24:06Z