Prueba de un script bash que automatiza el proceso de creación de un Samba4 Active Directory Domain Controller en Fedora 40 Linux. El script actualiza el sistema, instala dependencias y otros paquetes necesarios para la infraestructura básica (DHCP, DNS, NTP, Kerberos, SSSD, etc.) y luego realiza el domain provision con los valores que le proporcionamos al inicio del mismo (FQDN y password del usuario administrator).
Mostrando entradas con la etiqueta Bash. Mostrar todas las entradas
Mostrando entradas con la etiqueta Bash. Mostrar todas las entradas
miércoles, 20 de noviembre de 2024
viernes, 22 de mayo de 2015
asciinema, una solución elegante y rápida para grabar y compartir el terminal
Al reproducir grabaciones que otros han compartido podemos pausarla y copiar comandos que deseamos probar en nuestro sistema, ya que se trata solo de texto y no de una imagen o mapa de bits.
jueves, 20 de noviembre de 2014
Colores de los ficheros en un terminal
Aunque hayas usado poco el terminal, de seguro te has dado cuenta de que al ejecutar comandos como ls la salida resulta bastante colorida si estás en una ruta (pwd) donde hay una gran variedad de tipos de ficheros y también carpetas. Esto se debe a que por defecto el terminal sin importar la aplicación que uses (gnome-terminal, xterm, etc.) toma de un fichero los parámetros para dar ese colorido a la salida y ayudarnos a diferenciar rápidamente el tipo de archivos que estamos visualizando.
El fichero en cuestión es /etc/DIR_COLORS. El mismo contiene la definición de los diferentes tipos de terminales que son "colorizables", seguido de los mime type de los archivos y sus correspondientes código de colores que se encuentran almacenados en la variable $LS_COLORS.
El fichero en cuestión es /etc/DIR_COLORS. El mismo contiene la definición de los diferentes tipos de terminales que son "colorizables", seguido de los mime type de los archivos y sus correspondientes código de colores que se encuentran almacenados en la variable $LS_COLORS.
martes, 3 de diciembre de 2013
Fix Ubuntu, sencillo pero poderoso script para recuperar la privacidad
Unity, en vez de proteger la privacidad de sus usuarios, hace todo lo contrario. Y para combatir este inconveniente, Micah Lee, entusiasta de la privacidad, ha creado un script que "cura" a Ubuntu de este mal.
martes, 27 de noviembre de 2012
Entendiendo el comando touch
Cada archivo en GNU/Linux está asociado con timestamps, los cuales especifican la última vez que fue accesaro, modificado y cambiado. Siempre que creamos un fichero, o modificamos uno existente o sus atributos, esos timestamps son actualizados automáticamente. Vía TheGeekStuff veremos que el comando touch es usado para cambiar estos timestamps (access time, modification time, y change time de un fichero).
Crear un archivo vacío
Podemos crear un archivo vacío usando el comando touch. El siguiente ejemplo crearemos un archivo de cero bytes.
Podemos crear un archivo vacío usando el comando touch. El siguiente ejemplo crearemos un archivo de cero bytes.
[fraterneo@rainbow ~]$ touch archivo01.txt
miércoles, 19 de septiembre de 2012
Entendiendo el Shell - Post extra (ñapa)
Bueno, realmente el Shell Bash tiene muchísimas opciones y características y a medida que se profundiza en ellas más interesantes se vuelven. Les traigo este post de ñapa con funciones del Shell que quizás no conocías: El Shell tiene control de trabajos: La habilidad para ejecutar comandos en segundo y en primer plano. Un trabajo es uno o varios comandos que ocupan al Shell en un momento determinado. Cuando ejecutamos un comando interactivo, el Shell actual lo trata como un trabajo. Una vez el comando es completado, el trabajo asociado desaparece.
Los trabajos tareas están a un nivel más alto que los procesos en Linux; el sistema operativo no sabe nada acerca de ellos. Los trabajos son construidos propiamente por el Shell.
jueves, 13 de septiembre de 2012
Entendiendo el Shell - Parte 5 (Final)
Con esta entrega finalizo esta serie de posts sobre el Shell de GNU/Linux, la cual ha cubierto los aspectos básicos e importantes del mismo. Recordemos que dominar la línea de comandos nos hace mas productivos. Entrando en el tema, el Shell (Bash) nos permite usar nuevamente comandos que hemos ejecutado antes. Estos comandos se encuentran en el historial del Shell. Algunas de las opciones de que dispone el comando history son las siguientes.
history Mostrar el historial completo history N Mostrar los N comandos mas recientes del historial history -c Limpiar o borrar el hisotiral !! Ejecutar el comando anterior !N Ejecutar el comando N del hisotrial !-N Ejecutar el comando que ejecutamos hace N comandos !$ Representa el ultimo parametro del comando anteior; genial para cersiorarnos de que archivos a eliminar esten presentes antes de borrarlos: !* Representa todos los parametros del comando anterior
martes, 11 de septiembre de 2012
Entendiendo el Shell - Parte 4
Ya nos acercamos a la parte final de esta serie sobre el Shell con esta penúltima entrega. Esta vez estaremos viendo los siguientes aspectos, primero: Redireccionamiento de entrada/salida:
El Shell puede redireccionar la entrada, la salida y los errores estándar hacia y desde archivos. En otras palabras, cualquier comando que lea desde la entrada estándar puede tener dicha entrada desde un archivo haciendo uso del operador <.
fraterneo@rainbow:~$ comando < entrada.txt
De la misma forma cualquier comando que escribe en la salida estándar puede enviar su salida a un archivo:
fraterneo@rainbow:~$ comando > salida.txt
lunes, 10 de septiembre de 2012
Entendiendo el Shell - Parte 3
Hoy veremos otras características del Shell Bash, la primera de ellas: Expansión de corchetes. Al igual que los comodines, las expresiones entre corchetes {} también son expandidas para ser convertidas en múltiples argumentos para los comandos. La expresión separada por comas {X,YY,ZZZ} se expande primero a X, luego a YY y finalmente a ZZZ, cuando la usamos en un comando como el siguiente:
fraterneo@rainbow:~$ echo ja{X,YY,ZZZ}
jaX jaYY jaZZZ
Los corchetes trabajan con cualquier cadena, lo que no sucede con los comodines, los cuales están limitados a nombres de ficheros. En el ejemplo anterior funciona sin importar cuales ficheros hay en el directorio actual.
Entendiendo el Shell - Parte 2
Siguiendo con esta serie, el Shell hace más que simplemente ejecutar comandos. Y es que constituye una poderosa con características formidables para hacer esta tarea fácil: comodines para el pareo de nombres de archivos, un historial de comandos para invocar comandos previamente ejecutados, tuberías para enviar la salida de un comando como la entrada de otro comando, variables para almacenar valores para su uso en el Shell, y muchas otras. Nos tomaremos un tiempo para revisar y aprender estas características, ya que las mismas nos harán más rápidos y productivos en Linux.
sábado, 8 de septiembre de 2012
Entendiendo el Shell - Parte 1
Esta será una pequeña serie de varios post para introducir los conceptos básicos y prácticos del Shell. Enfocado en los principiantes, veremos varios puntos importantes que quizás ya concen y otras características del Shell y Bash que probablemente eran desconocidas para muchos. Espero sea de su agrado y edificación.
Para poder ejecutar comandos en un sistema tipo Unix como lo es GNU/Linus, necesitamos de un "lugar" para escirbirlos. Ese lugar es llamado el Shell, el cual es la interfaz de línea de comandos de Linux. Escribirmos un comando, presionamos Enter, y el Shell ejecuta cualquier programa o programas requerido. Por ejemplo, para ver quién está logueado, podemos ejecutar el siguiente comando en un Shell:
fraterneo@rainbow2 ~ $ who laisha tty8 2012-09-08 16:58 (:0) fraterneo pts/0 2012-09-08 21:01 (rainbow.local) fraterneo pts/2 2012-09-08 21:14 (192.168.24.102)
domingo, 22 de julio de 2012
Entendiendo el comando compgen
El comando compgen es un comando interno de bash que nos permite visualizar los comandos, funciones y aliases disponibles para el usuario actual. Es decir, que compgen es un comando que muestra comandos.
Por lo general solo basta presionar TAB dos veces para mostrar el total de comandos disponibles actualmente y la opción de mostrarlos todos listados y vamos presionando la barra espaciadora para ir desplegando la larga lista.
domingo, 16 de octubre de 2011
Usando parametros posicionales en scripts Bash
Cuando ejecutamos un shell script puede ser útil pasarle argumentos o parámetros a dicho script (por ejemplo, el nombre del fichero sobre el cual queremos que el script trabaje o procese. Estos parámetros son referidos al script de acuerdo a la posición que toman en la línea de comandos: $0 es el nombre del comando o script en sí mismo, $1 es el primer parámetro, $2 es el segundo, y así sucesivamente. No podemos cambiar los valores de esas variables porque son un caso especial (normalmente las variables no pueden comenzar con un dígito, por lo que el shell no interpreta "1=hola" como una asignación de variable).
Un script no puede saber cuántos parámetros posicionales utilizará, por lo que si no controlamos la entrada adecuada de los mismos es problable que el script no trabaje como esperamos.
jueves, 13 de octubre de 2011
Sincronizacion automatica de folder local con un Servidor FTP (Reverse Mirror)
Un trabajito que he tenido últimamente ha sido editar unos archivos de audio y subirlos a un hosting para luego ser publicados en un sitio web en modalidad de podcasts. Luego de editarlos (en Audacity) tengo que loguearme en la página del hosting, buscar el explorador de archivos y subir uno a uno los archivos de audio (que a veces son dos o tres) pero que van de 35 a 50 MB's.
Bueno, en fin, esto es aplicable a cualquier situación similar sin importar la cantidad o el tamaño de los archivos.
domingo, 9 de octubre de 2011
Como integrar NotifyOSD en tus scripts Bash
La librería libnotify (Notify OSD) constituye una excelente forma en la que el sistema nos mantiene informados de lo que acontece sin interrumpir lo que estamos haciendo. Distintas aplicaciones lo utilizan (Pidgin, Banshee, RadioTray, VLC, etc.), si lo deseamos así, para informarnos de sus diferentes estados y acontecimientos que nos puedan interesar.
jueves, 15 de septiembre de 2011
Separador de comandos para el terminal bash GNU/Linux
Muchas veces trabajar en el terminal se vuelve un poco confuso, especialmente cuando entramos comandos que devuelven una salida bastante rica o son tantos comandos que ya hemos perdido el hilo de lo que hemos hecho. Con este truco podremos un separador (línea separadora) entre cada prompt, lo que nos permite ver con claridad cada comando que hemos entrado con su salida correspondiente. Como valor agregado, también al final de dicha línea del lado derecho del terminal nos muestra la hora en la que entramos cada comando (y cada comando resaltado con negrita).
Esto nos viene gracias a Emilis Dambauskas, un programador lituano y usuario de GNU/Linux que decidió enfrentar este problema.
lunes, 29 de agosto de 2011
Actualizar Ubuntu automáticamente con APT y CRON [Repost]
A continuación veremos como programar una tarea en cron para actualizar los paquetes del sistema. El mismo procedimiento podría utilizarse para actualizar la versión completa o para hacer un dist-upgrade cuando hay kernel nuevo para instalar o versiones completamente nuevas de aplicaciones instaladas, haciendo los ajustes necesarios. Además es muy posible que funcione en Fedora con YUM haciendo los ajuses pertinentes. Todo esto lo haremos con APT, el gestor de paquetes más utilizado en Ubuntu y Debian.
viernes, 26 de agosto de 2011
Deshabilitar los Login Messages en Ubuntu
Aunque en Fedora y otras distros, por defecto, no nos encontramos con estos mensajes, en Ubuntu y otras sí. Me refiero a los Login Messages. No son más que los mensajes que aparecen cuando los logueamos en Ubuntu en un tty o en un host remoto mediante SSH. Meramente es información del sistema, información sobre hardware (BIOS), noticias de garantía, un nuevo lanzamiento o actualizaciones dispoibles, etc. Un ejemplo de ello es esta salida en un terminal al hacer login remoto con SSH.
fraterneo@rainbow:~$ ssh -X fraterneo@192.168.24.101fraterneo@192.168.24.101's password:
Linux rainbow2 2.6.35-22-generic #35-Ubuntu SMP Sat Oct 16 20:36:48 UTC 2010 i686 GNU/Linux Ubuntu 10.10
Welcome to Ubuntu!
* Documentation: https://help.ubuntu.com/
238 packages can be updated.
129 updates are security updates.
New release 'natty' available.
Run 'do-release-upgrade' to upgrade to it.
No mail.
Last login: Thu Aug 25 09:36:01 2011 from rainbow.local
fraterneo@rainbow2:~$
domingo, 1 de mayo de 2011
Entendiendo el comando screen
El comando screen nos ofrece la oportunidad de tener varios procesos (comandos, scripts, etc.) separados desde una misma sesión en terminal. Cuando la sesión es separada el proceso iniciado originalmente por screen es administrado por éste de forma transparente. Luego, más adelante, podemos retomar dichas sesiones nuevamente y veremos que el proceso que iniciamos en dicha terminal está justo como lo dejamos.
Manos a la obra...
Convencionalmente en una terminal escribimos el nombre del comando y presionamos Enter. Inmediatamente, si el comando existe (en nuestro sistema) bash lo llama y lo ejecuta directamente en el terminal donde estamos y, a menos que lo pasemos a segundo plano (& al final del comando) no podremos hacer otra cosa hasta que terminemos con dicho comando.
viernes, 8 de abril de 2011
Auto completar en Yum con TAB Auto Complete en Fedora/CentOS
La característica auto complete (auto completar) de Bourne Again SHell hace a bash uno de los más amigables y amados shells en GNU/Linux. Solo presionando la tecla Tab podemos completar comandos y nombres de ficheros. Al presionar Tab dos veces todos los ficheros y directorios son mostrados. En Debian, Ubuntu y muchas otras distros viene habilitado por defecto, pero no así en Fedora y posiblemente en algunas otras.
Tab auto complete resulta muy útil a la hora de utilizar comandos tan frecuentes como ls, cd, cp, mv, y otros comandos. Para tener auto complete para Yum en Fedora/CentOS necesitamos instalar el paquete bash-completion:
# yum install -y bash-completion
Cerramos la sesión (logout) y entramos nuevamente (login). Listo. Ya tenemos auto complete!
Suscribirse a:
Entradas (Atom)

















