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 <>
miércoles, noviembre 19, 2008
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
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
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
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
Suscribirse a:
Entradas (Atom)