lunes, 20 de agosto de 2007

Nociones de Debian

reenviado de http://bulma.net/body.phtml?nIdNoticia=1609


Una vez mas Bulma nos da la receta infadible para varios temas

¿Porqué existen tres versiones de Debian: stable, testing, unstable?

La estable (stable) es la versión que se ha liberado oficialmente como versión Debian y de las cuales existen CDs oficiales. Las otras dos versiones son los pasos previos para lograr una versión estable. Es decir, los paquetes nuevos de software empiezan por la inestable (unstable), si no tienen errores graves en 10 días, pasan a testing automáticamente. El proceso de hacer una estable es "manual", se decide una fecha de "congelación", donde no se añaden nuevos paquetes a testing y hay que solucionar los bugs de los existentes. Una vez que se solucionan todos, en Debian se decide o no pasarlos a estable y así liberar una versión nueva.

¿Qué son esos nombres como Potato, Woody, Sarge, Sid?

Actualmente (enero de 2003) la versión estable es Woody, que fue oficialmente lanzada hace unos pocos meses. La testing, que tenía el nombre Woody antes que ésta se convierta en stable, ahora se llama Sarge. La inestable dicen que siempre se llamará Sid, y que en realidad significa "System in Development". Pero puede ser sólo una leyenda urbana. :-)

¿Y de donde sacan los nombres?

Se empezaron a usar en la época que Bruce Perens era líder de Debian. Bruce trabajó en Pixar, la empresa de animación de Disney y que hizo la película "Toy Story".

Tengo Internet, ¿que paquetes debo instalar del CD?

Los mínimos para que te funcione la red, luego ya podrás instalar y actualizar todo desde los servidores de Debian.

¿Cómo se actualiza Debian?

En muy pocas palabras, con un "apt-get update" para actualizar la lista de paquetes y versiones, y con "apt-get dist-upgrade" para resolver dependencias y actualizar todos los paquetes instalados.

¿Cómo se instala el paquete xyz desde la red?

apt-get install xyz

¿Donde se especifican las listas de servidores para consultar y bajar paquetes con el apt-get?

En el fichero /etc/apt/sources.list.

¿Cuales es la configuración básica del sources.list para actualizar con el apt-get?

deb http://http.us.debian.org/debian stable main contrib non-free
deb http://non-us.debian.org/debian-non-US stable/non-US main contrib non-free
deb http://security.debian.org stable/updates main contrib non-free
deb-src http://http.us.debian.org/debian stable main contrib non-free
deb-src http://non-us.debian.org/debian-non-US stable non-US


¿Esos son los únicos servidores?

No, hay muchos, elige los que mejor te vayan. Por ejemplo los de Holanda suelen ir muy bien desde España (es sólo un ejemplo...). Basta cambiar los ".us." del nombre de los servidores por ".nl.":

deb http://http.nl.debian.org/debian stable main contrib non-free
deb-src http://http.nl.debian.org/debian stable main contrib non-free


¿Donde está la lista completa de mirrors de Debian?

En http://www.debian.org/mirror/list

¿Cómo puedo comprobar que servidores me van más rápidos?

Con el netselect. Mira este artículo en Bulma.

¿Donde se especifica la versión de Debian (stable, testing o unstable) que uso?

En el tercer argumento de cada línea en el sources.list.

¿Que diferencia hay entre especificar, por ejemplo, stable o Woody?

Mientras no se cambie la versión estable, no hay ninguna. Sin embargo cuando, por ejemplo, Sarge pase a estable, los que tenían especificado "stable" se actualizarán a la nueva, Sarge. En cambio, si tenías especificado Woody, seguirás con ella hasta el final de los días, o hasta que cambies el sources.list.

¿Que versión debo usar?

