jueves, 24 de abril de 2014

Práctica: Migración-in-place de Windows Server 2003 a Windows Server 2008

En el siguiente vídeo se muestra como realizar la migración-in-place de un máquina con Windows Server 2003 a Windows Server 2008 sin perder las funcionalidades del servidor. Esto se realiza en una máquina virtual creada anteriormente con VMware, perteneciente a la infraestructura cliente-servidor y dominio creado con anterioridad. La máquina en la que se realiza actúa como Controlador Principal del Dominio. De hecho, se mantiene el Controlador Adicional de Dominio con Windows Server 2003. La máquina cliente desde donde se hace alguna prueba corre bajo Windows 7.



domingo, 6 de abril de 2014

Menú en BATCH

Ejercicio de programación en Batch que se compone de 4 opciones. Crear usuarios, Eliminar usuarios, Hacer una copia de seguridad y salir del batch sin cerrar la consola de comandos.

El script se componone de 4  funciones.
  • La primera de ellas permite añadir usuarios al sistema gracias al comando "net user", en este apartado he querido dotar al script de un sub menú en el que aparecen 4 subopciones para la creación de usuarios.
  1. La primera subopción permite añadir usuarios automáticamente generando un nombre de usuario fijo y un número incremental según el número máximo dado.
  2. La segunda subopción permite generar los usuarios a raíz de un archivo de texto el cual hay que especificar.
  3. La tercera subopción permite crear los usuarios manualmente
  4. y la cuarta subopción permite ver la lista de usauarios.
  • La segunda opción permite eliminar usuarios, para lo cual se pregunta si se quiere eliminar los usuarios que se han creado automáticamente desde la opción anterior, permitiendo en todo caso eliminiar una serie de usuarios consecutivos indicando el número del primer usuario a eliminar y el número del último usuario a eliminar. Si se indica que se quiere hacer de forma manual, simplemente habrá que teclear el nombre de usuario a eliminar, permitiendo a su vez el programa seguir eliminando usuarios si se requiere.
  • La tercera opción permite crear una copia de seguridad de alguno o de todos los datos de una carpeta gracias al comando 'Robocopy'. Si ejecutamos esta opción el programa preguntará cuál es la ruta a copiar de la cual queremos hacer la copia de seguridad y en segundo lugar nos preguntará dónde queremos hacer dicha copia. Por último el programa nos preguntará de que tipo de archivos queremos hacer la copia, bastará con que indiquemos la extensión y realizará la copia de todos los archivos del mismo tipo. Si se quieren copiar todos bastará con indicar el comodón '*'.
  • La cuarta y última opción simplemente permite finalizar el programa sin salir de la línea de comandos.
Los archivos con el script y un ejemplo de usuarios se pueden encontrar aquí: Dropbox-link
Aquí debajo se muestra el código del script:
@echo off
cls
color 0A
echo.
echo.
echo    ******************************************
ping 1.1.1.1 -n 2 -w 500 >nul
echo    ******************************************
ping 1.1.1.1 -n 2 -w 500 >nul
echo    ******Made by Ruben Martinez Lamana*******
ping 1.1.1.1 -n 2 -w 500 >nul
echo    ******************************************
ping 1.1.1.1 -n 2 -w 500 >nul
echo    ****************marzo 2014****************
ping 1.1.1.1 -n 2 -w 500 >nul
echo    ******************************************
ping 1.1.1.1 -n 2 -w 500 >nul
echo    ****************ISO - ASIR****************
ping 1.1.1.1 -n 2 -w 500 >nul
echo    ******************************************
ping 1.1.1.1 -n 2 -w 500 >nul
echo    ******************************************
ping 1.1.1.1 -n 2 -w 500 >nul
echo.
echo Entrando al Menu...
ping 1.1.1.1 -n 5 -w 500 >nul
echo.

:MENU
cls
echo.
echo.
echo    ---------MENU---------
ping 1.1.1.1 -n 2 -w 500 >nul
echo.
echo    1 - Crea usuarios
echo    2 - Elimina usuarios
echo    3 - Copia de seguridad
echo    4 - Exit
echo.
echo.
color
set /p opc="Introduzca numero de opcion: "

if %opc% EQU 1 goto UNO
if %opc% EQU 2 goto DOS
if %opc% EQU 3 goto TRES
if %opc% EQU 4 goto FIN
echo.
Echo Por favor introduzca una opcion correcta
ping 1.1.1.1 -n 2 -w 500 >nul
GOTO MENU

