Calcula el tiempo en ejecutarse un script bash en shell de linux

Scripts, Ubuntu No hay Comentarios »

A veces nos es muy útil saber que tiempo ha tardado en ejecutarse un script bash desde la línea de comandos de linux.

Es muy sencillo, tan solo hay que tomar los valores del tiempo en un par de variables y obtener la diferencia.

Voy a hacer un ejemplo de archivo bash para que todo quede explicado obteniendo la diferencia en minutos:

Creamos un archivo “scriptdiff.sh” con el editor que prefieras y en el contenido pondremos:

#!/bin/bash
START=$(date +%M)

# comienzo de tu script, por ejemplo

wget ftp://usuario:password@davidsuarez.es/backup/backup.dmp.gz
……..
# termina tu script

END=$(date +%M)

DIFF=$(( $END – $START ))

echo “Ha tardado la friolera de $DIFF minutos”

Para hacer el fichero ejecutable:

$ chmod +x scriptdiff.sh

Para ejecutarlo:

$ ./scriptdiff.sh

Así de simple, luego podéis hacer variaciones para que el tiempo te lo muestre en segundos (sustituir %M por %s), en nanosegundos para scripts rápidos ($(date +%s%N)), etc…

Linea de comandos SFTP para cargar o descargar ficheros a un servidor

Ubuntu 1 Comentario »

Usando la linea de comandos en Ubuntu es posible hacer una conexión sftp de forma sencilla con otro servidor para cargar o descargar ficheros. Es ideal para hacer backups externos de nuestros datos.

Haciendo Login al servidor.
Abrimos una consola y tecleamos:

sftp usuario@servidor_destino.com

Escribimos la contraseña cuando nos lo solicita
Ya te puedes ver conectado al servidor con el protocolo sftp (sftp>)

Descargarte un fichero.
Para ver los ficheros que nos podemos descargar tecleamos:

ls -l

para descargarnos el fichero:

get mi_fichero.backup.tgz

Subir un fichero de nuestro equipo al servidor:

put mi_fichero_local.backup.tgz

Vsftpd. Cuentas ftp para tus usuarios de Ubuntu

Ubuntu No hay Comentarios »

Voy a escribir una serie sencilla de comandos para Ubuntu que nos permitirá que cada vez que se cree un usuario en Linux nos cree tambien una cuenta ftp para ese usuario en su directorio personal.

Lo primero que tenemos que hacer es instalar vsftpd (Very Secure FTP Daemon) en nuestro servidor.

$ sudo apt-get install vsftpd

Si los repositorios están correctos debe instalarlo sin problemas.

Ahora vamos a revisar la configuracion, se encuentra en el fichero /etc/vsftpd.conf. Lo editamos con nuestro editor preferido:

$ sudo nano /etc/vsftpd.conf

El fichero contiene muchos parametros con sus explicaciones en perfecto inglés, para ello has de descomentar las lineas precedidas con el # y cambiarlas a tu antojo o bien seguir esta configuración que es buena:

listen=YES

anonymous_enable=NO

local_enable=YES

write_enable=YES

local_umask=022

dirmessage_enable=YES

xferlog_enable=YES

connect_from_port_20=YES

chroot_local_user=YES

chroot_list_enable=YES

chroot_list_file=/etc/vsftpd.chroot_list

secure_chroot_dir=/var/run/vsftpd

pam_service_name=vsftpd

local_max_rate=5120

max_clients=5

max_per_ip=5

ftpd_banner=Bienvenid@ a tu cuenta FTP

Creamos el archivo vsftpd.chroot_list vacio

$ sudo nano /etc/vsftpd.chroot_list

Y salimos guardandolo vacio, reiniciamos el demonio y listo:

$ sudo /etc/init.d/./vsftpd restart

Algo importante es negarle a los usuarios ftp un acceso a la shell:

$ sudo nano /etc/shells

Al final del archivo añadimos la línea bin/false. Cuando creemos usuarios en el servidor debemos asignarle esta opción.

Configurar ip estática en Linux Ubuntu

Ubuntu 2 Comentarios »

Para configurar manualmente la direccion IP en linux se utilizan los siguientes comandos.

Primero hemos de ver el interfaz que estamos utilizando con el comando

davidsuarez$try~:  ifconfig

nos mostrará algo como lo siguiente:

eth0

Link encap:Ethernet  HWaddr 00:01:80:3d:42:01
inet addr:172.31.1.5  Bcast:172.31.3.255  Mask:255.255.252.0
inet6 addr: fe80::201:80ff:fe3d:4201/64 Scope:Link
UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
RX packets:8094 errors:0 dropped:0 overruns:0 frame:0
TX packets:1557 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:799460 (799.4 KB)  TX bytes:212765 (212.7 KB)
Interrupt:17 Base address:0xe800

esto nos mostrará los interfaces que tenemos disponibles y las ips que tienen asignadas. Supongamos que configuraremos el eth0 con los siguientes datos:

IP: 192.168.1.5
Mascara: 255.255.255.0
Puerta de enlace: 192.168.1.1

Para configurar la ip:

  • sudo ifconfig eth0 192.168.1.5

Para configurar la mascara:

  • sudo ifconfig eth0 netmask 255.255.255.0

Para la puerta de enlace:

  • sudo route add default gw 192.168.1.1

Ahora ejecutamos ifconfig eth0 para ver que todo ha quedado correcto y ya tenemos configurado el interfaz de red a nuestro gusto.

Para ver si la puerta de enlace ha quedado correcta el comando es route.

WP Theme & Icons originales por N.Design Studio.
Aviso Legal Entradas RSS Comentarios RSS Acceder