En principio la versión "pública y oficial" es la estable, pero todos sabemos que como Debian libera una estable con muy poca frecuencia, a los pocos meses se queda "anticuada". Ésto hace que mucha gente esté usando testing o unstable. Si vas a usarlo en un servidor de producción, lo mejor es la estable. Pero si tienes un poco más de "márgen", te consideras un "iniciado" en Linux y te interesa la última versión de todos los paquetes, puedes usar la testing, suele ir muy bien (en bulma.net usamos testing desde hace tiempo), salvo esporádicos problemas que se pueden solucionar fácilmente si tienes los conocimientos técnicos necesarios. Si por otro lado, te gusta vivir al borde del peligro y probar paquetes y versiones nuevas (y así ayudar a Debian reportando bugs), usa la unstable.

¿Cómo paso de la versión estable a la testing?

Modificando el sources.list. Hay que cambiar el tercer argumento (stable) por testing. Luego hay que hacer un apt-get update y apt-get dist-upgrade.

¿Cómo paso de la versión testing a la unstable?

Haciendo lo mismo que la anterior, pero en este caso habrá que especificar unstable.

He cambiado el tercer parametro de stable a unstable y he hecho apt-get update y apt-get upgrade. Sin embargo no ha actualizado todos los paquetes.

Que en este caso siempre hay que usar
apt-get dist-upgrade
ya que resuelve mejor las dependencias.

¿Cómo paso de testing a stable?

Uep!!! Alerta, estás intentando hacer un downgrade, aunque posible, puede ser muy complicado y hasta imposible si se han cambiado los ficheros de configuración. Quizás es mejor hacer una reinstalación desde CD, pero si realmente insistes, haz un man 5 apt_preferences y lee con mucha atención antes de intentarlo. No daré la solución, porque si te falla algo me echarás la culpa :-)-

¿Cómo paso de unstable a stable?

Ver pregunta anterior.

¿Y puedo pasar de unstable a testing?

Si tu sistema está funcionando correctamente (pero no quieres tantas actualizaciones diarias o más seguridad en el futuro), mi recomendación es: cambia el sources.list y especifica testing donde había unstable. A partir de ahora paciencia, a los pocos días tu sistema ya empezará a estar sincronizado con testing, a medida que los paquetes de testing se hayan actualizado con los que había en unstable. A las pocas semanas, a menos que haya un cambio muy gordo en Debian como el que está pasando ahora mismo con el gcc y las glibc, tu sistema ya "será" un testing.

¿Es posible mezclar paquetes de distintas ramas? ¿Es decir usar paquetes de unstable en testing, o de testing en stable?

Si, es posible. Mira este artículo y/o este otro.

¿Cuál es la mejor forma de reportar un bug?

Instala el paquete reportbug y ejecuta reportbug nombre_de_paquete.

¿Cómo se hace para reconfigurar el paquete xyz?

dpkg-reconfigure xyz

¿Cómo se hace para reinstalar el paquete xyz?

Normalmente no hace falta, a menos que ta hayas cargado algún programa esencial. Si es así basta con un

apt-get install --reinstall xyz

No quiero hacer una actualización completa, sólo instalar las últimas versiones de los paquetes abc y zyz. ¿Cómo lo hago?

apt-get install abc xyz

¿Cómo hago para ver todos los ficheros que se instalaron con el paquete xyz?

dpkg -L xyz

¿Cómo hago para saber a que paquete pertenece un fichero?

dpkg -S fichero

¿Cómo hago para buscar paquetes Debian usando palabras claves?

apt-cache search palabra1 palabra2...

¿Y para ver la descripción más detallada del paquete xyz?

apt-cache show xyz
o
apt-cache showpkg xyz

¿Cómo hago para desinstalar el paquete xyz?

apt-get remove xyz
o
dpkg -r xyz

¿Me quedan los ficheros de configuración del paquete xyz aunque lo desinstale?

Si, esos ficheros no son borrados.

Si vuelvo a reinstalar un paquete, ¿se mantienen sus ficheros de configuración anteriores?

Si.

Pero yo también quiero borrar esos ficheros de configuración. ¿Cómo hago?