:UNO
color 81
cls
echo.
echo Como deseas crear usuarios?
echo.
echo    1 - Automaticamente
echo    2 - Por archivo
echo    3 - Manual
echo    4 - Lista de usuarios
echo    5 - Volver al Menu
echo.
echo.
set /p opus1="Introduzca numero de opcion: "
echo.
if %opus1% EQU 1 goto AUTO
if %opus1% EQU 2 goto ARCHIVO
if %opus1% EQU 3 goto MANUAL
if %opus1% EQU 4 goto LISTA
if %opus1% EQU 5 goto MENU
goto UNO

:AUTO
echo.
echo Se va a proceder a crear usuarios automaticamente
echo.
echo Cuantos usuarios quieres crear?
echo.
echo.
set /p aut="Introduzca el numero de usuarios a crear: "
echo.
for /l %%i in (1,1,%aut%) do (net user iso_%%i /add)
echo.
echo -%aut%- Usuarios creados
echo.
echo Los usuarios han sido nombrados como "iso_x"
echo siendo x un numero del 1 al %aut%
echo.
goto LISTA

:ARCHIVO
echo.
set /p file="Introduzca la ruta y nombre de archivo donde se encuantra el listado de usuarios: "
echo.
for /F "tokens=1,2 delims=;" %%a in (%file%) do net user %%a %%b /add
goto LISTA

:MANUAL
echo.
set /p manus="Introduzca el nombre de usuario: "
echo.
set /p manps="Introduzca una contraseña para el usuario: "
echo.
net user %manus% %manps% /add
echo.
echo Usuario creado
echo.
pause
echo.
echo Volviendo a Menu...
echo.
ping 1.1.1.1 -n 2 -w 500 >nul
goto MENU

:LISTA
echo.
set /p op1="Quiere ver la lista de usuarios? (S/N): "
if %op1% == s net user
echo.
pause
echo.
echo Volviendo al Menu...
echo.
ping 1.1.1.1 -n 2 -w 500 >nul
GOTO MENU

:DOS
cls
color 84
echo.
set /p op2="Quiere ver la lista de usuarios? (S/N): "
if %op2% == s net user
echo.
set /p op2b="Desea eliminar los usuarios creados automaticamente? (S/N): "
if %op2b% == s goto ELIMAUTO
if %op2b% == n goto ELIMMAN
ping 1.1.1.1 -n 2 -w 500 >nul
goto MENU

:ELIMAUTO
echo.
set/p opusini="Desde que numero de usuario 'iso_x' quiere eliminar? :"
echo.
set/p opusfin="Hasta que numero de usuario 'iso_x' quiere eliminar? :"
echo.
for /l %%i in (%opusini%,1,%opusfin%) do (net user iso_%%i /delete)
echo.
echo Usuarios eliminados
echo.
echo Volviendo a menu...
echo.
ping 1.1.1.1 -n 2 -w 500 >nul
goto MENU

:ELIMMAN
echo.
set /p us="Que usuario quiere eliminar? :
echo.
net user %us% /delete
echo.
echo Usuario eliminado
echo.
ping 1.1.1.1 -n 2 -w 500 >nul
set /p op2c="Quiere eliminar otro usuario? (S/N) :"
if %op2c% == s goto :ELIMMAN
echo.
echo Volviendo al Menu...
ping 1.1.1.1 -n 2 -w 500 >nul
echo.
GOTO MENU

:TRES
cls
color 0D
echo.
set /p op3a="Escriba ruta a copiar: "
echo.
set /p op3b="Escriba ruta donde hacer la copia de seguridad: "
echo.
set /p op3c="Que tipo de archivos desea copiar? (txt, doc, pdf, * (para todos): "
echo.
echo.
robocopy %op3a% %op3b% *.%op3c% /s
echo.
pause
ping 1.1.1.1 -n 2 -w 500 >nul
echo.
echo Volviendo al Menu...
echo.
ping 1.1.1.1 -n 2 -w 500 >nul
GOTO MENU

:FIN
color
echo.
echo Saliendo...
ping 1.1.1.1 -n 2 -w 500 >nul

miércoles, 2 de abril de 2014

Prueba fallida de insercion de usuarios en fichero batch

@echo off
cls
set us=""
set ps=""
for /l %%i in (1,1,3) do (
::set /p us="Introduzca el nombre para el usuario %%i: "
set us=us%%i
::set /p ps="Introduzca la contraseña para el usuario %%i: "
set ps=ps%%i
echo %us%
echo %ps%
net user %us% %ps% /add)