Esta sección explica cómo instalar Debian GNU/Linux desde un sistema Unix o Linux existente, sin usar el instalador basado en menús, como se explica en el resto de este manual. Los usuarios que se cambian a Debian GNU/Linux desde Red Hat, Mandriva y SuSE han solicitado este CÓMO de “instalación cruzada”. En esta sección se asume alguna familiaridad con la introducción de órdenes en *nix y navegación en el sistema de ficheros. En esta sección $
simboliza una orden a introducirse en el sistema actual del usuario, mientras que #
se refiere a una orden introducida en la jaula (“chroot”, N. del t.) de Debian.
Una vez que tenga el nuevo sistema Debian configurado a su preferencia, puede migrar los datos existentes de sus usuarios (si fuese el caso) a éste y continuar funcionando. Esto es por tanto una instalación “sin parada” de Debian GNU/Linux. Es también una forma inteligente de tratar con hardware que no puede utilizarse de forma sencilla con los distintos mecanismos de instalación o arranque disponibles.
![]() |
Nota |
---|---|
Dado que este proceso es, en gran parte, manual ha de tener en cuenta que tendrá que hacer gran parte de la configuración básica del sistema por su cuenta. Para poder hacer esto necesitará más conocimientos de Debian y en general de Linux que si fuera a hacer una instalación normal. No espere que el resultado de este procedimiento sea un sistema idéntico al que uno obtendría si realizara la instalación normalmente. También debería tener en cuenta que este procedimiento solamente describe los pasos básicos para configurar un sistema. Es posible que puedan tener que realizarse pasos adicionales en la instalación y/o configuración. |
Reparticione el disco duro como desee con las herramientas de particionado de *nix que disponga, debe crear por lo menos un sistema de ficheros más una partición de intercambio. Necesita por lo menos 506 MB de espacio disponible para una instalación de consola o por lo menos 1536 MB si va a instalar el entorno X (más si quiere instalar entornos de escritorio como GNOME o KDE).
A continuación, deberá crear sistemas de ficheros en sus particiones. Por ejemplo, para crear un sistema de ficheros ext3 en la partición /dev/sda6
(es nuestra partición raíz de ejemplo):
# mke2fs -j /dev/sda6
En cambio para crear un sistema de ficheros ext2, omita -j
.
Inicialice y active la partición de intercambio (sustituya el número de partición por la partición de intercambio de Debian que vaya a utilizar):
# mkswap /dev/sda5
# sync # swapon /dev/sda5
Monte una partición como /mnt/debinst
(el punto de instalación, que será el sistema de ficheros raíz (/
) en su nuevo sistema). El nombre del punto de montaje es estrictamente arbitrario, pero se utilizará este mismo nombre más adelante.
# mkdir /mnt/debinst
# mount /dev/sda6
/mnt/debinst
![]() |
Nota |
---|---|
Deberá crear y montar manualmente los directorios que sean necesarios antes de continuar con la siguiente parte del proceso si desea montar partes del sistema de ficheros (como por ejemplo “/usr”) en particiones distintas. |
debootstrap es la herramienta que usa el instalador de Debian, es también la forma oficial de instalar un sistema base Debian. Usa wget y ar, pero, salvo esto, sólo depende de /bin/sh
y algunas herramientas básicas de Unix/Linux[26]. Si aún no lo ha hecho, instale wget y ar en su sistema actual, y luego descargue e instale debootstrap.
Por otra parte, puede usar el siguiente procedimiento para instalarlo manualmente. Cree un directorio temporal “trabajo” para extraer el fichero «.deb» en él:
# mkdir trabajo # cd trabajo
El binario de debootstrap se encuentra en el archivo de Debian (asegúrese de elegir el fichero adecuado para su arquitectura). Descargue el paquete de debootstrap desde el almacén de paquetes en http://ftp.debian.org/debian/pool/main/d/debootstrap/, copie el paquete al directorio “trabajo” y extraiga los ficheros de éste. Necesitará privilegios de superusuario para instalar los ficheros.
# ar -x debootstrap_0.X.X_all.deb # cd / # zcat /ruta-completa-hasta-trabajo/trabajo/data.tar.gz | tar xv
debootstrap descargará los ficheros necesarios directamente desde el archivo cuando lo ejecute. Puede sustituir ftp.es.debian.org/debian
por cualquier servidor de réplica del archivo Debian, en la orden de ejemplo que se muestra a continuación. Es mejor que utilice un servidor de réplica cercano (es decir, en una red próxima). Puede encontrar una lista completa de los servidores de réplica en: http://www.debian.org/mirror/list.
Puede utilizar una dirección de fichero si tiene un CD de la versión jessie de Debian GNU/Linux montado en /cdrom
. Para ello utilice, en lugar de la dirección http, file:/cdrom/debian/
.
Sustituya ARQ
por alguno de los valores mostrados a continuación para la orden debootstrap: amd64
, arm64
, armel
, armhf
, i386
, mips
, mipsel
, powerpc
, ppc64el
, o s390x
.
# /usr/sbin/debootstrap --arch ARQ jessie \ /mnt/debinst http://ftp.us.debian.org/debian
Ahora tiene instalado un sistema Debian, aunque algo limitado, en su disco. Ejecute la orden chroot en él:
# LANG=C.UTF-8 chroot /mnt/debinst /bin/bash
Después de haber hecho esto puede que necesite establecer una definición de terminal compatible con el sistema base de Debian. Por ejemplo:
Llegados a este punto el directorio /dev/
contiene solamente ficheros de dispositivo muy básicos. Es posible que necesite ficheros de dispositivo adicionales para llevar a cabo los pasos siguientes de la instalación. Hay varias formas de hacerlo y el método que vaya a usar dependerá del sistema inicial que esté usando para la instalación; si desea usar un núcleo modular o no, si pretende usar ficheros de dispositivo dinámicos (p.ej. con udev
) o estáticos en el sistema nuevo.
Algunas de las opciones disponibles son las siguientes:
instale el paquete makedev, y cree un conjunto predeterminado de ficheros de dispositivo estáticos (después de acceder a la jaula chroot) con
# apt-get install makedev # mount none /proc -t proc # cd /dev # MAKEDEV generic
cree manualmente sólo ficheros de dispositivos específicos con MAKEDEV
Monte /dev
del sistema original encima del directorio /dev
del sistema objetivo utilizando un enlace de montaje («bind mount», N. del T.) Ha de tener en cuenta que los programas de postinstalación de algunos paquetes pueden tratar de crear ficheros de dispositivo. Utilice esta opción con precaución.
Necesita crear /etc/fstab
.
# editor /etc/fstab
Este es un ejemplo que puede modificar según sus necesidades:
# /etc/fstab: información estática del sistema de ficheros. # # file system mount point type options dump pass /dev/XXX / ext3 defaults 0 1 /dev/XXX /boot ext3 ro,nosuid,nodev 0 2 /dev/XXX none swap sw 0 0 proc /proc proc defaults 0 0 /dev/fd0 /media/floppy auto noauto,rw,sync,user,exec 0 0 /dev/cdrom /media/cdrom iso9660 noauto,ro,user,exec 0 0 /dev/XXX /tmp ext3 rw,nosuid,nodev 0 2 /dev/XXX /var ext3 rw,nosuid,nodev 0 2 /dev/XXX /usr ext3 rw,nodev 0 2 /dev/XXX /home ext3 rw,nosuid,nodev 0 2
Utilice mount -a
para montar todos los sistemas de ficheros que ha especificado en /etc/fstab
o móntelos individualmente usando:
# mount /ruta # por ej.: mount /usr
Los sistemas Debian actuales tienen puntos de montaje para medios extraíbles bajo /media
, pero mantienen enlaces simbólicos por compatibilidad en /
. Cree esto si los necesita, como por ejemplo:
# cd /media # mkdir cdrom0 # ln -s cdrom0 cdrom # cd / # ln -s media/cdrom
Puede montar el sistema de ficheros “proc” tantas veces como quiera y en cualquier ubicación, aunque la ubicación habitual es /proc
. Asegúrese de montar proc antes de continuar si no usa mount -a
:
# mount -t proc proc /proc
Si ejecuta la orden ls /proc
debería ver que el directorio no está vacío. Si esto falla, puede intentar montar “proc” fuera del entorno chroot:
# mount -t proc proc /mnt/debinst/proc
Si se define la tercera línea del fichero /etc/adjtime
como “UTC” o “LOCAL”, se determina si el sistema interpreta el reloj de hardware como UTC o como hora local. Las siguientes órdenes le permiten configurar ésto.
# editor /etc/adjtime
Here is a sample:
0.0 0 0.0 0 UTC
La siguiente orden le permite elegir su zona horaria.
# dpkg-reconfigure tzdata
Para configurar la red, edite /etc/network/interfaces
, /etc/resolv.conf
, /etc/hostname
y /etc/hosts
.
# editor /etc/network/interfaces
Aquí hay algunos ejemplos sencillos que podrá encontrar en /usr/share/doc/ifupdown/examples
:
###################################################################### # /etc/network/interfaces -- fichero de configuración para ifup(8), ifdown(8) # Lea la página de manual de interfaces(5) para información sobre las # opciones disponibles. ###################################################################### # Siempre necesitamos la interfaz loopback. # auto lo iface lo inet loopback # Para usar dhcp: # # auto eth0 # iface eth0 inet dhcp # Un ejemplo de configuración de IP estática: (el broadcast y pasarela son # opcionales) # # auto eth0 # iface eth0 inet static # address 192.168.0.42 # network 192.168.0.0 # netmask 255.255.255.0 # broadcast 192.168.0.255 # gateway 192.168.0.1
Introduzca su servidor o servidores de nombres así como las directivas de búsqueda en /etc/resolv.conf
:
# editor /etc/resolv.conf
Un /etc/resolv.conf
sencillo de ejemplo sería:
search hqdom.local nameserver 10.1.1.36 nameserver 192.168.9.100
Escriba el nombre de máquina de su sistema (de 2 a 63 caracteres):
# echo MaquinaDebian > /etc/hostname
Y una /etc/hosts
básico que permita IPv6 sería:
127.0.0.1 localhost 127.0.0.1 MaquinaDebian # Las siguientes líneas son recomendables en equipos que pueden # utilizar IPv6 ::1 ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters ff02::3 ip6-allhosts
Si tiene múltiples tarjetas de red, debe añadir los nombres de los módulos de controlador en el fichero /etc/modules
en el orden que desee. Luego durante el arranque, cada tarjeta será asociada con el nombre de la interfaz (eth0, eth1, etc.) que haya indicado.
Debootstrap habrá creado un /etc/apt/sources.list
muy básico que le permite instalar paquetes adicionales. Seguramente querrá, sin embargo, tener algunas fuentes adicionales para poder acceder a paquetes fuente y a actualizaciones de seguridad:
deb-src http://ftp.us.debian.org/debian jessie main deb http://security.debian.org/ jessie/updates main deb-src http://security.debian.org/ jessie/updates main
Asegúrese de ejecutar aptitude update
después de hacer cambios a la lista de fuentes.
Instale el paquete de funcionalidad de localización locales
y configúrelo para poder definir los valores de localización para usar un idioma diferente al inglés. Actualmente se recomienda utilizar locales codificados en UTF-8.
# aptitude install locales # dpkg-reconfigure locales
Para configurar su teclado (si lo necesita):
# aptitude install console-setup # dpkg-reconfigure keyboard-configuration
Tenga en cuenta que no puede configurar el teclado mientras esté dentro del chroot, pero se configurará en el siguiente reinicio.
Si intenta arrancar este sistema, probablemente querrá un núcleo Linux y un gestor de arranque. Identifique los núcleos previamente empaquetados disponibles con:
# apt-cache search linux-image
A continuación, instale el paquete del núcleo deseado usando el nombre del paquete.
# aptitude install linux-image-arch-etc
Para poder arrancar su sistema Debian GNU/Linux deberá configurar su gestor de arranque para cargar el núcleo instalado en su nueva partición raíz. Tenga en cuenta que debootstrap no instala un gestor de arranque, pero puede usar aptitude dentro de su jaula («chroot») Debian para hacer esto.
Consulte info grub
o man lilo.conf
para las instrucciones sobre cómo configurar el gestor de arranque. Si desea mantener el sistema que utilizó para instalar Debian, simplemente añada una entrada para la instalación de Debian para su grub2 existente editando el fichero grub.cfg
o lilo.conf
actual. También podría copiar lilo.conf
al nuevo sistema y editarlo allí. Ejecute lilo una vez termine de editar el fichero (recuerde que éste usará el lilo.conf
relativo al sistema desde el cual lo ejecute).
La instalación y configuración de grub2
es tan sencilla como hacer:
# aptitude install grub-pc
# grub-install /dev/sda
# update-grub
La segunda orden instalará grub2 (en este caso en el sector de arranque de sda
). La última orden creará un /boot/grub/grub.cfg
funcional.
Estos ejemplos asumen que se ha creado el fichero de dispositivo /dev/sda
. Existen métodos alternativos para instalar grub2, pero están fuera del alcance de este apéndice.
Aquí tiene un ejemplo básico de /etc/lilo.conf:
boot=/dev/sda6
root=/dev/sda6
install=menu delay=20 lba32 image=/vmlinuz initrd=/initrd.img label=Debian
In case you can login to the system via console, you can skip this section. If the system should be accessible via the network later on, you need to install SSH and set up access.
# aptitude install ssh
Root login with password is disabled by default, so setting up access can be done by setting a password and re-enable root login with password:
# passwd # editor /etc/ssh/sshd_config
This is the option to be enabled:
PermitRootLogin yes
Access can also be set up by adding an ssh key to the root account:
# mkdir /root/.ssh # cat << EOF > /root/.ssh/authorized_keys ssh-rsa .... EOF
Lastly, access can be set up by adding a non-root user and setting a password:
# adduser joe # passwd joe
El sistema instalado, como se ha mencionado previamente, será muy básico. Si quiere que su sistema sea un poco más maduro puede hacerlo fácilmente instalando todos los paquetes de prioridad “standard”:
# tasksel install standard
Por supuesto, también puede utilizar aptitude para instalar individualmente todos los paquetes.
Después de la instalación habrá muchos paquetes descargados en /var/cache/apt/archives/
. Puede liberar algo de espacio de disco ejecutando:
# aptitude clean