dimarts, 16 de juny de 2015

Como crear una plantilla personalizada en servidores Proxmox

A continuación se detallará la forma de crear una plantilla personalizada con OpenVZ en el sistema Proxmox
1. En primer lugar nos bajamos una plantilla con el ssoo que deseamos personalizar. (Buscar en internet templates proxmox por ejemplo)
2. Creamos la maquina virtual openvz desde la consola proxmox o tecleando lo siguiente desde SSH :

vzctl enter CTID (CTID es el ID  de la maquina virtual)
3. Arrancamos la nueva maquina y agregamos y configuramos el software necesario.
4. Salimos de la maquina virtual sin pararla
5. Quitamos la dirección IP de la interfaz de red de nuestra maquina virtual, podemos usar este comando

vzctl set CTID --ipdel all --save
6. Paramos la maquina virtual usando este comando vzctl stop CTID o desde la consola
7. Nos dirigimos al directorio donde se encuentra nuestra maquina virtual desde el ssh

cd /var/lib/vz/private/CTID
8. Comprimimos el directorio y lo ubicamos en la capeta de plantillas

tar –czvf /var/lib/vz/template/cache/

enlace descarrega de container proxmox openvz



per decarregar containers i iso per generar màquina virtual 

conversor formats màquines virtuals , virtualbox , vmware , proxmox , vdi , vmdk , qcow

Convertir Vmware .vmdk a Proxmox .raw

Seguint amb Proxmox… avui he estat passant les maquines virtuals que tinc al server amb vmware al meu nou proxmox… es senzill i ràpid, l’ordre seria:

qemu-img convert -f vmdk FOGServer.vmdk -O raw images/104/vm-104-disk-1.raw
Al Proxmox cal ficar-les a la ruta /var/lib/vz/images/100 (101, 102…)

Convert Virtualbox vdi to KVM qcow

Step 1. Convert the VB disk vdi image to a raw image format.
VBoxManage clonehd --format RAW ubuntu.vdi ubuntu.img
Note: The ubunut.img is a raw disk image, it will be quite large (as many GB as your virtual drive is, see above).
Step 2 : convert the raw image to a qcow

qemu-img convert -f raw ubuntu.img -O qcow2 ubuntu.qcow

That is all there is to it, the ubuntu.qcow can be used with KVM.
Test your new image (ubuntu.qcow) with:

kvm -m 512 -usbdevice tablet -hda ubuntu.qcow

If it is working you may delete the raw image (ubuntu.img) and archive or delete the ubuntu.vdi 


Convert VMware .vmdk to KVM .qcow2 or Virtualbox .vdi

First convert the .vmdk to a format compatible with qemu-img.

Turns out this can be done with vmware-vdiskmanager.
1. Converting from .vmdk
Use vmware-vdiskmanager to create a copy. This works with a single or multiple disks.

Ubuntu-f003.vmdk ...

vmware-vdiskmanager -r Ubuntu.vmdk -t 0 Ubuntu-copy.vmdk

Note: If you have multiple disks, use Ubuntu.vmdk as well (you do not need to convert each Ubuntu-f001.vmdk).
Note: That is a -t Zero not a capital O. see man vmware-vdiskmanager.
Note: vmware-vdiskmanager is part of vmware server (and workstation, not sure about player).
2. Alternate – Converting “flat files”.
Flat files are used by vmware if you create a virtual disk (vmdk) with the “Allocate all disk space now” option (you have this option when creating disks for use with vmware). Flat files contain all the data from your .vmdk and can (usually) be converted directly.
Notice, flat files can be directly converted to .qcow. If you wish to convert to .vdi (VirtualBox) convert flat to raw.


qemu-img convert Ubuntu-flat.vmdk -O qcow2 Ubuntu-copy.qemu
Note: That is a capital O qcow2

RAW (for VirtualBox)

qemu-img convert Ubuntu-flat.vmdk -O raw Ubuntu-copy.img
Note: That is a capital O qcow2

KVM – Convert to qcow2

Convert the new “copy” .vmdk with qemu-img

qemu-img convert Ubuntu-copy.vmdk -O qcow2 Ubuntu-copy.qemu

