viernes, 24 de octubre de 2014

Crontab linux(slackware)

Hola hoy veremos el crontab:

Crontab 
Crontab es un simple archivo de texto que guarda una lista de comandos a ejecutar en un tiempo especificado por el usuario. Crontab verificará la fecha y hora en que se debe ejecutar el script o el comando, los permisos de ejecución y lo realizará en el background. Cada usuario puede tener su propio archivo crontab, de hecho el /etc/crontab se asume que es el archivo crontab del usuario root, cuando los usuarios normales (e incluso root) desean generar su propio archivo de crontab, entonces utilizaremos el comando crontab.
Crontab es la manera mas sencilla de administrar tareas de cron en sistemas multiusuario, ya sea como simple usuario de sistema o usuario root.

Veamos un ejemplo de crontab: 

pondremos el comando crontab -e y nos aparecera lo siguiente: 
 
 Al principio no nos aparecera nada pero modificaremos este archivo agregando esto 
agregaremos 5 atributos de la siguiente manera: 
s
 esto quiso decir que ala 5 con 1 minuto nos mandara saludos y nos dira que somos geniales
bien podemos modificar a la hora que queramos por ejemplo : 

  • m corresponde al minuto en que se va a ejecutar el script, el valor va de 0 a 59
  • h la hora exacta, se maneja el formato de 24 horas, los valores van de 0 a 23, siendo 0 las 12:00 de la medianoche.
  • dom hace referencia al día del mes, por ejemplo se puede especificar 15 si se quiere ejecutar cada dia 15
  • dow significa el día de la semana, puede ser numérico (0 a 7, donde 0 y 7 son domingo) o las 3 primeras letras del día en inglés: mon, tue, wed, thu, fri, sat, sun.
  • user define el usuario que va a ejecutar el comando, puede ser root, u otro usuario diferente siempre y cuando tenga permisos de ejecución del script.
  • command refiere al comando o a la ruta absoluta del script a ejecutar, ejemplo: /home/usuario/scripts/actualizar.sh, si acaso llama a un script este debe ser ejecutable
 listo:)

Navegacion en texto (slackware)

Hola hoy veremos la navegacion que tiene linux(slackware) en modo
consola

El navegador que tiene linux(slackware) se llama
Lynx
Es un navegador web y cliente de gopher en modo texto. Este navegador se encuentra en el directorio
/etc/httpd al darle un ls vemos los archivos que tiene, bien este navegador incluye una guia de usuario. Tambien hay otros navegadores pero bien este es uno de los mas conocidos echemos un vistazo:

El httpd-conf:

Este archivo es el que ocupa los servidores y como poder entrar a estos y crear nuevos servidores
bien el navegador lynx esta de la siguiente manera:

Este navegador es algo util de utlizar ya que si no tienes buena conexion de internet
bien este navegador utiliza muy pocos kb:)

Ahora veremos un ejemplo de como agregar html en localhost

Iremos a la carpeta /srv/httpd/htdocs

al dar ls nos aparece un archivo index.html editaremos ese archivo poniendo
vim index.html y agregaremos lo siguiente:



despues estando en cualquier lugar poniendo lo siguiente lynx localhost nos aparecera de esta manera:


Listo:)

Configuracion del sistema linux (slackware)

Hola ahora veremos la configuracion que tiene el sistema
primero que nada nos tenemos que meter a la carpeta /etc/

en etc encontraremos muchas configuraciones del sistema la cual la mas principal veremos el

init
Variables de control de la forma en que inicia el sistema.
/etc/inittab

usuario@Linux:~$ vi /etc/inittab 

Tendremos las configuracion del arranque de nuestro sistema:

 

 Vemos que son las siguientes:
0: Apaga
1: Solo un usuario ala vez
2: No se usa
3: Modo multi-usuario
4: Es el modo grafico
5: Variacion de grafico
6: Reiniciar


