24 de septiembre de 2012

Archlinux en Raspberry Pi

Esta va a ser una guía de instalación de Archlinux en mi Raspberry Pi a mi "manera" , sirviéndome de guia/backup para futuras instalaciones/reinstalaciones.
Puede haber otras mejores o peores pero esta es la mía ;)

Para quien no tenga claro que es un Raspberry Pi , le invito a consultar la wikipedia.

El hardware de que dispongo es el siguiente:
  • Raspberry Pi ( Model B - 256MB )
  • Tarjeta SD Transcend 8GB Clase10
  • USB Wifi Ralink 5370
  • Disco duro 2.5" 500GB en una caja USB (EXT4)
  • TV Sony KDL32-EX700
Necesitaremos lo siguiente:
En principio el proyecto para mi RaspberryPi tendrá las siguientes funciones:
  • XBMC
  • Tunel SSH
  • Cliente IRC remoto
INSTALACIÓN
  • Averiguamos la IP que ha sido asignada por el DHCP del router al RaspberryPi 
  • Abrimos el Putty y conectamos por SSH
  • Introducimos usuario "root" y contraseña "root"
  • Una vez dentro lo primero que debemos hacer es cambiar la contraseña de root
 # passwd
  •  Actualizamos el repositorio de paquetes y el sistema base usando pacman (gestor de paquetes de Archlinux)
# pacman -Syu
  • Activamos el soporte de firmas para pacman
# pacman-key --init
  • Ahora pasaremos a configurar pacman
# nano /etc/pacman.conf
GPGDir      = /etc/pacman.d/gnupg/
CleanMethod = KeepInstalled
SigLevel = Optional TrustAll
  • Sigamos con la configuración general del sistema
  • Cambiemos el hostname del RaspberryPi
# nano /etc/hostname
RaspberryPi
  • Cambiamos el hostname en el archivo de hosts
 # nano /etc/hosts
127.0.0.1       localhost.localdomain  RaspberryPi

  • Cambiemos la zona horaria
# nano /etc/timezone
Europe/Madrid
  • Cambiemos el localtime
# rm /etc/localtime
# ln -s /usr/share/zoneinfo/Europe/Madrid /etc/localtime
  • Generemos las locales del sistema
# nano /etc/locale.gen
es_ES ISO-8859-1
es_ES@euro ISO-8859-15
es_ES.UTF-8 UTF-8

# locale-gen
  • Configuremos las locales del sistema
# nano /etc/locale.conf
LANG=es_ES.UTF-8
LC_COLLATE=C

  • Configuremos las locales de la consola
# nano /etc/vconsole.conf
KEYMAP=es
FONT=lat9w-16
FONT_MAP=8859-15_to_uni
  • Creamos una partición swap de intercambio
# fallocate -l 512M /swapfile
# chmod 600 /swapfile
# mkswap /swapfile
# swapon /swapfile
  • Incluimos la swap en el fstab
# nano /etc/fstab
/swapfile                      none                 swap     defaults                                  0      0
  • Instalamos el soporte para NTFS y FAT
# pacman -S ntfs-3g ntfsprogs dosfstools
  • Ahora vamos a configurar el sistema para que cargue el modulo de sonido en el inicio
# echo "snd-bcm2835" >> /etc/modules-load.d/snd-bcm2835.conf
  • Configuramos un poco el sistema de logs
# nano /etc/logrotate.conf
rotate 1
compress
  • Ahora vamos a instalar unas herramientas basicas y reiniciar el sistema. Si , ya se que queda muy poco linuxer pero creo que es la mejor comprobación que podemos hacer antes de continuar con la instalación de paquetes y demás
# pacman -S bash-completion mlocate pkgfile namcap base-devel rsync
# reboot
  • Y volvemos a conectar por SSH ( recuerda que has cambiado el pass de root anteriormente )
  • Vamos a iniciar la configuración de la red wifi
  • Instalamos los paquetes necesarios
# pacman -S dialog wpa_actiond wireless_tools
  • Configuramos la red inalambrica con el asistente de netcfg
# wifi-menu
  • Conectamos y guardamos la configuración para un próximo inicio automático del sistema
# systemctl enable netctl-auto@wlan0.service
  •  Reiniciamos y comprobamos que funciona correctamente
# reboot
  • Ahora ya vamos con la instalación de los programas que quiero para mi sistema. Iré poniendo los archivos de configuración si necesitan algún tipo de configuración especial.

# pacman -S irssi udisks2 unrar zip unzip p7zip arj vsftpd xbmc-rbp xorg-server xf86-video-fbdev xorg-xinit upower acpid yaourt ttf-freefont

# yaourt -S omxplayer-git 
  • Como ya hemos instalado los programas pasamos a comprobar los grupos que se han creado para asi poder incluir a nuestro nuevo usuario
# cat /etc/group
  • Investigamos en que grupos queremos incluir a nuestro USUARIO. Para ayudarnos tenemos una descripción de los grupos mas comunes en el wiki de Archlinux
  • Creamos nuestro nuevo USUARIO y le incluimos en los grupos que creamos
# useradd -m -G users,games,lp,optical,audio,storage,disk,floppy,video,scanner,wheel,power,ftp,uucp,log -s /bin/bash USUARIO
  • Ponemos una contraseña a nuestro usuario
# passwd USUARIO
  • Instalaremos sudo para hacer la gestión de root mas cómoda (al menos para mi)
# pacman -S sudo
  • Configuramos sudo para que nos pida el password de root , recuerde el "login" durante 5 minutos y nos insulte si nos equivocamos al introducir la contraseña (xD)
# nano /etc/sudoers
## 5 MINUTOS / PASS ROOT /  INSULTOS                    
USUARIO ALL=(ALL) ALL                      
Defaults timestamp_timeout=5,rootpw,insults  
  • Lo siguiente sera configurar el arranque automatico del sistema en xbmc.
# systemctl enable xbmc.service

Y con esto se puede decir que ya tengo mi sistema. Ahora solo es cuestión de reiniciar y personalizarlo ;)

# reboot 

Mis alias son los siguientes:

# nano /etc/bash.bashrc
alias memoria="free -h ; sudo sh -c 'sync ; echo 3 > /proc/sys/vm/drop_caches' ; free -h"
alias temperatura="/opt/vc/bin/vcgencmd measure_temp"
alias voltaje="/opt/vc/bin/vcgencmd measure_volts"
alias frecuencia="/opt/vc/bin/vcgencmd measure_clock arm"
alias tvservice="/opt/vc/bin/tvservice"
alias reinicia="sudo sh -c 'reboot'"
alias cpProgress="rsync --progress -ravz"
alias peli="/usr/bin/omxplayer -w -o hdmi"
alias portatil="sudo mount -t cifs //I.P.WIN.2/DIRECTORIO /PUNTO/MONTAJE"


Continuare la personalización con pequeñas entradas en el blog ;)

Un saludo!
Ultima actualización : 02/02/2013

4 comentarios:

meebey dijo...

Are you using Smuxi on the Rasperry Pi?

M r. N o b o d y dijo...

Not yet , its only my plan ;) . why?

meebey dijo...

Because that would be awesome to see Smuxi running on Rasperry Pi! :)

M r. N o b o d y dijo...

Its a lightweight irc client.. must works! ;)

I will take a screenshot for you ;)