HowTo:gentoo:MacMini:InstalarGentoo
De Luispa
Instalación de Gentoo
- Si no lo has hecho ya, acuerdate de tener apuntado todo tu HW. Recomendé aquí apuntarse qué hardware viene con tu Mac Mini, lo vamos a necesitar.
Boot con System Rescue LiveCD
- Para instalar un servidor desde cero en modo 64 bits, hay que hacer boot con un DVD de 64 bits y realizar todos los pasos desde el principio en modo 64bits. Recomiendo usar el DVD de arranque de System Rescue que puedes descargar desde aquí. Se trata de un DVD (por cierto, basado en Gentoo) mucho más potente que el que ofrecen en los mirros de gentoo para hacer instalaciones, y además está probado que funciona en 64bits tanto para AMD como para Intel sin problemas.
- Si prefieres seguir los manuales (handbook) de Gentoo que menciono antes, recuerda que el "System rescue CD" que yo uso lo has de considerar como si fuese el que llaman "CD de Instalación Mínima" en dichos manuales.
- Bajar el Sys Rescue (use el 2.2) desde la página oficial de System Rescue CD
- Nota: Sigo el proceso de forma similar a como si se tratase del "CD de Instalación Mínima" que viene documentado en el gentoo handbook antes referenciado
- Una vez tengas el ISO, quémalo en un CD/DVD.
- Con el Mac apagado, pulsa ALT y arranca el mac (botón trasero). Si no está ya, introduce el DVD.
- Espera hasta que veas la pantalla gris mostrándote la opción de hacer boot desde Disco y un poco más tarde desde DVD.
- El teclado inalámbrico funciona perfectamente, así que uso las flechas del teclado, selecciono el DVD (Windows, sí pone Windows) y hago boot pulsando intro.
Instalación
- Arrancamos en modo 64 bits
Selecciono la opción 64bit kernel with default options
- Selecciono el lenguaje del teclado para la instalación.
Load keymap: 13
- Configuro la tarjeta de Red. Sigo las instrucciones para configurar vía DHCP y cable.
# net-setup eth0
- Cambio la contraseña de root (para poder conectarme con el equipo vía ssh durante el proceso de instalación)
# passwd New password: (Enter your new password) Re-enter password: (Re-enter your password)
- El daemon de SSH debería estar arrancado. Puedes comprobarlo con:
# /etc/init.d/sshd status
- Una ventaja del DVD de Sytem Rescue es que permite activar el entorno gráfico durante el proceso de instalación, que siempre es más agradable. Dado que tenemos una tarjeta NVIDIA y el entorno HW donde estoy instalando está 100% soportado, es tan sencillo como ejecutar
# wizard Selecciona la primera opción Xorg-run
- Puedes seguir desde la shell gráfica o un equipo remoto con SSH.
- Conecto con el nuevo sistema desde un Terminal de mi mac.
asterix:~ luis$ ssh -l root 192.168.1.14 : Password: <=== Uso la misma contraseña que puse antes a root. : #
- Verifico que llego a internet
# ping -c 3 www.gentoo.org
- Configuro los discos. Primero verifico que el sistema ha reconocido los discos.
% ls -al /dev/sd* brw-rw---- 1 root disk 8, 0 Jul 13 18:45 /dev/sda brw-rw---- 1 root disk 8, 1 Jul 13 18:45 /dev/sda1 brw-rw---- 1 root disk 8, 2 Jul 13 18:45 /dev/sda2
- Voy a dedicar el Mac Mini por completo a Gentoo Linux.
Creo el MBR y las particiones usando el comando "gparted" Desde el entorno gráfico ejecuto gparte, borro todo el disco duro, creo el MBR (tipo msdos) y las particiones:
- Las particiones que he configurado han sido:
Bootable Tamaño Tipo Descripción /dev/sda1 * 50MB ext2 Montaré sobre /boot /dev/sda2 1GB Linux swap /dev/sda3 109GB ext4 /
- Notar que conectaré un disco USB más tarde para montar /data. Al final quedarán estas particiones:
- Monto las particiones necesarias para empezar la instalación.
# mount /dev/sda3 /mnt/gentoo <=== Tercera partición del disco 0, aquí vamos a instalar "root", # mkdir /mnt/gentoo/boot # mount /dev/sda1 /mnt/gentoo/boot
- A continuación ponemos la fecha
# date MMDDhhmmYYYY
- Cambio al directorio root destino (mnt/gentoo)
# cd /mnt/gentoo
- Vamos al Mirror más cercano (un ejemplo es la UPC)
NOTA: Usar Mozilla desde el entorno gráfico para acceder a estos repositorios http://www.gentoo.org/main/en/mirrors.xml http://gentoo-euetib.upc.es/mirror/gentoo/ Ir al directorio releases/amd64/current-stage3 Bajarse los ficheros (bajarlos al directorio /mnt/gentoo): stage3-amd64-20110708.tar.bz2 (Aprox. 153 MB) <=== NOTA!! AUNQUE PONE AMD64... ES CORRECTO, VALE PARA Core 2 Duo stage3-amd64-20110708.tar.bz2.DIGESTS
- Verificar que al bajarlos no hubo errores:
# md5sum -c stage3-amd64-20110708.tar.bz2.DIGESTS NOTA: Nos hemos bajado un conjunto de paquetes y aplicaciones básicas ya compiladas, por lo que no es óptimo. Es decir, nos bajamos el Stage para empezar a andar por casa, pero en un momento dado tendremos que recompilar todo a 64bits optimizado para nuestro core 2 due, en breve..
- Descomprimir el fichero.
# cd /mnt/gentoo # tar xvjpf stage3-*.tar.bz2
- Nos bajamos también Portage y lo instalamos
# cd /mnt/gentoo Vamos al Mirror más cercano (usar mozilla desde el entorno gráfico y bajar sobre /mnt/gentoo) http://www.gentoo.org/main/en/mirrors.xml http://gentoo-euetib.upc.es/mirror/gentoo/ Ir al directorio snapshots/current Bajarse los ficheros: portage-latest.tar.bz2 (Aprox. 34MB) portage-latest.tar.bz2.md5sum
- Verificar que al bajarlos no hubo errores:
# md5sum -c portage-latest.tar.bz2.md5sum
- Extraemos el snapshot de Portage
# tar xvjf /mnt/gentoo/portage-latest.tar.bz2 -C /mnt/gentoo/usr
- Editar el fichero /mnt/gentoo/etc/make.conf
CFLAGS="-march=nocona -O2 -pipe"
CXXFLAGS="${CFLAGS}"
CHOST="x86_64-pc-linux-gnu"
USE="mmx sse sse2"
MAKEOPTS="-j3"
ALSA_CARDS="hda-intel"
VIDEO_CARDS="nvidia nv vesa fbdev"
INPUT_DEVICES="evdev keyboard mouse"
LIRC_DEVICES="macmini"
- Copiamos el fichero resolv.conf
# cp -L /etc/resolv.conf /mnt/gentoo/etc/
- Cambiamos el entorno (CHROOT)
mount -t proc none /mnt/gentoo/proc mount -o bind /dev /mnt/gentoo/dev chroot /mnt/gentoo /bin/bash env-update source /etc/profile export PS1="(chroot) $PS1"
- Sincronizar Portage
# emerge --sync
- Actualizar Portage (sólo si lo pide)
# emerge portage
- Seleccionar profile
# eselect profile list # eselect profile set 1 (el de por defecto)
- Pongo USE en /etc/make.conf
# USE from bolica USE="unicode xcb -motif -mozilla -firefox xulrunner vhosts -font-server alsa esd pulseaudio mysql maildir sasl oggvorbis apache2 imap nvidia xvmc gnome jpeg kde ogg opengl png truetype type1 cleartype corefonts udev vorbis X xml xv ffmpeg snmp samba tiff java imagemagick exif x264 gtk zeroconf avahi lm_sensors lcms qt3support -hal fuse spell fontconfig jack"
- Edito /etc/locale.gen
en_US ISO-8859-1 en_US.UTF-8 UTF-8 es_ES ISO-8859-1 es_ES@euro ISO-8859-15 es_ES.UTF-8 UTF-8 en_US.UTF-8@euro UTF-8 es_ES.UTF-8@euro UTF-8
- Ejecuto locale-gen
# locale-gen
- Timezone
cp /usr/share/zoneinfo/Europe/Madrid /etc/localtime
- Recompilo el toolchain
# emerge -v binutils gcc glibc libtool
- Instalar herramientas importantes
# emerge -v genlop gentoolkit # emerge -v v86d (Lo voy a usar para el splash screen/framebuffer) # emerge -v bluez (Para el teclado/ratón bluetooth) NECESITA USE: =sys-fs/udev-164-r2 extras A partir de ahora echale un ojo al comando "genlop -l", está muy bien para ver lo que vas instalando. Además no dejes de probar el comando "genlop -t <nombre de paquete>" o "genlop -tc"; ambos para ver cuanto tardó en instalar un paquete o cuanto va a tardar el que se instala ahora...
- Verifica que vas a poder "actualizar el sistema completo". En mi caso el siguiente comando me dijo que tenía bloqueos...
# emerge -pve system
- Update completo
# emerge -e system # emerge -DuvN world
- HW Clock
# nano -w /etc/conf.d/hwclock clock="local" clock_systohc="YES" clock_hctosys="YES"
- Instalo el Kernel
# emerge -v gentoo-sources
- Configurar y compilar el kernel
# cd /usr/src/linux # make menuconfig <== Aquí no describo mi kernel... pendiente
RATÓN Y TECLADO wireless de Apple ================================= Networking --> <*> Bluetooth subsystem support --> <*> L2CAP protocol support <*> RFCOMM protocol support [*] RFCOMM TTY support Bluetooth device drivers ---> <*> HCI USB driver
- Compilar el kernel
# make && make modules_install # cd /usr/src/linux # cp arch/x86_64/boot/bzImage /boot/bzImage-2.6.38-gentoo-r6 # cp System.map /boot/System.map-2.6.38-gentoo-r6
- /etc/fstab
/dev/sda1 /boot ext2 noauto,noatime 1 2 /dev/sda3 / ext4 noatime 0 1 /dev/sda2 none swap sw 0 0 proc /proc proc defaults 0 0 tmpfs /dev/shm tmpfs nodev,nosuid,noexec 0 0
- Información de red
- Nombre del equipo (MUY IMPORTANTE)
# nano -w /etc/conf.d/hostname HOSTNAME="nene" <== Pon el nombre que quieras...
- Domain name
# nano -w /etc/conf.d/domainname OVERRIDE=1 DNSDOMAIN="parchis.org" NISDOMAIN=""
- Configurar la red
# emerge -v dhcpcd # nano -w /etc/conf.d/net modules="dhcpcd" config_eth0="dhcp"
- Inicio automático de la red en el próximo boot
(chroot) sysresccd init.d # cd /etc/init.d (chroot) sysresccd init.d # ln -s net.lo net.eth0 (chroot) sysresccd init.d # rc-update add net.eth0 default * service net.eth0 added to runlevel default
- Editar /etc/hosts y modificar la linea de localhost
127.0.0.1 nene.parchis.org bolica localhost localhost.localdomain
- Fichero /etc/conf.d/consolefont
consolefont="lat9w-16"
- Fichero /etc/env.d/02locale
LC_ALL="es_ES.UTF-8" LC_COLLATE="es_ES.UTF-8" LC_CTYPE="es_ES.UTF-8" LC_MESSAGES="es_ES.UTF-8" LC_MONETARY="es_ES.UTF-8" LC_NUMERIC="es_ES.UTF-8" LC_PAPER="es_ES.UTF-8" LANG="es_ES.UTF-8"
- Keymaps
# nano -w /etc/conf.d/keymaps KEYMAP="-u es" SET_WINDOWKEYS="yes" EXTENDED_KEYMAPS="backspace euro2"
- Contraseña de root. Este es un paso MUY IMPORTANTE. NO OLVIDARLO :-)
# passwd
- Instalar herramientas importantes
# emerge -v metalog vixie-cron mlocate pciutils # rc-update add metalog default # rc-update add vixie-cron default # rc-update add sshd default
- Configurar el log: Mira mi copia del fichero /etc/metalog.conf
- Instalar soporte EXT4
# emerge -v e2fsprogs
- Primero instalamos el programa
# emerge -v grub
- Editamos el fichero de configuración
# nano -w /boot/grub/grub.conf
Fichero: /boot/grub/grub.conf (Ejemplo de configuración con sólo una partición Linux)
timeout 10 default 0 # For linux with latest kernel title=Gentoo Linux 2.6.28-gentoo-r1 root (hd0,0) kernel (hd0,0)/bzImage-2.6.28-gentoo-r1 root=/dev/sda3
- Instalación de GRUB (yo use la opción automática)
- Opción Automática:
# grep -v rootfs /proc/mounts > /etc/mtab # grub-install --no-floppy /dev/sda
Rearranque y boot
- Una vez que tenemos el kernel y grub preparados, ya es el momento de arrancar el sistema.
NOTA: Salirse de las sesiones ssh clientes y chroot's # exit # cd # umount /mnt/gentoo/boot /mnt/gentoo/dev /mnt/gentoo/proc /mnt/gentoo # reboot
- Mantén pulsado el MOUSE durante el boot the Mac mini para que se expulse el CD
- Verás la pantalla gris y tras un rato la opción de arranque de linux. Haz boot con el kernel preparado.
Configuración del teclado Apple Wireless
En cuanto arranco el equipo, una vez que carga el kernel, el teclado deja obviamente de funcionar. A pesar de haber configurado bluetooth el kernel correctamente es neceasrio realizar varios pasos adicionales.
# emerge -v bluez # /etc/init.d/bluetooth start # rc-update add bluetooth default
Remove and reinsert the batteries from the keyboard. Turn the keyboard on. The light should be flashing.
# hcitool scan
Scanning ...
11:22:33:44:55:66 Apple Wireless Keyboard
# simple-agent hci0 11:22:33:44:55:66
Type a PIN (any four numbers) followed by Enter on the keyboard. Enter the PIN into the simple-agent shell when prompted. The keyboard is paired now. Now trust and connect the device: # bluez-test-device trusted 11:22:33:44:55:66 yes # bluez-test-input connect 11:22:33:44:55:66
Configuraciones adicionales
- Modifico el fichero USE /etc/portage/package.use
- Instalo unos cuantos programas más, notar que esto fuerza la instalación de mucho más software
- Recompilo todo lo necesario con los nuevos USE e instalo más cosas...
# emerge -DuvN system world # emerge -v avahi # emerge -v gparted # emerge -v emacs font-adobe-100dpi font-adobe-75dpi font-adobe-utopia-100dpi font-adobe-utopia-75dpi font-adobe-utopia-type1 # emerge -v iptables iputils iproute2 tcpdump wireshark :
Configurar teclado USB
usb 3-1: new low speed USB device using uhci_hcd and address 2 usb 3-1: New USB device found, idVendor=04d9, idProduct=1503 usb 3-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0 usb 3-1: Product: USB Keyboard usb 3-1: Manufacturer: input: USB Keyboard as /devices/pci0000:00/0000:00:1a.0/usb3/3-1/3-1:1.0/input/input4 generic-usb 0003:04D9:1503.0003: input: USB HID v1.10 Keyboard [ USB Keyboard] on usb-0000:00:1a.0-1/input0
- Ref #1: http://www.astro.ru.nl/~sluys/Public/gentoo_macbook.html
- Ref #2: http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?full=1
- Ref #3: programa Grub2 - http://en.gentoo-wiki.com/wiki/Grub2
- Referencia: Cómo hacer chroot durante la instalación
- Puede que lo necesites. Durante la instalación las cosas fallan y a veces es necesario volver a abrir una shell nueva o bien entrar en el chroot de nuevo. Aquí tienes cómo hacer ambos.
Aviso:
chroot CAMBIA EL ENTORNO AL NUEVO LINUX QUE ESTÁS CONSTRUYENDO. SI NECESITAS OTRA SHELL DURANTE LA INSTALACIÓN, EJECUTA LO SIGUIENTE chroot /mnt/gentoo /bin/bash env-update source /etc/profile export PS1="(chroot) $PS1" SI TERMINAS TODA LA INSTALACIÓN Y TU NUEVO SISTEMA NO HACE BOOT, ENTONCES TIENES QUE VOLVER A ENTRAR CON EL CD DE SYSTEM RESCUE Y EJECUTAR LO SIGUIENTE PARA ARREGLAR LO QUE SEA NECESARIO mount /dev/sda3 /mnt/gentoo mount /dev/sda1 /mnt/gentoo/boot swapon /dev/sda2 mount -t proc none /mnt/gentoo/proc mount -o bind /dev /mnt/gentoo/dev chroot /mnt/gentoo /bin/bash env-update source /etc/profile export PS1="(chroot) $PS1"
Volver a Gentoo en Mac Mini 3,1 (2009)
--Luis 07:50 14 jul 2011 (CEST)