Asi como tenemos el inittab hay otros que se pueden modificar como lo son el rc.S , rc.d , rs.M

el rc.S nos sirve para ver los archivos que cargan al inicio del arranque del sistema como lo vemos
en esta imagen:

V

 Vemos que tiene que archivos va a cargar y cuales no , tambien tenemos el rc.M

rc.M
 Este mostrara los segundos archivos que se podran cargar pero solo lo hara en modo multiusuario(root) 


Todos estos servicios se encuentran en la carpeta de etc/rc.d al darle un ls nos apareceran estos 
pocos que acabamos de mencionar bien hay muchos mas servicios que nos ofrece slackware 


Listo:)

For if's y case anidados en linux

Hola hoy veremos algunos casos de for ifs y case anidados
para empezar la sintaxis del for se construye de la siguiente manera:


 for: Ejecuta una serie de comandos un numero determinado de veces.


La sintaxis de esta construccion es la siguiente:
for nombre [in lista]
do
   comandos que pueden utilizar $nombre
done
 
 
 
para despejar mejor las dudas veamos un ejemplo de for
 
primero crearemos un archivo que se llame for.sh 
despues realizaremos lo siguiente 

A
 
 
le damos guardar con :x despues de guardarlo le daremos permisos de ejecucion 
chmod+x for.sh y al ejecutar este script nos tendra que aparecer de la siguiente manera: 


usuario@Linux:~$ ./for.sh 
1
2
3
4
5
6
7
8
9
10


Case
 
Ejecuta una o varias listas de comandos dependiendo del valor de una variable. 
La sintaxis de esta construccion es la siguiente:
case expresion in
     caso_1 )
        comandos;;
     caso_2 ) 
 comandos;;
     ......
esac 
 
Ahora veamos un ejemplo de esto: 
primero crearemos case.sh y agregaremos lo siguiente:
 
Tendremos como resultado al darle permisos de ejecucion chmod+x case.sh el siguiente:
 
 

usuario@Linux:~$ ./case.sh
 
Dame un numero: 1 
UNO 
 
si ponemos 2 imprimira DOS O TRES 
si ponemos UNO impimira 1 
si ponemos DOS o TRES imprimira 2 o 3 
y un * imprimira que no entiendo 
 
 
While
Ejecuta una seria de comandos mientras que una determinada condicion sea cumpla.
 
La sintaxis de esta construccion es la siguiente:
while condicion
do
  comandos
done 
 
Para el ejemplo crearemos el siguiente script: 
 
 Despues de darle permisos de ejecucion nos tendra que arrojar lo siguiente 
 
 
usuario@Linux:~$ ./while.sh 

Dame n: 2 

Nos dara la tabla del 2 
2 * 1 = 2 
2 * 2 = 4
2 * 3 = 6 
2 * 4 = 8
2 * 5 = 10
2 * 6 = 12
2 * 7 = 14
2 * 8 = 16
2 * 9 = 18
2 * 10= 20
 
Listo:) 

 
 
 
 
 

Condiciones en linux

Hola hoy veremos condiciones en linux las condiciones en bash existen estas construcciones para controlar el flujo de ejecucion de un script:
  • if/else: Ejecuta una serie de comandos dependiendo si una cierta condicion se cumple o no.
  • for: Ejecuta una serie de comandos un numero determinado de veces.
  • while: Ejecuta una seria de comandos mientras que una determinada condicion sea cumpla.
  • until: Ejecuta una serie de comandos hasta que una determinada condicion se cumpla.
  • case: Ejecuta una o varias listas de comandos dependiendo del valor de una variable.
  • select: Permite seleccionar al usuario una opcion de una lista de opciones en un menu.
La mayoria de condiciones utilizadas con estas construcciones son comparaciones de cadenas alfanumericas o numericas, valores de terminacion de comandos y comprobaciones de atributos de ficheros. Antes de seguir viendo como estas construcciones se pueden utilizar, vamos a ver como las condiciones se pueden definir.