apt-get remove --purge xyz
(es aquivalente un dpkg -P xyz).

¿Cómo reconfiguro la zona horaria?

tzconfig

¿Cómo hago para cambiar los locales del sistema?

dpkg-reconfigure locales

En modo consola no me reconoce el teclado español. ¿Cómo hago para cambiar la configuración del teclado?

dpkg-reconfigure console-data

Aún así no me reconoce el teclado en el KDE ¿Cómo lo hago?

La forma más sencilla es ir al panel de control de KDE, en el módulo "Regional & Accesibility::Keyboard Layout". Allí hay que habilitar el "Enable Keyboard Layouts" (arriba de todo) y luego seleccionar el teclado que corresponda.

¿Cómo hago para bajar el código fuente de los paquetes?

apt-get source xyz
Te bajará los fuentes, compuestos normalmente de un .tgz, .diff y un dsc, en el directorio actual de trabajo y te creará un directorio (xyz-versión con todo preparado para compilar.

¿Cómo compilo el código fuente?

Dentro del directorio que te ha generado el apt-get-source haces:
fakeroot dpkg-buildpackage
El fakeroot te permite compilar y generar los .deb sin necesidad de ser root. Al finalizar verás que en el directorio inmediato superior uno o varios .deb. Ya podrás hacer un dpkg -i

Cuando intento compilar el paquete xyz me indica que no puede compilar porque faltan instalar otros paquetes, ¿cómo lo soluciono?

Hay que instalar los paquetes necesarios para poder compilar un paquete:
apt-get build-depxyz

Me pasé a Sid, pero al intentar el dist-upgrade me dice que no puede instalar BBBB porque tiene conflictos con ficheros del paquete AAAA. ¿Cómo lo soluciono?

Lo más probable es que el paquete AAAA ya no exista y no haya sido seleccionado para removerlo (hey, ¡que ésto es Sid! :-). Por lo tanto, si estás seguro que el paquete AAAA no es esencial, puedes removerlo con el dpkg:

dpkg -r AAAA

He actualizado la Sid y las fuentes me salen de cualquier manera, a pesar que tengo bien configurado el fichero /etc/X11/XftConfig. ¿Qué pasa?

Que Debian ha pasado a las Xft2 y se configura en otro fichero. Mira éste artículo para más detalles e instrucciones.

¿Cómo arreglo las fuentes del Mozilla que me salen tan grandes y feas cuando lo uso desde el KDE?

Mira éste artículo.

¿Cómo es que hay gente que tiene paquetes instalados que no están en Debian? ¿Cómo los consigo?

Seguramente no son paquetes oficiales, porque están en pruebas todavía o porque violan las políticas de Debian. Mira éste artículo.

¿Cómo hago para borrar los ficheros de configuración (purge) que han quedado de paquetes que ya he removido?

Aquí va la solución en una línea:
dpkg -P `COLUMNS=200 dpkg -l |grep ^rc |awk '{print $2}' `

Por hoy suficiente :-), ya iré actualizando la lista cuando vea preguntas interesantes que sirvan a los novatos.

jueves, 26 de julio de 2007

Como Bajar Videos de youtube muy facil

Casi todos aveces vemos un videoen youtube y lo queremos, y para eso buscamos y buscamos programas para bajar videos de youtbe tardando un monton en buscar en google, mientras hay otros metodos de bajar un video de youtube en 3 segundos o menos , en fin lo que tenemos que hacer es esto:



1. entramos en youtube.com

2. buscamos el video

3. espremos que carge la lenia roja, para que cuando lo bajemos sea rapido

4. ahora añademos (kiss) despues de la www.(kiss aki la escribimos)...la direccion del video

5. nos carga una pagina de youtube que nos permite descargar el video, donde nos sale (download Now) y bajamos el video

6. ahora neceistamos un programa para reproducer el formato (.flv) osea el video. aki os dejo el link para descargar el programa (es freeware)

