<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="gl">
	<id>http://web.iesrodeira.com/mediawiki/index.php?action=history&amp;feed=atom&amp;title=Transplantando_Debian_Sarge</id>
	<title>Transplantando Debian Sarge - Historial de revisións</title>
	<link rel="self" type="application/atom+xml" href="http://web.iesrodeira.com/mediawiki/index.php?action=history&amp;feed=atom&amp;title=Transplantando_Debian_Sarge"/>
	<link rel="alternate" type="text/html" href="http://web.iesrodeira.com/mediawiki/index.php?title=Transplantando_Debian_Sarge&amp;action=history"/>
	<updated>2026-09-13T13:07:36Z</updated>
	<subtitle>Historial de revisións desta páxina no wiki</subtitle>
	<generator>MediaWiki 1.43.9</generator>
	<entry>
		<id>http://web.iesrodeira.com/mediawiki/index.php?title=Transplantando_Debian_Sarge&amp;diff=1842&amp;oldid=prev</id>
		<title>Xavi: Nova páxina: &quot;== Introducción == A causa dun fallo dunha placa base, xurde a necesidade de restablecer as funcións realizadas polo equipo que ten funcionando unha Debian Sarge, con kernel 2.6...&quot;</title>
		<link rel="alternate" type="text/html" href="http://web.iesrodeira.com/mediawiki/index.php?title=Transplantando_Debian_Sarge&amp;diff=1842&amp;oldid=prev"/>
		<updated>2014-06-26T09:38:14Z</updated>

		<summary type="html">&lt;p&gt;Nova páxina: &amp;quot;== Introducción == A causa dun fallo dunha placa base, xurde a necesidade de restablecer as funcións realizadas polo equipo que ten funcionando unha Debian Sarge, con kernel 2.6...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Páxina nova&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Introducción ==&lt;br /&gt;
A causa dun fallo dunha placa base, xurde a necesidade de restablecer as funcións realizadas polo equipo que ten funcionando unha Debian Sarge, con kernel 2.6.8 compilado (non o estandar) e con moitos servizos e usuarios en funcionamento. A idea é simplemente coller os discos fixos e transplantalos a outro equipo calquera que se atope funcional.&lt;br /&gt;
&lt;br /&gt;
O principal problema é a diferencia entre o hardware de unha e outra máquina. Como o linux ten unha estructura modular na que se cargan dinámicamente os módulos necesarios para xestionar o hardware, en principio parece unha cuestión trivial.&lt;br /&gt;
&lt;br /&gt;
== O Proceso de Arranque ==&lt;br /&gt;
Para arrancar a máquina utilizamos o [[gal:Grub|Grub]] coma xestor de arranque. Este xestor carga do disco fixo un menú de arranque que nos permitirá iniciar a máquina, o lugar do disco fixo e a situación deste menú (e de todo o necesario para o funcionamento do xestor de arranque) configúrase no momento de instalalo no disco.&lt;br /&gt;
&lt;br /&gt;
Unha vez que o grub carga o menú, o usuario pode seleccionar a entrada correspondente o sistema que quere arrancar. Cada entrada no menú de configuración (situado normalmente en /boot/grub/menu.lst) contén:&lt;br /&gt;
&lt;br /&gt;
* O título da entrada&lt;br /&gt;
* O disco de donde se cargará o kernel. Esta entrada se especifica mediante o comando &amp;#039;&amp;#039;&amp;#039;root (hdX,Y)&amp;#039;&amp;#039;&amp;#039;, donde X é 0 para o primeiro disco, 1 para o segundo... etc. E Y é 0 para a primeira partición, 1 para a segunda ... etc.&lt;br /&gt;
* O kernel que queremos cargar con todas as opcions de arranque necesarias&lt;br /&gt;
* Si o kernel utiliza initrd (como é o noso caso) o initrd que é necesario cargar&lt;br /&gt;
* O comando de arranque: &amp;#039;&amp;#039;&amp;#039;boot&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
O Grub dispón tamén da posibilidades de modificar as entradas do menú coa tecla &amp;#039;&amp;#039;&amp;#039;e&amp;#039;&amp;#039;&amp;#039;, ou de entrar nun modo de comandos coa tecla &amp;#039;&amp;#039;&amp;#039;c&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
=== Comenza o Arranque ===&lt;br /&gt;
Unha vez que o usuario selecciona unha entrada e pulsa Enter (ou pulsa b, ou escribe boot na consola de Grub) comenza o proceso de arranque. O kernel se carga en RAM e se descomprime iniciando así a máquina. Para cargar os módulos indispensabeis para facer o arranque e a configuración inicial, se carga o ficheiro initrd e se descomprime.&lt;br /&gt;
&lt;br /&gt;
=== initrd ===&lt;br /&gt;
O ficheiro initrd está comprimido e contén entre outras cousas a lista dos módulos necesarios para realizar o arranque nun ficheiro chamado &amp;#039;&amp;#039;&amp;#039;loadmodules&amp;#039;&amp;#039;&amp;#039;. O ficheiro initrd se xera automáticamente no momento de instalar o kernel tendo en conta o contido de &amp;#039;&amp;#039;/etc/mkinitrd/mkinitrd.conf&amp;#039;&amp;#039; e de &amp;#039;&amp;#039;/etc/mkinitrd/modules&amp;#039;&amp;#039;.&lt;br /&gt;
Se nos interesa podemos examina-lo contido do initrd mediante: &amp;#039;&amp;#039;mount -o loop ficheiroinitrd /puntodemontaxe&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
=== Finaliza o Arranque ===&lt;br /&gt;
O sistema descomprime initrd, carga os módulos e monta a partición root definitiva (/) a partir da información suministrada no &amp;#039;&amp;#039;menu.lst&amp;#039;&amp;#039;, continuando xa o arranque tal e como o ten configurado o sistema vía o proceso &amp;#039;&amp;#039;&amp;#039;init&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
== Os Problemas ==&lt;br /&gt;
Os posibles problemas cando se transplantan discos fixos cunha instalación funcional a unha máquina distinta poden ser varios, particularmente que non carge o grub.&lt;br /&gt;
 &lt;br /&gt;