Note: That is a capital O qcow2
3. Boot the image with KVM
kvm -hda Ubuntu-copy.qcow -net nic -net user -m 512
Caveats :
  1. If you have vmware-tools installed, you will have mouse integration.
  2. If you have vmware-tools installed, the guest desktop may well be larger then the kvm window. You will need to resize the guest display to 800×600 .
  3. I could not convert a .vmdk which was using LVM (Fedora).

VirtualBox – Convert to .vdi

1. First use qemu-img to convert the copy .vmdk to raw.

qemu-img convert Ubuntu-copy.vmdk Ubuntu-copy.img

qemu-img with no options will make a raw image. If you prefer you can specify

qemu-img convert Ubuntu-flat.vmdk -O raw Ubuntu-copy.img

2. Then convert the raw image with VBoxManage
VBoxManage convertfromraw --format VDI Ubuntu-copy.img Ubuntu-copy.vdi
3. Start VirtualBox, make a new machine or add the Ubuntu.vdi to an existing machine.
Caveats :
  1. With VMWare-tools installed, Mouse integration did not work (as it did with KVM).
  2. The resolution of the guest is also larger then the Virtualbox window.
  3. I installed the VirtualBoxAdditions and guest resolution worked well, mouse integration, however, did not.




dimarts, 17 de juny de 2014

sysprep en windows 7


Clean Up the Image

When you set up Windows 7, you created a temporary user account to log on to it. In this step, you start the computer in Audit mode to remove that temporary user account and its user profile. This is also your last chance to install any applications, device drivers, and updates in your image.

To start the computer in Audit mode using the System Preparation Tool (Sysprep)

  1. Click Start, type C:\Windows\System32\sysprep\sysprep.exe in the Search box, and then press ENTER to start Sysprep, shown in Figure 4.

    System Preparation Tool dialog box
    Figure 4. The System Preparation Tool
  2. In the System Cleanup Action list, select Enter System Audit Mode.
  3. Select the Generalize check box.
  4. In the Shutdown Options list, select Reboot.
  5. Click OK to restart the computer in Audit mode.
  6. After the computer restarts, Windows 7 automatically logs in as Administrator.

To remove the temporary user account’s profile

  1. Click Start, type user profile in the Search box, and then click Configure advanced user profile properties in the search results.
  2. In the User Profiles dialog box, click the name of the temporary user account you created when you installed Windows 7 on the reference computer, and then click Delete. Click Yes to confirm.
  3. Click OK to close the User Profiles dialog box.

To remove the temporary user account

  1. Click Start, right-click Computer, and then click Manage.
  2. In the console tree (left pane), click Local Users and Groups.
  3. In the details pane (middle pane), double-click Users.
  4. Right-click the name of the temporary account you created when you installed Windows 7 on the reference computer, and then click Delete.
  5. Click Yes to confirm that you want to delete the temporary user account.
  6. Click OK to acknowledge that you are deleting an administrator account.
  7. Close the Computer Management window.

Generalize the Image

In this step, you generalize the image and prepare it to start in Windows Welcome after you install it on each computer. Generalizing the image removes any hardware-dependent information from it, resets the activation timer, and cleans up Windows 7 so that you can duplicate the image on other computers.

To prepare the computer to start in Windows Welcome using Sysprep

  1. Open Sysprep. (Windows 7 automatically runs Sysprep when you start the operating system in Audit mode.)
  2. In the System Cleanup Action list, select Enter System Out-of-Box Experience (OOBE).
  3. Select the Generalize check box.
  4. In the Shutdown Options list, select Shutdown.
  5. Click OK to run Sysprep and shut down the computer.

Capture the Image

At this point in the process, you have installed Windows 7 on the reference computer, and you are ready to capture an image of it. You use the bootable UFD you created earlier to start the computer. Additionally, you will capture the image to this UFD. For this reason, you should use a UFD that has a capacity of 8 GB or more to ensure that there is room for both Windows PE and the image you capture.