http://www.programas-gratis.net/php/programa2.php?id_programa=3216

7. y final feliz xd, ahora ya pdemos descargar cuantos videos keramos y sentarnos muy trankilos.

martes, 17 de julio de 2007

Mapa mental usando wikipedia

Muy recomendable pagina, que arma un mapa mental o mapa conceptual utilizando la wikipedia http://www.wikimindmap.org

Ejemplos de uso de lsof

 

lsof

lsof is the Linux/Unix über-tool. I use it most for getting network connection related information from a system, but that's just the beginning for this amazing and little-known application. The tool is aptly called lsof because it "lists open files". And remember, in Unix just about everything (including a network socket) is a file.

** lsof is also the Linux/Unix command with the most switches. It has so many it has to use both pluses and minuses.

usage: [-?abhlnNoOPRstUvV] [+|-c c] [+|-d s] [+D D] [+|-f[cgG]]  [-F [f]] [-g [s]] [-i [i]] [+|-L [l]] [+|-M] [-o [o]]  [-p s] [+|-r [t]] [-S [t]] [-T [t]] [-u s] [+|-w] [-x [fl]] [--] [names] 

As you can see, lsof has a truly staggering number of options. You can use it to get information about devices on your system, what a given user is touching at any given point, or even what files or network connectivity a process is using. lsof replaces my need for both netstat and ps entirely. It has everthing I get from those tools and much, much more.

Show Your Network Connections

Show all connections with -i

lsof -i

COMMAND  PID USER   FD   TYPE DEVICE SIZE NODE NAME dhcpcd 6061 root 4u IPv4 4510 UDP *:bootpc sshd 7703 root 3u IPv6  6499 TCP *:ssh (LISTEN) sshd 7892 root 3u IPv6  6757 TCP 10.10.1.5:ssh->192.168.1.5:49901 (ESTABLISHED) 

Show only TCP (works the same for UDP)

lsof -iTCP

COMMAND  PID USER   FD   TYPE DEVICE SIZE NODE NAME sshd 7703 root 3u IPv6 6499 TCP *:ssh (LISTEN) sshd 7892 root 3u IPv6 6757 TCP 10.10.1.5:ssh->192.168.1.5:49901 (ESTABLISHED) 

-i :port shows all networking related to a given port

lsof -i :22

COMMAND  PID USER   FD   TYPE DEVICE SIZE NODE NAME sshd 7703 root 3u  IPv6 6499 TCP *:ssh (LISTEN) sshd 7892 root 3u  IPv6 6757 TCP 10.10.1.5:ssh->192.168.1.5:49901 (ESTABLISHED) 

To show connections to a specific host, use @host

lsof -i@192.168.1.5

sshd 7892 root 3u IPv6 6757 TCP 10.10.1.5:ssh->192.168.1.5:49901 (ESTABLISHED) 

Show connections based on the host and the port using @host:port

lsof -i@192.168.1.5:22

sshd 7892 root 3u IPv6 6757 TCP 10.10.1.5:ssh->192.168.1.5:49901 (ESTABLISHED) 

Grepping for "LISTEN" shows what ports your system is waiting for connections on

lsof -i| grep LISTEN

iTunes     400 daniel   16u  IPv4 0x4575228  0t0 TCP *:daap (LISTEN) 

Grepping for "ESTABLISHED" shows current active connections

lsof -i| grep ESTABLISHED

firefox-b 169 daniel  49u IPv4 0t0 TCP 1.2.3.3:1863->1.2.3.4:http (ESTABLISHED) 


Working with Users, Processes, and Files

You can also get information on various users, processes, and files on your system using lsof:

Show what a given user has open using -u

lsof -u daniel