If

La sintaxis de esta construccion es la siguiente:
if "condicion"
then
  "comandos"
[elif "condicion"
then
  "comandos"]
[else
  "comandos"]
fi
Como ya hemos dicho, podemos comprobar los valores de terminacion de un comando, y comparar cadenas alfanumericas/numericas y atributos de ficheros. Nada mejor que unos ejemplos para aclararnos las ideas.

Haremos un script en bash viendo si el usuario esta o no en root
primero crearemos un archivo que se llamara if.sh

usuario@Linux:~$ vi if.sh 



Despues de crear este archivo agregaremos lo siguiente:

 guardamos el archivo :x y despues le damos permisos de ejecucion
chmod+x if.sh al ejecutarlo con el comando

usuario@Linux:~$ ./if.sh 
 
 
Nos tendra que aparecer si estamos en un usuario normal 
usted no esta en casa el nombre del usuario que esta ingresado 

y si en caso de estar en root dira sea usted bienvenido root 
y listo:)

domingo, 12 de octubre de 2014

Variables de Entorno

Hola, hoy hablaremos de las variables de entorno en linux

Variables de Entorno
Las variables de entorno forman un conjunto de valores dinámicos que normalmente afectan el comportamiento de los procesos en una computadora.


Donde se generan las variables de usuario cada usuario tiene un PROFILE

ponemos el comando  vi /etc/profile y nos redirigemos ah esto :

asi:

 
usuario@Linux:~$ vi/etc/profile




para ver los profiles y las variables de entorno le ponemos
nos vamos a la carpeta profile


usuario@Linux:~$ cd /etc/profile.d
y aparecera asi despues ls






.bash_profile es el el mas importante. Es leido y los comandos incluidos en el, ejecutados, cada vez que el usuario entra en el sistema. Cualquier cambio hecho en este fichero no tendra efecto hasta que salgamos y entremos en el sistema de nuevo

Este fichero comienza estableciendo ciertas funciones auxiliares y algunos parámetros básicos. Especifica varios parámetros del historial de bash y, por razones de seguridad, desactiva el almacenamiento de un fichero de historial permanente para root. También establece un símbolo del sistema por defecto. Entoces invoca a pequeños guiones de propósito único en el directorio /etc/profile.d para proporcionar una mayor inicialización. 



podemos crear cualquier archivo no mas para ejemplo de las variables de entorno en este caso
usaremos el ejemplo del hola.sh

usuario@Linux:~$ vi hola.sh
 


despues de darle permisos chmod +x hola.sh y ejecutandolo nos tendra que aparecer
usuario@Linux:~$  
Hola usuario
te encuentras en: /home/usuario
te dejo esta frase: 
y el comando fortune mostrara la frase en ingles y listo:) 

Programacion BASH

Para empezar crearemos un archivo

ponemos el comando vi seguido del nombre del archivo en este caso se llamara hola.sh entonces el comando sera asi

usuario@Linux:~$ vi hola.sh
 
y pondremos esto: 
 
  
esto de acontinuacion fue un ejemplo sencillo de la programacion BASH en linux donde ejecutando el archivo .sh nos aparecera este es mi primer programa en linux 
Para un ejemplo mas detallado volveremos a crear otro archivo que se llamara 

usuario@Linux:~$ vi hola2.sh
 
y agregaremos esto en el script de bash 
 
 

 despues de haber guardado el archivo con :x le daremos permisos de ejecucion 
con el comando chmod +x (el nombre del archivo)
 
en este caso seria asi 
usuario@Linux:~$ chmod+x hola2.sh 
 
y saldra asi despues ejecutaremos el programa ./hola2.sh
 
 

y el programa correra con lo programado en bash 
Dime tu nombre: Luis
muy bien Luis ahora dime tu edad: 21 
21 años son muchos 

algo asi tiene que aparecer al final 

Listo:)