To capture an image of Windows 7 on the bootable UFD

  1. Insert the bootable UFD into a USB port on the reference computer.
  2. Turn on the reference computer, and then perform the following tasks:
    1. When prompted, open the boot device list. (In most cases, pressing F12 during the basic input/output system [BIOS] splash screen opens the computer’s boot device list.)
    2. From the list of boot devices, select the bootable UFD that you inserted in step 1 to start the computer using the bootable UFD.

      If you do not see a prompt to display a boot device list, you must enable booting from UFD devices in the computer’s BIOS. For more information, see the computer’s documentation.
  3. At the command prompt, identify which drive contains Windows 7—typically drive D in Windows PE. To verify this, type dir d:, and then press ENTER.
    If you see the Program Files, Users, and Windows folders, drive D contains Windows 7. Otherwise, examine each drive to determine which drive contains Windows 7.
  4. At the command prompt, identify which drive is the bootable UFD.
    This drive contains Imagex.exe in the root of the drive. It will not be drive X. To determine the drive letter, run dir e:, dir f:, dir g:, and so on until you locate the drive that contains Image.exe in the root.
  5. At the command prompt, type one of the commands shown in Table 2, depending on the edition of Windows 7 you are using, and then press ENTER. Substitute the actual drive letter containing Windows 7 for D: and the drive letter containing Image.exe for E: in Table 2.

    Table 2. ImageX Commands


    Edition ImageX Commands
    Enterprise E:\imagex /compress fast /check /flags “Enterprise” /capture D:
    E:\install.wim “Windows 7 Enterprise” “Windows 7 Enterprise Custom”
    Professional E:\imagex /compress fast /check /flags “Professional” /capture D:
    E:\install.wim “Windows 7 Professional” “Windows 7 Professional Custom”
  6. Shut down the reference computer, and remove the UFD from its USB port.

Sysprep a Windows 7 Machine – Start to Finish V2  http://theitbros.com/sysprep-a-windows-7-machine-start-to-finish-v2/

de la direcció http://www.ite.educacion.es/formacion/materiales/130/cd/pdf/W75-ConfiguracionAvanzada.pdf


 A continuación y para completar de modo definitivo la configuración del equipo "Alumno" del cual estamos partiendo para crear una imagen, deberemos instalar en el mismo la aplicación "SYSPREP".
"SYSPREP" es la herramienta de Microsoft que permite preparar un sistema operativo para la clonación de sus discos, y su posterior restauración mediante una imagen de disco. Cada instalación de un sistema operativo Windows incluye elementos únicos y particulares de cada instalación, tales como el nombre del ordenador, el identificador de seguridad, la caché de drivers, etc., que deben ser generalizados antes de capturar e implementar una imagen de disco a múltiples ordenadores, encargándose de dicha labor la herramienta "SYSPREP".
Validados en el sistema con las credenciales del usuario "Profesor", podremos encontrar la herramienta "SYSPREP" en la carpeta "C:\Windows\System32\sysprep" del equipo "Alumno", tal y como vemos en la ventana de la imagen inferior.
Ahora que ya sabemos la ubicación del fichero que necesitamos para ejecutar SYSPREP, antes de proceder a su ejecución deberemos crear un fichero XML de respuestas para que la ejecución de SYSPREP sea completamente desatendida.
NOTA: XML es una tecnología relativamente novedosa en la que mediante una serie de etiquetas indicaremos a la aplicación correspondiente ("SYSPREP" en este caso), los valores que deben ser asociados a cada parámetro que la aplicación solicite.
La creación de un fichero XML partiendo desde cero es bastante compleja, y aunque hay herramientas que simplican su creación, no creemos oportuno profundizar en ellas pues exceden los contenidos de esta documentación, así pues nos limitaremos a proporcionar un fichero XML base que podremos utilizar directamente o bien modificar a nuestro gusto si deseáramos cambiar algún valor en alguna etiqueta.
Un contenido base del fichero de configuración "unattend.xml" es el mostrado a continuación:



GMT Standard Time