-- snipped -- Dock 155 daniel  txt REG   14,2   2798436   823208 /usr/lib/libicucore.A.dylib Dock 155 daniel  txt REG   14,2   1580212   823126 /usr/lib/libobjc.A.dylib Dock 155 daniel  txt REG   14,2   2934184   823498 /usr/lib/libstdc++.6.0.4.dylib Dock 155 daniel  txt REG   14,2    132008   823505 /usr/lib/libgcc_s.1.dylib Dock 155 daniel  txt REG   14,2    212160   823214 /usr/lib/libauto.dylib -- snipped -- 

See what files and network connections a command is using with -c

lsof -c syslog-ng
COMMAND    PID USER   FD   TYPE     DEVICE    SIZE       NODE NAME syslog-ng 7547 root  cwd    DIR    3,3    4096   2 / syslog-ng 7547 root  rtd    DIR    3,3    4096   2 / syslog-ng 7547 root  txt    REG    3,3  113524  1064970 /usr/sbin/syslog-ng syslog-ng 7547 root  mem    REG    0,0   0 [heap]  syslog-ng 7547 root  mem    REG    3,3  105435   850412 /lib/libpthread-2.4.so syslog-ng 7547 root  mem    REG    3,3 1197180   850396 /lib/libc-2.4.so syslog-ng 7547 root  mem    REG    3,3   59868   850413 /lib/libresolv-2.4.so syslog-ng 7547 root  mem    REG    3,3   72784   850404 /lib/libnsl-2.4.so syslog-ng 7547 root  mem    REG    3,3   32040   850414 /lib/librt-2.4.so syslog-ng 7547 root  mem    REG    3,3  126163   850385 /lib/ld-2.4.so -- snipped -- 

Pointing to a file shows what's interacting with that file

lsof /var/log/messages
COMMAND    PID USER   FD   TYPE DEVICE   SIZE   NODE NAME syslog-ng 7547 root    4w   REG    3,3 217309 834024 /var/log/messages 

The -p switch lets you see what a given process ID has open, which is good for learning more about unknown processes

lsof -p 10075
-- snipped -- sshd    10068 root  mem    REG    3,3   34808 850407 /lib/libnss_files-2.4.so sshd    10068 root  mem    REG    3,3   34924 850409 /lib/libnss_nis-2.4.so sshd    10068 root  mem    REG    3,3   26596 850405 /lib/libnss_compat-2.4.so sshd    10068 root  mem    REG    3,3  200152 509940 /usr/lib/libssl.so.0.9.7 sshd    10068 root  mem    REG    3,3   46216 510014 /usr/lib/liblber-2.3 sshd    10068 root  mem    REG    3,3   59868 850413 /lib/libresolv-2.4.so sshd    10068 root  mem    REG    3,3 1197180 850396 /lib/libc-2.4.so sshd    10068 root  mem    REG    3,3   22168 850398 /lib/libcrypt-2.4.so sshd    10068 root  mem    REG    3,3   72784 850404 /lib/libnsl-2.4.so sshd    10068 root  mem    REG    3,3   70632 850417 /lib/libz.so.1.2.3 sshd    10068 root  mem    REG    3,3    9992 850416 /lib/libutil-2.4.so -- snipped -- 

The -t option returns just a PID

lsof -t -c Mail
350 
ps aux | grep Mail
daniel 350 0.0 1.5 405980 31452 ?? S  Mon07PM 2:50.28 /Applications/Mail.app 


Advanced Usage

Using-a allows you to combine search terms, so the query below says, "show me everything running as daniel connected to 1.1.1.1"

lsof -a -u daniel -i @1.1.1.1
bkdr   1893 daniel 3u  IPv6 3456 TCP 10.10.1.10:1234->1.1.1.1:31337 (ESTABLISHED) 

Using the -t and -c options together you can HUP processes

kill -HUP `lsof -t -c sshd`

You can also use the -t with -u to kill everything a user has open

kill -9 `lsof -t -u daniel`

lsof +L1 shows you all open files that have a link count less than 1, often indicative of a cracker trying to hide something

lsof +L1
(hopefully nothing) 


Conclusion