Si conseguimos iniciar o sistema, é moi probable que ocurra o seguinte:&lt;br /&gt;
&lt;br /&gt;
  pivot_root : no such file or directory &lt;br /&gt;
  /sbin/init : 431 : cannot open dev/console :No such file&lt;br /&gt;
  Kernel panic - not syncing : Attempted to kill init!&lt;br /&gt;
&lt;br /&gt;
As razóns poden ser varias. Tamén temos que ter en conta que os discos poden ter cambiado de nome (de hda a hdb, por exemplo) e as tarxetas de rede tamén, polo tanto teremos que revisar &amp;#039;&amp;#039;/etc/fstab&amp;#039;&amp;#039; e &amp;#039;&amp;#039;/etc/network/interfaces&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
== As Solucións ==&lt;br /&gt;
É necesario comprobar os seguintes puntos:&lt;br /&gt;
&lt;br /&gt;
*Si o Grub non arranca, probablemente sexa porque a BIOS está intentando cargala do disco incorrecto. Nese caso basta indicalo na BIOS ou instalar o grub no disco de arranque.&lt;br /&gt;
*E necesario comprobar que os discos esten ben nomeados: O grub ten o parámetro &amp;#039;&amp;#039;root (hdX,Y)&amp;#039;&amp;#039; correcto e a partición root (&amp;#039;&amp;#039;root=&amp;#039;&amp;#039;) se monta tamén a partir do disco e partición correctas. Particularmente recordar que os discos SATA se recoñecen como scsi, polo que se nomean sda, sdb ... etc.&lt;br /&gt;
*Comprobar tamén que &amp;#039;&amp;#039;/etc/fstab&amp;#039;&amp;#039; ten ben nomeadas as particións e puntos de montaxe.&lt;br /&gt;
&lt;br /&gt;
Si aínda así non arranca, é moi posible que os módulos cargados no &amp;#039;&amp;#039;&amp;#039;initrd&amp;#039;&amp;#039;&amp;#039; non sexan compatibles coa nova placa. Particularmente importante é o módulo para manexar os disco SATA, xa que cada chipset ten que utilizar un módulo específico. Nese caso teríamos que modificar &amp;#039;&amp;#039;initrd&amp;#039;&amp;#039; para incluir o módulo que precisamos mediante a utilidade &amp;#039;&amp;#039;mkinitrd&amp;#039;&amp;#039;, ou reinstalar un novo kernel.&lt;br /&gt;
&lt;br /&gt;
== O procedemento do transplante ==&lt;br /&gt;
O proceso seguido no meu caso e os problemas atopados e solucionados se describen a continuación:&lt;br /&gt;
&lt;br /&gt;
=== Datos Previos ===&lt;br /&gt;
* Placa queimada: baseada nun chipset Intel. Placa nova: baseada nun chipset Via&lt;br /&gt;
* 2 Discos Fixos SATA. En sda copias de seguridade, backups e a cache do squid. En sdb todo o sistema organizado en distintas particions.&lt;br /&gt;
&lt;br /&gt;
=== Proceso Seguido ===&lt;br /&gt;
# Instalación dos discos fixos na nova placa. O iniciar nin siquera carga o menu do grub&lt;br /&gt;
# Inicio do sistema a partir dun Live CD con Knoppix 5.5 en modo consola (para aforrar tempo)&lt;br /&gt;
# con &amp;#039;&amp;#039;dmsg|grep&amp;#039;&amp;#039; sd miro os discos detectados e comprobo que disco é sda e cal sdb, e que controladora de disco usan. sdb6 ten o meu &amp;#039;root filesystem&amp;#039; e a controladora é &amp;#039;&amp;#039;sata_via&amp;#039;&amp;#039;&lt;br /&gt;
# monto a partición co sistema / (sdb6): &amp;#039;&amp;#039;mount /dev/sda6&amp;#039;&amp;#039;&lt;br /&gt;
# &amp;#039;&amp;#039;mount -t proc -o bind proc /media/sda6&amp;#039;&amp;#039;&lt;br /&gt;
# &amp;#039;&amp;#039;mount -o bind /dev /media/sda6/dev&amp;#039;&amp;#039;&lt;br /&gt;
# &amp;#039;&amp;#039;chroot /media/sda6&amp;#039;&amp;#039;&lt;br /&gt;
# edito &amp;#039;&amp;#039;/boot/grub/menu.lst&amp;#039;&amp;#039; e o comprobo/modifico do modo axeitado, &amp;#039;&amp;#039;&amp;#039;root (hd0,5)&amp;#039;&amp;#039;&amp;#039; e collendo &amp;#039;&amp;#039;&amp;#039;root=/dev/sda6&amp;#039;&amp;#039;&amp;#039;: &amp;#039;&amp;#039;vim /boot/grub/menu.lst&amp;#039;&amp;#039;&lt;br /&gt;
# reinstalo o grub: &amp;#039;&amp;#039;grub-install --recheck /dev/sda&amp;#039;&amp;#039;&lt;br /&gt;
# agora teño que facer que initrd cargue o módulo &amp;#039;&amp;#039;&amp;#039;sata_via&amp;#039;&amp;#039;&amp;#039; en lugar de cargar &amp;#039;&amp;#039;&amp;#039;sata_piix&amp;#039;&amp;#039;&amp;#039;. Teño dúas maneiras, descomprimindo o initrd, modificando logo o seu ficheiro &amp;#039;&amp;#039;&amp;#039;loadmodules&amp;#039;&amp;#039;&amp;#039;, ou dun xeito máis simple, instalo un novo kernel logo de poñer o módulo en &amp;#039;&amp;#039;&amp;#039;/etc/mkinitrd/modules&amp;#039;&amp;#039;&amp;#039;: &amp;#039;&amp;#039;apt-get install kernel-linux-2.6-686-smp&amp;#039;&amp;#039;&lt;br /&gt;
#:Si este kernel xa estaba instalado podemos instalar outro ou desinstalalo e volvelo a instalar para rexenerar o &amp;#039;initrd: &amp;#039;&amp;#039;apt-get remove --purge kernel-image-2.6.8-3-686-smp&amp;#039;&amp;#039;.&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;OLLO: Desinstalar o kernel, non o paquete xenérico kernel-linux-2.6-686-smp&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
#:A maneira máis simple, probablemente sexa poñer o módulo en &amp;#039;&amp;#039;&amp;#039;/etc/mkinitrd/modules&amp;#039;&amp;#039;&amp;#039; e escribir &amp;#039;&amp;#039;&amp;#039;mkinitrd nome-do-novo-initrd  kernel-onde-colle-os-módulos&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
*Verificamos de novo que /boot/grub/menu.lst é correcto, e si é necesario o modificamos para arrancar o novo kernel.&lt;br /&gt;
*Cruzamos os dedos, escribimos &amp;#039;&amp;#039;reboot&amp;#039;&amp;#039;, pechamos os ollos e contemos a respiración.....&lt;/div&gt;</summary>
		<author><name>Xavi</name></author>
	</entry>
</feed>