Si copiamos las instrucciones anteriores en un documento de texto plano creado, por ejemplo, con el "Bloc de notas", y salvamos el documento con el nombre "unattend.xml", ya dispondremos del fichero necesario para realizar este apartado.
NOTA: Cuando guardemos con el "Bloc de notas" el fichero indicado, hemos de tener en cuenta que en la lista desplegable "Tipo", hemos de elegir la opción "Todos los archivos (*.*)", tal y como vemos en la ventana de la imagen inferior, pues sino fuera así, el fichero sería almacenado con el nombre "unattend.xml.txt", lo cual provocaría su incorrecto funcionamiento.
NOTA: En el momento de elaborar esta documentación, en la dirección URL "http://blog.brianleejackson.com/sysprep-a-windows-7-machine-start-to-finish" podíamos obtener (en inglés) una descripción precisa de como crear una imagen desatendida com SYSPREP y su fichero XML de respuestas.
Así pues el fichero "unattend.xml" contendrá todas las respuestas a las preguntas típicas de cualquier proceso de instalación de Windows 7 Enterprise, logrando de ese modo que las respuestas que habitualmente proporcionaría manualmente el usuario que está realizando la instalación, sean tomadas por el sistema de modo automático a partir de la información recogida en dicho fichero.
NOTA: Una descripción detallada de todas las etiquetas que podemos incluir en el fichero XML, para lograr una instalación desatendida, podíamos obtenerla en el momento de elaborar esta documentación en la URL "http://technet.microsoft.com/es-es/library/dd744272(WS.10).aspx". También podíamos encontrar referencia a todas las etiquetas que pueden ser incluidas en un fichero XML en la URL "http://technet.microsoft.com/es-es/library/ff699038(en-us,WS.10).aspx".
Una vez que dispongamos del fichero XML de instalación desatendida de nombre "unattend.xml", lo copiaremos en la ruta "C:\Windows\System32\sysprep", de modo que como resultado de dicha acción se nos presentará la siguiente ventana que nos solicitará permiso para copiar en la ruta especificada el fichero XML indicado, permiso que concedermos pulsando en ella directamente sobre el botón "Continuar".
Tras completarse la copia del fichero "unattend.xml" en la carpeta "C.\Windows\System32\sysprep", la ventana correspondiente tendrá el aspecto mostrado en la imagen inferior.
Ahora que ya disponemos en la misma carpeta de "SYSPREP" y del fichero de respuestas desatendidas "unattend.xml", estamos en disposición de ejecutar la aplicación mediante la cual prepararemos a nuestro equipo para crear a partir del mismo una imagen que será replicada posteriormente en otros equipos.
Para llevar a cabo lo indicado en el párrafo anterior, en primer lugar lanzaremos una ventana de DOS donde ejecutar el comando correspondiente, para lo cual en primer lugar deberemos pulsar sobre el menú "Inicio" y tras ello teclear en la caja de texto correspondiente "cmd", tal y como vemos en la imagen inferior, tras lo cual pulsaremos sobre la tecla "ENTER".
Como resultado de la acción anterior pasará a ser mostrada la siguiente ventana de DOS, en la cual teclearemos la cadena "cd \Windows\System32\sysprep", tal y como vemos en la ventana de la imagen inferior, y tras ello pulsaremos sobre la tecla "ENTER".
Tras completar la ejecución de la acción anterior, el nuevo "prompt" quedará establecido a "C:\Windows\System32\sysprep>", debiendo teclear en ese instante la cadena de texto "sysprep /generalize /oobe /shutdown /unattend:"C:\Windows\System32\sysprep\unattend.xml"" (incluidas las comillas existentes en "C:\Windows\System32\sysprep\unattend.xml"), tal y como vemos en la ventana de la imagen inferior, momento en el que pulsaremos sobre la tecla "ENTER" para hacer efectiva la ejecución de "SYSPREP".
NOTA: Se debe tener especial precaución a la hora de teclear la orden anterior, pues cualquier parámetro diferente provocará que no se realicen las tareas correspondientes según nuestro deseo. La ejecución de la orden "sysprep /generalize /oobe /shutdown /unattend:"C:\Windows\System32\sysprep\unattend.xml"" deberá ejecutar de modo automático, sin ningún tipo de preguntas, el comando "SYSPREP" asociado al fichero de respuestas "unattend.xml" creado ex-profeso para tal fin.
Dará pues comienzo la ejecución del comando "SYSPREP", proceso este que durará unos minutos, luego esperaremos pacientemente a que se complete.
Tras unos breves instantes, el equipo "Alumno" del cual estamos partiendo para hacer una imagen personalizada, y sobre el que hemos ejecutado "SYSPREP", se apagará de modo automático, quedando dicho equipo preparado para crear una imagen a partir del mismo, proceso que llevaremos a cabo posteriormente en el siguiente módulo de la documentación.
NOTA: Una vez que el equipo "Alumno" se haya apagado como consecuencia del fin de la ejecución de "SYSPREP", dicho equipo NO podrá volver a ser arrancado hasta que sea creada a partir del mismo la imagen deseada, pues si no fuera así, deberíamos repetir de nuevo todo el proceso de ejecución de "SYSPREP" antes de crear la imagen. 