This primer just scratches the surface of lsof's functionality. For a full reference, run man lsof or check out the online version. I hope this has been useful to you, and as always, comments and corrections are welcomed.


sábado, 26 de mayo de 2007

Fw: Cambiar el Tamaño de todas las fotos de una carpeta


Pequeño truco para ImageMagick
 
ir a la carpeta en donde estan las fotos y ejecutar
 
 c:\imagenestmp> for %a in (*.jpg) do convert -geometry 800x800 %a %a
 
y listo!!!!
Ojo, haganlo siempre sobre una carpeta con archivos copiados, sino sobreescribiran los originales
 

lunes, 21 de mayo de 2007

Manejo del arranque de windows vista

Navegando por ahi, encontre este excelente articulo que posteo completamente de este sitio , y cuya autoria firma José Manuel Tella Llop


Manejo del Boot en Windows Vista
-------------------------------------

El sistema de Boot (arranque) de Windows Vista (beta2 y posteriores) tiene ya poco que ver con los sistemas tradicionales y el boot.ini que estábamos acostumbrados a manejar.

Recordemos un poco el sistema de XP (y sistemas basados en núcleo NT):

1) El sector de arranque de la partición (que se establece al formatear) tiene "hardcoded" -es decir, incorporado "a pelo" en su interior y no parametrizable- el primer archivo que se carga: NTLDR

2) En C:\ existen tres ficheros que son necesarios para la carga, esté donde esté situado el sistema operativo: NLTDR, NTDETECT.COM y BOOT.INI

3) El BOOT.INI es un archivo de parámetros. Archivo de texto que podemos tocar y modificar y que contiene los posibles sistemas operativos y sus lo calizaciones.

* La secuencia de arranque: la Bios carga el MBR del disco el cual contiene las particiones del disco y la marca de partición activa. El miniprograma del MBR, decide entonces cargar el primer sector (sector de Boot) de la partición marcada como activa. Esto carga el punto 1) anterior. Ese sector es un miniprograma que carga el archivo que tiene "harcoded" en su interior. En este caso el NTLDR. Es el responsable entre otra cosas de leer el BOOT.INI y si existe más de una entrada (más de un sistema operativo) nos mostrará un menú y nos permitirá seleccionar.

Hasta aquí todo sencillo. Si formateábamos C:\ siempre podíamos luego reconstruir a mano el BOOT.INI sin más que saber su sintaxis (ver un articulo mío titulado"Instalación de un Sistema Operativo.doc" publicado en http://www.multingles.net/jmt.htm para profundizar sobre el tema).


MODIFICACIONES INTRODUCIDAS POR WINDOWS VISTA
---------------------------------------------

Windows Vista cambia drásticamente la filosofía de arranque.

1) Se modifica el sector de boot de la partición el cual contendrá ahora "harcoded" el nombre del primer fichero a cargar y ejecutar. En este caso BOOTMGR

2) En C:\ se graba oculto el archivo BOOTMGR

3) En C: se crea una carpeta llamada Boot cuyo contenido es:

Directory of C:\Boot

20/10/2005 19:29 .
20/10/2005 19:29 ..
22/10/2005 23:06 262.144 BCD
22/10/2005 23:06 29.696 BCD.LOG <----- está oculto. 20/10/2005 19:29 EFI
13/09/2005 21:29 1.024 bootfix.bin
05/10/2005 12:44 248.320 fixfat.exe
05/10/2005 12:44 260.096 fixntfs.exe
05/10/2005 09:16 370.176 hibrsm32.efi
05/10/2005 09:16 371.712 hibrsm32.exe
05/10/2005 09:23 534.016 hibrsm64.exe
05/10/2005 09:16 359.936 memtest.exe
05/10/2005 15:44 1.556 windowscodeintegrity.luacdf

He marcado el archivo oculto BCD.LOG porque realmente es el que va a hacer con Windows Vista y los posibles sistemas operativos que tengamos, la función que hacia el BOOT.INI en sistemas anteriores (XP y previos).


