![]() Bisoños Usuarios de GNU/Linux de Mallorca y Alrededores | Bergantells Usuaris de GNU/Linux de Mallorca i Afegitons |
|
Instalación de Debian GNU/Linux en un iBook G4 (60045 lectures)
Per Alejandro Sobrino Beltrán, Jander (http://tuxitos.es) Creado el 10/04/2004 22:58 modificado el 12/04/2004 12:49 |
IntroducciónAntes de todo, necesitaremos una ISO de Debian para PPC. No vale cualquiera, puesto que las ISOs disponibles para woody no detectan la controladora ATA del iBook. Para ello he utilizado una ISO del instalador beta de Debian, con soporte para XFS: http://penguinppc.org/~eb/files/boot-new-powermac-xfs.iso(1) Además será imprescindible que tengáis una partición reservada para Linux. Yo fuí previsor, y cuando instalaba el Mac OS X, reservé una partición para Debian ;-). ArrancandoA continuación hay que grabar la ISO, lo hice en el Mac OS X con el cdrecord, vía fink(2). Una vez grabada la ISO, hay que hacer que el iBook arranque desde el CD. Para ello, justo después del típico sonido del arranque, apretáis la tecla c. Vuestro iBook arrancará automáticamente desde el CD y cargará el instalador de Debian. mac-fdiskEl "particionador" del instalador para PPC da un poco de miedo a primera vista, pero tras trastear un poco no es tan complicado como parece :-). Lo primero de todo, será comprobar que tenéis esa partición guardada para Linux. Con p podéis ver la lista de las particiones. Yo tenía mi partición reservada para Linux del tipo Apple_HFS, asi que la eliminé (con la tecla d) quedándome la lista de particiones de la siguiente manera: Command (? for help): p /dev/hdc # type name length base ( size ) system /dev/hdc1 Apple_partition_map Apple 63 @ 1 ( 31.5k) Partition map /dev/hdc2 Apple_Free 262144 @ 64 (128.0M) Free space /dev/hdc3 Apple_HFS Apple_HFS_Untitled_2 33082152 @ 262208 ( 15.8G) HFS /dev/hdc4 Apple_Free 25260760 @ 33344360 (12.1G) Free space Block size=512, Number of Blocks=58605120 DeviceType=0x0, DeviceId=0x0 No hay que tener miedo en trastear con el mac-fdisk ya que solo guarda los cambios cuando nosotros se lo digamos (tecla w). Lo siguiente que necesitamos es una partición de "bootstrap". Por lo visto es un follón el crear esta partición, pero el mac-fdisk puede ayudarnos en esto: presionamos la tecla b y le decimos al mac-fdisk cúal es nuestra partición libre para Linux (del tipo Apple_Free). Para ello debemos fijarnos en la salida al listar la tabla de particiones, si es /dev/hdc3 le diremos al mac-fdisk que escriba la partición de "bootstrap" en 3p. Comprobaremos que todo es correcto hasta ahora, y listaremos la tabla de particiones (tecla p). Si todo ha ido bien, procederemos a crear la partición de swap, para ello presionaremos la tecla c y le diremos dónde empieza la partición de swap (siguiendo el ejemplo sería en 4p), le indicáis el tamaño (fijaos que podeis indicárselo directamente en MegaBytes con M) y por último el nombre de la partición: "swap" (es obligatorio ponerle este nombre). Del mismo modo, crearemos una nueva partición para el directorio raíz, y la llamaremos (obligatoriamente) "root". Para decirle al mac-fdisk que queréis que vuestra partición raiz ocupe todo el espacio libre dispobible, siguiendo el ejemplo, debéis hacer: Empieza: 5p Tamaño: 5p Nombre: root Comprobad por última vez que todo es correcto y listad la tabla de particiones. Si está todo correcto, escribid la tabla usando la tecla w. Para que os hagáis una idea, actualmente el mio tiene esta pinta: Command (? for help): p /dev/hdc # type name length base ( size ) system /dev/hdc1 Apple_partition_map Apple 63 @ 1 ( 31.5k) Partition map /dev/hdc2 Apple_Free 262144 @ 64 (128.0M) Free space /dev/hdc3 Apple_HFS Apple_HFS_Untitled_2 33082152 @ 262208 ( 15.8G) HFS /dev/hdc4 Apple_Bootstrap bootstrap 1600 @ 33344360 (800.0k) NewWorld bootblock /dev/hdc5 Apple_UNIX_SVR2 swap 524288 @ 33345960 (256.0M) Linux swap /dev/hdc6 Apple_UNIX_SVR2 root 24734872 @ 33870248 ( 11.8G) Linux native Block size=512, Number of Blocks=58605120 DeviceType=0x0, DeviceId=0x0 Si necesitáis más información sobre el uso de mac-fdisk, podéis encontrarla aquí(3). Instalación de DebianLo que es la instalación en sí, os la dejo a vosotros :-) Hay mucha documentación en internet (en BULMA mismo) sobre como instalar Debian paso a paso, y en PPC es exactamente igual que en cualquier otra arquitectura. Configuración de yabootyaboot es el "bootloader", o cargador, que se encarga del arranque en los Mac. Vendría a ser el equivalente del LILO o GRUB en PPC. Su fichero de configuración es el /etc/yaboot.conf y después de la instalación debería tener mas o menos la siguiente pinta: ## yaboot.conf generated by yabootconfig 1.0.7 ## ## run: "man yaboot.conf" for details. Do not make changes until you have!! ## see also: /usr/share/doc/yaboot/examples for example configurations. ## ## For a dual-boot menu, add one or more of: ## bsd=/dev/hdaX, macos=/dev/hdaY, macosx=/dev/hdaZ boot=/dev/hdc4 device=/pci@f4000000/ata-6@d/disk@0: partition=6 root=/dev/hdc6 timeout=50 install=/usr/lib/yaboot/yaboot magicboot=/usr/lib/yaboot/ofboot image=/boot/vmlinux label=Linux read-only macosx=/dev/hdc3 Cuando realicemos cambios en el fichero de configuración del yaboot, deberemos ejecutar ybin para que se apliquen los cambios hechos. No se si os habíais fijado antes, pero el disco duro es /dev/hdc. Al actualizar el kernel, ya nos quedará en /dev/hda como es más normal :) (por tanto, deberemos cambiar el yaboot.conf). Actualizando, que es gerundioLo primero que hice cuando tuve el sistema más o menos "usable", fue pasarme a SID. Para ello, modifiqué mi /etc/apt/sources.list e hice el típico apt-get update && apt-get dist-upgrade -u. Para más información sobre Debian, tenéis el artículo(4) de Ricardo Galli. Kernel 2.6.5Basándome en el .config de Celso, compilé el kernel 2.6.5(5). Una vez bajado, lo descomprimís (tar xvfj linux-2.6.5.tar.bz2). Necesitaréis instalar (mediante apt-get install) el libncurses5-dev y el kernel-package para poder compilar el kernel. Además, en Debian, será necesario el module-init-tools para poder cargar los módulos del kernel correctamente. Podéis meter directamente mi .config(6) (casi igualito al de Celso) y ejecutar un make menuconfig para comprobar las opciones seleccionadas. Una vez realizado todo esto, solo queda compilar el kernel. Podéis hacerlo de la forma tradicional (usando make...) o a la "Debian way" (usando make-kpkg). Para saber como hacer esto, también podéis encontrar MUCHA información en internet :P Consideraciones del nuevo kernelComo ya comenté en su momento, después de la instalación de Debian, el disco duro es el dispositivo /dev/hdc, pero al compilar el nuevo kernel, pasará a ser /dev/hda. Si intentamos cambiar los valores del /etc/yaboot.conf de /dev/hdc a /dev/hda y ejecutamos ybin, como era de esperar, nos dará errores. Por tanto, deberemos cambiarlo (junto con el /etc/fstab) una vez hayamos reiniciado con el nuevo kernel 2.6.5. Y entonces, ¿cómo demonios arranco con el nuevo kernel? Fácil ;-) Tan solo deberemos pasarle root=/dev/hdaX (donde X es el número de vuestra partición donde reside el directorio raíz) al kernel a la hora de arrancar (en el yaboot). Ojo, que la distribución del teclado, es la americana, así que para escribir el '=' tendremos que presionar la tecla '¡' y para escribir la tecla / tendremos que presionar la tecla '-' (todo ello con un teclado con la distribución en español). Una vez hayamos arrancado con el nuevo kernel, pasaremos a editar los ficheros /etc/fstab y /etc/yaboot.conf y cambiar /dev/hdc por /dev/hda. No hay que olvidarse de ejecutar ybin una vez realizados los cambios en la configuración del yaboot. Podemos reiniciar el sistema para ver que todo ha ido correctamente... Mi yaboot.conf actual: ## yaboot.conf generated by yabootconfig 1.0.7 ## ## run: "man yaboot.conf" for details. Do not make changes until you have!! ## see also: /usr/share/doc/yaboot/examples for example configurations. ## ## For a dual-boot menu, add one or more of: ## bsd=/dev/hdaX, macos=/dev/hdaY, macosx=/dev/hdaZ boot=/dev/hda4 device=/pci@f4000000/ata-6@d/disk@0: partition=6 root=/dev/hda6 timeout=50 install=/usr/lib/yaboot/yaboot magicboot=/usr/lib/yaboot/ofboot fgcolor=yellow bgcolor=blue image=/boot/vmlinux-2.6.5 label=Linux read-only image=/boot/vmlinux-2.4.23-newpmac label=Linux-original read-only macosx=/dev/hda3 Y mi fstab: # /etc/fstab: static file system information. # # <file system> <mount point> <type> <options> <dump> <pass> /dev/hda6 / ext3 errors=remount-ro 0 1 /dev/hda5 none swap sw 0 0 proc /proc proc defaults 0 0 /dev/cdrom /cdrom iso9660 ro,user,noauto 0 0 sysfs /sys sysfs defaults 0 0 XFree86 y DRIPara tener las X con aceleración 3D, instalé (vía apt-get y desde los mirrors oficiales de SID) los siguientes paquetes: ii xbase-clients 4.3.0-7 ii xfonts-100dpi 4.3.0-7 ii xfonts-75dpi 4.3.0-7 ii xfonts-base 4.3.0-7 ii xfonts-konsole 3.2.1-1 ii xfonts-scalable 4.3.0-7 ii xfree86-common 4.3.0-7 ii xlibmesa-dri 4.3.0-7 ii xlibmesa-gl 4.3.0-7 ii xlibmesa-glu 4.3.0-7 ii xlibs 4.3.0-7 ii xlibs-data 4.3.0-7 ii xlibs-pic 4.3.0-7 ii xlibs-static-dev 4.3.0-7 ii xlibs-static-pic 4.3.0-7 ii xserver-common 4.3.0-7 ii xserver-xfree86 4.3.0-7 ii xutils 4.3.0-7 A continuación, basta que dejéis vuestro /etc/XF86Config-4 como el siguiente (otra vez, gracias a Celso): Section "ServerFlags" Option "BlankTime" "3" Option "StandbyTime" "7" Option "SuspendTime" "10" Option "OffTime" "15" EndSection Section "Files" FontPath "/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType" FontPath "/var/lib/defoma/x-ttcidfont-conf.d/dirs/CID" FontPath "/usr/lib/X11/fonts/local" FontPath "unix/:7100" # local font server # if the local font server has problems, we can fall back on these FontPath "/usr/lib/X11/fonts/ttf" FontPath "/usr/lib/X11/fonts/TTF" FontPath "/usr/lib/X11/fonts/misc" FontPath "/usr/lib/X11/fonts/cyrillic" FontPath "/usr/lib/X11/fonts/100dpi/:unscaled" FontPath "/usr/lib/X11/fonts/75dpi/:unscaled" FontPath "/usr/lib/X11/fonts/Type1" FontPath "/usr/lib/X11/fonts/Speedo" FontPath "/usr/lib/X11/fonts/100dpi" FontPath "/usr/lib/X11/fonts/75dpi" FontPath "/usr/lib/X11/fonts/TrueType" # FontPath "/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType" EndSection Section "Module" Load "GLcore" Load "bitmap" Load "dbe" Load "ddc" Load "dri" Load "extmod" Load "freetype" Load "speedo" # Load "truetype" Load "xtt" Load "glx" Load "int10" Load "record" Load "speedo" Load "type1" Load "vbe" EndSection Section "InputDevice" Identifier "Laptop Keyboard" Driver "keyboard" Option "CoreKeyboard" Option "XkbRules" "xfree86" Option "XkbLayout" "es" EndSection Section "InputDevice" Identifier "Configured Mouse" Driver "mouse" Option "CorePointer" Option "Device" "/dev/input/mice" Option "Protocol" "ImPS/2" Option "Emulate3Buttons" "true" # Option "ZAxisMapping" "4 5" EndSection Section "Device" Identifier "Radeon 9200" Driver "radeon" Option "AGPMode" "4" Option "UseFBDev" "true" VendorName "ATI" Option "EnablePageFlip" "On" BoardName "Radeon 9200" ChipID 0x5960 EndSection Section "Monitor" Identifier "TFT" HorizSync 28-49 VertRefresh 43-72 Option "DPMS" EndSection Section "Screen" Identifier "Pantalla" Device "Radeon 9200" Monitor "TFT" DefaultDepth 16 SubSection "Display" Depth 16 Modes "1024x768" "800x600" "640x480" # Virtual 1024 768 EndSubSection EndSection Section "ServerLayout" Identifier "1024x768" Screen "Pantalla" InputDevice "Laptop Keyboard" InputDevice "Configured Mouse" EndSection Section "DRI" Mode 0666 EndSection En teoría ya podéis ejecutar startx y ver si todo ha ido bien. Además, podéis ejecutar el glxgears y glxinfo para comprobar que tenéis aceleración 3D. SonidoPara ello, instalé el paquete alsa-base: apt-get install alsa-base. En el diálogo de configuración del paquete, seleccioné PowerMac, seguidamente le dí a done, y le dije que me guardase los cambios cada vez que reinicie el sistema. Ojo, tenéis que subir el volumen (por defecto viene a 0) con el alsamixer. Aún así, seguía sin escuchar nada, así que me instalé el aumix (apt-get install aumix) y le subí el volumen, y tachán! sonaba :-). Por cierto, deberéis añadir a vuestro usuario al grupo audio para poder escuchar algo: adduser jander audio Botones del ratónSí, el iBook solo tiene un botón de ratón, por tanto, o enchufáis un ratón USB, o bien emulais el comportamiento de uno. Basta con editar el fichero /etc/sysctl.conf y dejarlo de la siguiente forma: dev/mac_hid/mouse_button3_keycode = 96 dev/mac_hid/mouse_button2_keycode = 87 dev/mac_hid/mouse_button_emulation = 1 La emulación de los botones, está explicado en un artículo de Ricardo sobre los iBook G3(7). Teclas especialesEl control de las teclas especiales se hace a través de un demonio, el pbbuttonsd. Una vez más, instalado via apt-get. El /etc/pbbuttonsd.conf es otra vez obra de Celso (tan solo le he modificado el brillo inicial por defecto): # configfile for pbbuttonsd >= version 0.5 # for options see man pbbuttonsd.conf #For more security! userallowed = paranoid # [MODULE POWERSAVE] onAC_sleep = no onAC_dim = no onAC_blank = no onAC_Tsleep = 3000 onAC_Tdim = 600 onAC_Thdoff = 0 onBattery_sleep = yes onBattery_dim = yes onBattery_blank = no onBattery_Tsleep = 3000 onBattery_Tdim = 600 onBattery_Thdoff = 12 SleepKey = 116 SleepKeyDelay = 0 BWL_First = 21 BWL_Second = 1 BWL_Last = 3 Script_BatCritical = "/sbin/shutdown -h now" #Script_ProfChanged = "" Script_HDSetup = "/sbin/hdparm -p -S %d /dev/hda" CPULoad_sleeplock = yes CPULoad_min = 20 CPULoad_period = 20 NETLoad_sleeplock = yes NETLoad_min = 4096 NETLoad_period = 20 NETLoad_device = eth0 # [MODULE DISPLAY] Brightness = 10 BrightnessupKey = 225 BrightnessdownKey = 224 dev_framebuffer = "/dev/fb0" UseFBBlank = yes # [MODULE OSSMIXER] dev_mixer = "/dev/mixer" mixerchannels = "volume, speaker" volume = 50 speakers_muted = no volumeupkey = 115 volumedownkey = 114 mutekey = 113 mixerinitdelay = no # [MODULE CDROM] dev_cdrom = "/dev/cdrom" ejectcdkey = 161 ejectcdkeydelay = 2000 # [MODULE PMAC] dev_pmu = "/dev/pmu" dev_adb = "/dev/adb" tpmodeupkey = 225 + alt tpmodedownkey = 224 + alt tpmode = drag kbdmode = fkeyslast replace_pmud = yes Existe el paquete powerprefs que es una aplicación gráfica para configurar el pbbuttonsd: ![]() También está disponible el gtkpbbuttons que muestra unos gráficos al estilo del Mac OS X para cuando presionáis una de las teclas especiales: ![]() Control de energíaEl pmud no acaba de llevarse muy bien con la CPU del iBook G4: sal:~# /etc/init.d/pmud start Starting pmud: PMU version 12: iBook/G3 Pismo/G4 Titanium sal:~# /etc/init.d/pmud status pmud dead but pid file exists Así que eliminé el pmud ya que no parecía que hiciese nada... Aparte del pmud, probé (y con éxito) el cpudyn de Ricardo: apt-get install cpudyn. Ahí va mi /etc/default/cpudyn: # Cpudyn configure options ################################################ # COMMON OPTIONS ################################################ # # Internal between idle ratio tests in 1/10 sec increments # INTERVAL=1 ################################################ # CPUFREQ OPTIONS ################################################ # # CPU idle work ratio to speed up # CPU_UP=0.5 # # CPU idle work ratio to speed down # CPU_DOWN=0.9 # # when using cputhrottling, what state to switch when speeding down # THROTTLING_LOW=7 ################################################ # DISK OPTIONS # (disabled by default) ################################################ # # Timeout to put the disk in standby mode if there was no # io during that period (in seconds) # TIMEOUT=240 # # Specified disks to spindown (comma separated devices) # # DISKS=/dev/hda,/dev/hdb DISKS=/dev/hda ################################################ # EXTRA OPTIONS ################################################ # Available options are # -acpi disables cpufreq and force the use of acpi # -asus enables asus_acpi in some laptops # -nice count also nice CPU usage as load as well # -minf value Set the minimum CPU frequency in a value between 0.0 and 1.0 # EXTRA_OPTIONS="" Temperaturas y ventiladorPara tener un mejor control de la temperatura del portátil, así como que al superar cierta temperatura se active el ventilador de CPU, deberemos cargar un módulo: modprobe therm_adt746x A partir de aquí, el ventilador arrancará cuando la CPU alcance una cierta temperatura límite. Todos los valores de temperaturas y demás, los podéis encontrar en /sys/devices/temperatures/. Para cargar siempre en el arranque el módulo, basta hacer un echo therm-adt746x >> /etc/modules. Además me he permitido hacer un mini-script para que me muestre la información mas relevante en ese momento. En bash: echo "############# CPU #############" echo -n "Temperatura de la CPU: " cat /sys/devices/temperatures/cpu_temperature echo -n "Velocidad del ventilador: " cat /sys/devices/temperatures/cpu_fan_speed echo -n "Temperatura límite: " cat /sys/devices/temperatures/cpu_limit echo "############# GPU #############" echo -n "Temperatura de la GPU: " cat /sys/devices/temperatures/gpu_temperature echo -n "Temperatura límite: " cat /sys/devices/temperatures/gpu_limit Usando kdialog: kdialog --title "Temperaturas del iBook G4" --msgbox \ "Temperatura CPU: `cat /sys/devices/temperatures/cpu_temperature` \n \ Velocidad ventilador CPU: `cat /sys/devices/temperatures/cpu_fan_speed` \n \ Temperatura límite CPU: `cat /sys/devices/temperatures/cpu_limit` \n \ Temperatura de la GPU: `cat /sys/devices/temperatures/gpu_temperature` \n \ Temperatura límite GPU: `cat /sys/devices/temperatures/gpu_limit`" Y aquí podéis ver como queda: ![]() Conclusiones y comentariosCon esto, vuestro iBook G4 debería tener Debian instalado y funcionando lo mejor que sé... Por supuesto, se aceptan sugerencias :-) Además, dar las gracias a Celso González por trabajarse los ficheros de configuración y a Ricardo Galli por el anterior artículo sobre los iBook G3. Y éste(8) es el resultado, en dónde se ve como el cpudyn funciona bajándome la frecuencia de la CPU desde 800MHz a 600MHz :). Lista de enlaces de este artículo:
|
|
E-mail del autor: jander _ARROBA_ mallorcaweb.net Podrás encontrar este artículo e información adicional en: http://bulma.net/body.phtml?nIdNoticia=2011 |