dimarts, 10 de juny de 2014

Enabling Root on Ubuntu

Enabling Root on Ubuntu http://www.fogproject.org/wiki/index.php/Ubuntu_14.04 Please open up a terminal or console and log in as the user you created. To gain access, enter the following command and re-type the user password. sudo su - Then type the following command: passwd root It will ask you to enter the new password. You will not see anything being entered, but it is typing. Once complete Press Enter. It will ask you to confirm the password. You will not see anything being entered, but it is typing. Once complete Press Enter. The terminal will return with Password updated successfully! Type or copy the following code into the terminal and press enter. echo "greeter-show-manual-login=true" >> /etc/lightdm/lightdm.conf Please restart the machine with the command: shutdown -r now Once the system returns, you can now login as the root user even from the GUI. Just type the username: root in the Password field, you'll type the password you set in the passwd root command above.

diumenge, 1 de desembre de 2013

FTP Sync with Linux

donat que en un hosting no tinc acces via ssh, i no puc utilitzar rsync per realitzar backups contra ell, utilitzaré la mateixa  estrategia pero ara fent-ho via ftp amb lftp

la meva font d'informació és :


pero finalment canvio la ordre amb la opció -r per tal de poder pujar del meu servidor al remot, i tot el document està pensat en sentit contrari, del remot a aquest. (jo no puc utilitzar comandes en aquest hosting)

dintre del fitxer lftp-script posaré 
open ftp://username:password@website.com
mirror -R -v --only-newer /var/lib/mysql /eso2/mysql
d'aquesta manera envio de sabadell a mirrors hosting en nominalia. 

la web font indica que .....