¿QUE SUCEDE SI TENEMOS XP E INSTALAMOS VISTA?
--------------------------------------------

Imaginemos que tenemos XP y otros sistemas operativos de núcleo NT instalados en nuestra máquina, y por tanto ya poseemos un BOOT.INI. Para nuestro ejemplo, pongamos que tenemos esto:

[boot loader]
timeout=10
default=multi(0)disk(0)rdisk(5)partition(1)\WINDOWS

[operating systems]
multi(0)disk(0)rdisk(5)partition(2)\WINDOWS="Windows XP Professional x64 Edition [E]" /NOEXECUTE=OPTIN /FASTDETECT
multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="Windows XP Professional x64 Edition" /NOEXECUTE=OPTIN /FASTDETECT
multi(0)disk(0)rdisk(4)partition(2)\WINDOWS="Windows Server 2003, Standard [R]"/NOEXECUTE=OPTOUT /FASTDETECT
multi(0)disk(0)rdisk(4)partition(1)\WINDOWS="Windows Server 2003, Enterprise" /FASTDETECT /PAE /NOEXECUTE=OPTOUT
multi(0)disk(0)rdisk(3)partition(1)\WINDOWS="Microsoft Windows XP Professional [K]" /FASTDETECT /NOEXECUTE=OPTIN
multi(0)disk(0)rdisk(5)partition(1)\WINDOWS="Microsoft Windows XP Professional [I]" /FASTDETECT /NOEXECUTE=OPTOUT
multi(0)disk(0)rdisk(6)partition(3)\WINDOWS="Microsoft Windows XP Professional [Q]" /FASTDETECT
C:\BOOTSECT.DOS="Previous Operating System"

Al instalar Windows Vista, nos machará el sector de Boot de la partición, nos grabará en C:\ el archivo BOOTMGR (ejecutable) y nos creará la carpeta Boot rellenándola con los archivos citados anteriormente.

El proceso de arranque, en este caso, nos mostrará un menú con 3 líneas:

Legacy (pre-Longhorn) Microsoft Windows Operating System
Microsoft Windows
Legacy (pre-Longhorn) Microsoft Windows Operating System

La primera línea, si la pulsamos, iniciará el proceso de carga de los antiguos sistemas operativos: es decir no sacará el menú clásico que está embebido en el BOOT.INI y podremos arrancar cualquiera de nuestros anteriores sistemas.

La segunda línea (existirá una de este estilo por cada Windows Vista instalado en nuestra máquina) nos permitirá arrancar directamente Windows Vista.

La última línea (si existiese), nos permitirá arrancar un viejo MSDOS en el sistema. Es decir, lo que realmente permite es arrancar el viejo BOOTSECT.DOS si existiese en nuestra máquina, correspondiente en el ejemplo que estoy poniendo, justo a la ultima línea del BOOT.INI.


¿DÓNDE ESTÁN LAS LINEAS DE ESTE MENU Y COMO PODEMOS MODIFICAR SU CONTENIDO?
---------------------------------------------------------------------------

Aquí empieza el primer problema. No existe un fichero de texto equivalente al BOOT.INI. Modificar el orden de carga (es decir, qué línea estará preseleccionada), puede hacerse de una manera similar a Windows XP: botón derecho en mi PC, propiedades, pestaña de avanzado, botón de inicio y recuperación. Allí podremos establecer qué sistema operativo será seleccionado por defecto y el tiempo en segundos que esperará el menú. Pero no existe ya el botón de "editar" porque no se puede editar nada: no hay archivo de texto como antes era el BOOT.INI.

Dónde conserva Windows Vista estos datos es en el fichero oculto BCD.LOG que está en la carpeta Boot. Pero este archivo es un archivo binario, que no sólo contiene eso, sino también código ejecutable. No podemos editarlo ya que lo destruiremos.

