miércoles, noviembre 19, 2008

Agregar maquinas por lote en SAMBA

Script de mucho uso a los que para los que gestionan varias estaciones en un controlador de dominio en el registro de SAMBA. Siempre vale la pena recordar que el script se puede adaptar al medio donde trabajes o lo vayas a usar. El archivo de entrada (maq.txt) listas con los nombres de las máquinas que se añadirán en SAMBA. ejemplo:
maquina1
maquina2
maquina3

El script es el siguiente:

#!/bin/bash
#Registro de las máquinas por lote en SAMBA.
# Crea las cuentas de las estaciones a fin de que puedan entrar en el dominio

UUID=11480;
while read linea
do
UUID=$((UUID+1));
echo "Registrando maquina $linea"
useradd -u $UUID -g machines -c "Windows 2000 Cliente" -d /dev/null -s /bin/false $linea"$"
/usr/local/samba/bin/smbpasswd -a -m $linea"$"
###############################################################################
echo "Maquina $linea cadastrada ...."
done <>

Script para agregar y eliminar usuarios de samba y el Sistema


#!/bin/bash
#######################################################
# Ejecutar como administrador
# http://cbittachira.blogspot.com
#######################################################
Principal() {
clear
dir="Directorio Actual : `pwd`"
kernel="Kernel : `uname -r`"
arquitetura="Arquitectura : `uname -m`"
grupos=groups

echo "+-------------------------------------------------+"
echo "| Utilidades para LinuX |"
echo "+-------------------------------------------------+"
echo "| Agregar/ Remover usuarios en SaMBa y en Linux |"
echo "+-------------------------------------------------+"
echo "| Escrito por: |"
echo "| Pablo Contramaestre pcontramaestre@gmail.com |"
echo "+-------------------------------------------------+"
echo
echo $dir
echo $kernel
echo $arquitetura
echo
echo "Opcoes:"
echo "1. Agregar un Usuario"
echo "2. Eliminar un Usuario"
echo "3. Modificar la contraseña de un Usuario"
echo "4. Listar Usuarios de Samba"
echo "5. Salir"
echo -n "Entre la opción deseada => "
read opcion
echo
case $opcion in
1) Adicionar ;;
2) Eliminar ;;
3) Modificar ;;
4) Listar ;;
5) exit ;;
*) "Opcion desconocida." ; echo ; Principal ;;
esac
}

Listar() {
echo "Lista de Usuarios Samba: "
cat /etc/samba/smbpasswd | awk 'BEGIN{ FS=":" } { print "Usuario:" $1 "\t" "Id:" $2}'|more
read msg
echo "Lista de Usuario del Sistema: "
cat /etc/passwd | awk 'BEGIN{ FS=":" } { print "Usuario:" $1 "\t" "Id:" $3}' |more

echo "Presione cualquier tecla para continuar..."
read msg
Principal
}

Adicionar() {
echo -n "Introduzca el login del usuario: "
read login
echo -n "Escriba el nombre completo del usuario: "
read nombre
echo -n "Entre el grupo de usuarios: "
read grupo
echo -n "Entroduzca la contraseña del usuario: "
stty -echo
read password
stty echo
echo
echo "Mensajes del Sistema: "
echo
( echo $grupo ; echo $grupo ) | sudo groupadd -r -f $grupo
sudo /usr/sbin/useradd $login -c "$nombre" -g "$grupo" -d /home/user/$login -s /bin/bash; echo "$password" | sudo /usr/bin/passwd $login --stdin
echo
( echo $password ; echo $password ) | sudo smbpasswd -s -a $login
#smbpasswd -a $login $password
echo
echo "Presione cualquier tecla para continuar..."
read msg
Principal
}

Modificar() {
echo -n "Introduzca el Login del usuario a cambiar la contraseña: "
read login
echo -n "Entroduzca la contraseña del usuario para cambiar: "
stty -echo
read password
stty echo
echo
echo "Mensajes del Sistema: "
( echo $password ; echo $password ) | sudo smbpasswd -s $login
echo "$password" | sudo /usr/bin/passwd $login --stdin
# echo
# ( echo $senha ; echo $password ) | sudo smbpasswd -s -a $login
#smbpasswd -a $login $password
# ( echo $senha ; echo $password ) | sudo smbpasswd -s -a $login
#smbpasswd -a $login $password
echo
echo "Presione cualquier tecla para continuar..."
read msg
Principal
}

Eliminar() {
echo -n "Introduzca el login del usuario a eliminar: "
read login
echo
echo "Mensajes del Sistema: "
echo
sudo /usr/bin/smbpasswd -x $login
echo
sudo /usr/sbin/userdel $login
echo
echo "Pressione cualquier tecla para continuar..."
read msg
Principal
}
Principal

Manuales de OpenOffice

Manuales de OpenOffice


Introducción al OpenOffice


Manual de Writer:

Manual de Writer

Ejercicio 1

Ejercicio 2


Manual de Impress:

Manual de Impress


Manual de Calc:

Manual de Calc

Ejercicio 1

Ejercicio 2

Ver los comandos mas usados en la Consola

Para ver los comandos que mas usas en la consola basados en el history de la shell, hacemos el siguiente comando:

history | awk '{print $2}' | sort | uniq -c | sort -rn | head

martes, noviembre 18, 2008

Eliminar Todos Directorios Vacios

Para eliminar directorios vacíos (incluso si los nombres de archivo o directorios contienen espacios o caracteres extraños) de un árbol que puede hacer:

find . -type d -empty -print0 | xargs -0 rmdir

domingo, noviembre 16, 2008

Ver la diferencia de archivos entre dos directorios

El siguiente comando Le mostrará una diferencia de los archivos en la raíz de dir_1 y dir_2:

diff -u <(ls -c1 dir_1) <(ls -c1 dir_2)

Donde dir_1 y dir_2 son los directorios a buscar las diferencias

Convertir NRG a ISO en Linux con dd

Para convertir simplemente imagenes NRG (Nero formato) a las imágenes Iso se realiza con el comando dd

Nero escribe un encabezado de 300kb en la norma ISO. Entonces lo que hay que realizar es un skip a esos primero 300 kb, y el comando es el siguiente:

dd bs=1k if=NRG_FILE of=ISO_FILE skip=300