If you can’t use SSH or have limited access to a server it can be difficult to synchronise or create backups of files such as websites. As asked by Tom here’s how to use the powerful and flexible LFTP to sync a remote FTP account to a local directory using Linux.
First of all you will need to install LFTP via your package manager or from their website at http://lftp.yar.ru/. In Ubuntu, for example, you would use:
sudo apt-get install lftp
Next create a small and easy script called lftp-script that LFTP can read:
open ftp://username:password@website.com
mirror -v --only-newer /home/local/path/ /website.com/public_html/
As lftp-script contains a username and password you will want to remove all group and public permissions on the file with something like;
chmod 600 lftp-script
Finally you can run LFTP and start the synchronisation straight away, its that easy and perfect for cron backups:
lftp -f /path/to/lftp-script
In the example above I used -v (verbose) and –only-newer so that files that haven’t changed don’t get downloaded and overwritten. There are a ton of arguments that will solve just about every FTP problem needed. Some interesting ones, for mirror, are below.
 mirror [OPTS] [source [target]]
       Mirror specified source directory to local target directory. If  target
       directory ends with a slash, the source base name is appended to target
       directory name. Source and/or target can be URLs pointing  to  directo‐
            -c,    --continue                continue a mirror job if possible
            -e,    --delete                  delete   files   not  present  at
                                             remote site
                   --delete-first            delete old files before transfer‐
                                             ring new ones
                   --depth-first             descend    into    subdirectories
                                             before transferring files
            -s,    --allow-suid              set suid/sgid bits  according  to
                                             remote site
                   --allow-chown             try  to  set  owner  and group on
                   --ascii                   use ascii mode transfers (implies
                   --ignore-time             ignore time when deciding whether
                                             to download
                   --ignore-size             ignore size when deciding whether
                                             to download
                   --only-missing            download only missing files
                   --only-existing           download   only   files   already
                                             existing at target
            -n,    --only-newer              download  only  newer  files  (-c
                                             won't work)
                   --no-empty-dirs           don't  create  empty  directories
                                             (implies --depth-first)
            -r,    --no-recursion            don't go to subdirectories
                   --no-symlinks             don't create symbolic links
            -p,    --no-perms                don't set file permissions
                   --no-umask                don't apply umask to file modes
            -R,    --reverse                 reverse mirror (put files)
            -L,    --dereference             download symbolic links as files
            -N,    --newer-than=SPEC         download only  files  newer  than
                                             specified time
                   --on-change=CMD           execute  the  command if anything
                                             has been changed
                   --older-than=SPEC         download only  files  older  than
                                             specified time
                   --size-range=RANGE        download  only files with size in
                                             specified range
            -P,    --parallel[=N]            download N files in parallel
                   --use-pget[-n=N]          use pget to transfer every single
                   --loop                    loop until no changes found
            -i RX, --include RX              include matching files
            -x RX, --exclude RX              exclude matching files
            -I GP, --include-glob GP         include matching files
            -X GP, --exclude-glob GP         exclude matching files
            -v,    --verbose[=level]         verbose operation
                   --log=FILE                write  lftp  commands  being exe‐
                                             cuted to FILE
                   --script=FILE             write lftp commands to FILE,  but
                                             don't execute them
                   --just-print, --dry-run   same as --script=-
                   --use-cache               use cached directory listings
                   --Remove-source-files     remove  files after transfer (use
                                             with caution)
            -a                               same  as  --allow-chown  --allow-
                                             suid --no-umask
… and for the rest man lftp or take a look at the LFTP online man.

el man es troba a la direcció http://lftp.yar.ru/lftp-man.html

dilluns, 25 de novembre de 2013

habilitar quota en debian per la partició /home


apt-get install quota quotatool

editem fstab

/dev/sda5 /home ext4 defaults,usrquota,grpquota 0 2

Crear 2 arxius a la partició /home per crear quotes d'usuari :

touch /home/aquota.user /home/quota.user
touch /home/aquota.group /home/quota.group
chmod 600 /home/aquota.user /home/aquota.group

tornem a montar la partició per no tenir que reiniciar

mount -o remount /home


quotacheck -avug

i dona error sembla ser que per tenir dintre de la partició una partició virtual activa

quotacheck: Cannot guess format from filename on /dev/disk/by-uuid/7c16a6bf-8383-4142-b0c0-65cc408389b3. Please specify format on commandline.
quotacheck: Cannot find filesystem to check or filesystem not mounted with quota option.

finalment a la web


Posted by Anonymous (194.208.xx.xx) on Tue 3 Apr 2012 at 19:51

If you run into the following error message:

quotacheck: Cannot guess format from filename on /dev/example/disk. Please specify format on commandline.
quotacheck: Cannot find filesystem to check or filesystem not mounted with quota option.

 most likely that you have some kind of VPS which is running inside a 
virtual machine. To get this up and running run the following:

# quotacheck -F vfsv0 -afcvugm

If you want debugging information add a d to the last bunch of options:

# quotacheck -F vfsv0 -afcvdugm

solucinat, ara passa per tots els fitxers de la partició.

queda ara asignar la quota per usuari de 500 MBytes

he creat un usuari cuota per que sigui la referencia de quota dels alumnes

edquota cuota

Disk quotas for user cuota (uid 1001):
  Filesystem                   blocks       soft       hard     inodes     soft     hard
  /dev/sda5                         0     500000     550000          0        0        0

a l'script de donar alta alumnes finalment copia la quota d'aquest usuari a tots

for A in  $(cat $1) ; do

edquota -p cuota $A  


on $A és la varible que porto amb el nom d'alumne.


altre manera d'aplicar-ho a tots els usuaris a partir d'un identification number

Aplicando cuotas masivamente.

Si se quiere que todo aplique para los usuarios existentes, a partir de UID 510, por ejemplo, suponiendo que tiene al usuario "pepito" como molde (note por favor el acento grave en el mandato justo antes de awk, no es una comilla ni apostrofe):

edquota -p pepito `awk -F: '$3 > 510 {print $1}' /etc/passwd`