Existe una utilidad de comando de línea que veremos a continuación: BCDEDIT.EXE la cual nos permite la modificación. Pero no es sencilla ni tan siquiera intuitiva.

Imaginemos que instalamos en nuestra máquina dos Windows Vista: un vista de 32 y uno de 64. El menú nos quedará:

Legacy (pre-Longhorn) Microsoft Windows Operating System
Microsoft Windows
Microsoft Windows
Legacy (pre-Longhorn) Microsoft Windows Operating System

El cual contiene dos líneas"Microsoft Windows". La primera corresponde al 64 bits y la segunda al 32. Lo lógico es que queramos que cada línea muestre el texto correspondiente para no inducirnos a error. Es decir, que contenga, por ejemplo:

Legacy Microsoft Windows Operating System
Microsoft Windows Vista 64
Microsoft Windows Vista 32
Legacy Microsoft Windows Operating System

La manera de hacerlo es mediante el comando de línea BCDEDIT.EXE el cual modificará el archivo BCD.LOG (oculto) que he citado anteriormente.

Al ejecutar BCDECIT.EXE en una consola de comandos, nos mostrará (en nuestro ejemplo anterior):

Windows Boot Manager
--------------------
Identifier: {bootmgr}
Type: 10100002
Device: partition=C:
Description: Windows Boot Manager
Locale: ENG-US
Inherit options: {emssettings}
{dbgsettings}
Default: {legacy}
Display order: {legacy}
{5a45d108-42ed-11da-ab93-b0ac505a9c5d}
{c59756d6-419f-11da-bb58-e429938b8537}
Timeout: 10

Windows Legacy OS Loader
------------------------
Identifier: {legacy}
Type: 10300006
Device: partition=C:
Path: \ntldr
Description: Legacy (pre-Longhorn) Microsoft Windows Operating System

Windows Boot Loader
-------------------
Identifier: {5a45d108-42ed-11da-ab93-b0ac505a9c5d}
Type: 10200003
Device: partition=D:
Path: \Windows\system32\winload.exe
Description: Microsoft Windows
Locale: ENG-US
Inherit options: {emssettings}
{dbgsettings}
Windows device: partition=D:
Windows root: \Windows
No Execute policy: OptIn

Windows Boot Loader
-------------------
Identifier: {c59756d6-419f-11da-bb58-e429938b8537}
Type: 10200003
Device: partition=L:
Path: \Windows\system32\winload.exe
Description: Microsoft Windows
Locale: ENG-US
Inherit options: {emssettings}
{dbgsettings}
Windows device: partition=L:
Windows root: \Windows
No Execute policy: OptIn

Se pueden modificar los parámetros, textos, etc con el mismo comando. Incluso añadir entradas. Si se ejecuta con /? nos dará la sintaxis. En nuestro caso, para modificar únicamente los literales a mostrar en el menú de arranque debemos hacer:

BCDEDIT -set {5a45d108-42ed-11da-ab93-b0ac505a9c5d} Description "Microsoft Windows Vista 64"

Es decir {ID a modificar}y a continuación lo que queremos modificar. Puede ser la Descripcion, el Path, las políticas de No Execute, etc.....


POSIBLES PROBLEMAS SI INSTALAMOS XP/W2003 CON POSTERIORIDAD
-----------------------------------------------------------

El problema surge porque la instalación de XP / W2003 o cualquier sistema operativo anterior nos machacará el sector de Boot y por tanto ya no apuntará a los cargadores de Windows Vista.

Para recuperarlo, dentro de la carpeta Boot tenemos dos programas:

FIXFAT
FIXNTFS

Deberemos ejecutar el correspondiente a nuestro sistema de archivos (FAT O NTFS) que exista en C:\ (independientemente de cómo sea el sistema de archivos de las instalaciones de Windows). Ejecutándolo con /? os dará la sintaxis de cómo lanzarlo para recuperar el sector de Boot de Windows Vista.