Difference between revisions of "Official Installation Guide (Español)"

From ArchWiki
Jump to: navigation, search
Line 1: Line 1:
 
{{Translateme}}
 
{{Translateme}}
  
:''Esta es la Documentación General de Usuario para Arch Linux. Cumbre la obtención de los archivos necesarios, instalando la distribución y montando un sistema básico y funcional. Adicionalmente, una pequeña referencia sobre las herramientas básicas como son "pacman" el administrador de paquetes y "ABS".''
+
Esta es la documentación general para usuarios de la distribución Arch Linux, nombre clave ''(Don't Panic)''. Cubre como obtener los archivos necesarios, instalación y configuración de un sistema básico y funcional, además de una corta referencia a las capas del sistema y las herramientas específicas de Arch, como el administrador de paquetes '''pacman''' y el '''Arch Build System''' (ABS).
  
 
==Introducción==
 
==Introducción==
 
===Que es Arch Linux===
 
===Que es Arch Linux===
Arch Linux es una distribución GNU/Linux optimizada para i686 inspirada originalmente en CRUX, una genial distro de Per Lidén.
+
Arch Linux es una distribución Linux optimizada para i686 que se basó originalmente en ideas tomadas de CRUX, una genial distribución desarrollada por Per Lidén.
  
Arch es rápida, ligera, flexible y simple. Quizá no sea una descripción glamorosa pero es verdadera. Arch está optimizada para la arquitectura i686 (Pentium-Pro en adelante), así que obtienes mejor rendimiento que con la mayoria de las distros que andan por ahí (la mayoria son i386). Es ligera comparada con distros como RedHat o Ubuntu, y su diseño simple le permite ser usada con cualquier finalidad. En un solo archivo guarda la configuración desde los "locales", la red, los modulos hasta los demonios y el orden en el que inician.
+
Arch es rápida, ligera, flexible y simple. Quizá no sea una descripción glamorosa pero es completamente real. Arch está optimizada para procesadores i686, así que obtienes más de los ciclos de tu CPU. Es ligera comparada con RedHat y demás distribuciones, y su diseño simple la hacen fácil de extender y adaptar a cualquier clase de sistema que estés construyendo.
  
Todo esto funciona envidiablemente con la ayuda del gestor de paquetes precompilados con resolución de dependencias que incluso permite la actualización completa del sistema con un solo comando, ya que Arch no tiene un sistema de producción basado en versiones, de esta forma garantizas siempre tener tu sistema con el ultimo software. Arch usa script de inicio estilo BSD y un sistema de administracion de paquetes desde la fuente como los ports (Arch Build System (ABS)), haciendo la tarea de compilar un juego; también permite sincronizar con un solo comando. ¡Y claro!, puedes recontruir todo tu sistema desde las fuentes con un solo comando. Todo se hace simple y transparentemente, resultando en una de las distros mas personalizables y potentes que existen.
+
Esto es apoyado por un sistema de paquetes binarios fácil de usar que permite actualizar el sistema completo con un comando. Arch también usa un sistema constructor de paquetes desde código fuente (el '''Arch Build System''' o '''ABS''') que facilita la generación de binarios, que también puede sincronizarse con un comando, ¡y claro!, también puedes reconstruir tu sistema con un comando. Todo se hace de forma simple y transparente.
  
Arch Linux busca mantener la mayor cantidad de paquetes actualizados posibles. Actualmente tenemos una colección completa de paquetes básicos (core) y muchos adicionales (extra, community). Así mismo tenemos dos repositorios más, uno de pruebas (testing) y uno con software inestable (unstable).
+
Arch Linux se esfuerza por mantener las más recientes versiones estables de su software. Actualmente soportamos una muy racionalizada colección de paquetes base con una creciente colección de paquetes extra mantenidas por los desarrolladores, así como, literalmente, miles de paquetes adicionales mantenidos por confiables miembros de la comunidad para nuestro AUR para ser usados por quien quiera como quiera.
  
En nuestra meta de simplicidad, hemos excluido algunas porciones inútiles del sistema xomo /usr/doc y las páginas info. Esto debido a que casi no son usadas y la información puede ser encontrada en Internet o bien en las páginas MAN.
+
En nuestra meta de simplicidad hemos excluido algunas porciones inútiles del sistema, como /usr/doc y las páginas info. Esto debido a que casi no son usadas y la información puede ser encontrada en Internet o bien en las páginas MAN.
  
Otra de las metas de Arch es ofrecer la ultima tecnología disponible a los usuarios.
+
Arch Linux además se esfuerza por usar algunas de las últimas características disponibles para los usuarios de Linux. Desde la versión 0.8 (Voodoo) Arch Linux usa la versión 2.6 del núcleo así como udev por defecto, y soporta EXT2/EXT3/REISERFS/XFS/JFS, RAID/LVM y sistemas de archivos encriptados.
  
 
===Licencia===
 
===Licencia===
Arch Linux, pacman, la documentación y scripts tienen copyright ©2002-2006 by Judd Vinet y estan licenciados bajo la Licencia Publica General (GPL) GNU.
+
Arch Linux, pacman, la documentación y scripts tienen copyright ©2002-2006 para Judd Vinet y estan licenciados bajo la GNU General Public License versión 2.
 +
 
 +
===Créditos y feedback===
 +
Este documento está fuertemente basado en los trabajos de Judd Vinet judd@archlinux.org. Correcciones menores y una buena cantidad de modificaciones y adiciones han sido hechas por Dennis Herbrich dennis@archlinux.org y Tobias Powalowski tpowa@archlinux.org. Una incontable cantidad de personas han contribuido y contribuirán con la evolución de esta documentación enviando correcciones y sugerencias, siendo imposible listarlos a todos. Sin embargo, tu sabes quien eres, y sin tu ayuda sería imposible de mantener y mejorar. ¡Gracias!
  
 
==Instalando Arch Linux==
 
==Instalando Arch Linux==
 
===Pre-Instalación===
 
===Pre-Instalación===
Arch Linux está optimizado para la arquitectura i686 o x86-64 (AMD64) y no correrá en otros procesadores x86 (i386, i486, i586). Un CPU Pentium-Pro/Pentium-II o más reciente es necesario para usar Arch.
+
Arch Linux está optimizado para la arquitectura i686 o x86-64 (AMD64) y no corre en otros procesadores x86 (i386, i486, i586). Es necesaria una CPU Pentium-Pro/Pentium-II o posterior.
  
Antes de instalar hay que elgir que tipo de instalación realizaremos. Arch Linux provee imagenes ISO arrancables para la instalación, así mismo imagenes floppy para instalación vía FTP. También es posible descargar una imagen base sólamente con los componentes necesarios básicos del sistema con un peso de no más de 200MB. Este ultimo método es el recomendado.
+
Existe un proyecto de la comunidad que proporciona paquetes para i586 y PPC. Busca en el sitio por más información.
Si no tienes conección a Internet lo recomendable es bajar el ISO con el sistema base más una buena colección de utilidades (current), quemarlo e instalarlo.
+
  
No se recomienda usar la instalación con floppy ya que tienden a fallar.
+
Antes de instalar hay que elegir que tipo de instalación. Arch Linux provee dos imágenes ISO para arrancar desde CD:
  
Es posible usar una ISO antigua para instalar ya que el formato de Arch permite actualizar todo el sistema con un comando, así que si no puedes bajar la ultima ISO pero tienes una anterior esta funcionará perfectamente.
+
* El considerablemente pequeño 2007.08 ISO (~150 MB) sólo contiene los paquetes base además del núcleo. Notar que ya no es necesario descargar una imagen ISO completa si planeas usar RAID/LVM durante la instalación ya que los paquetes necesarios fueron movidos a la base hace tiempo. Instalar desde un medio creado con esta imagen da como resultado un sistema Linux completamente funcional, sin adornos, esperando a ser usado desde la línea de comandos. Esta imagen es apropiada idealmente para minimalistas o expertos que sólo quieren un sistema básico funcional y continuar desde ahí, o tienen una conexión lenta o difícil de configurar como para instalar desde FTP. El nombre de este ISO puede ser Archlinux-i686-2007.08-2.core.iso, de acuerdo a tu arquitectura.
 +
* Finalmente, hay una nueva opción disponible para anchos de banda consistentes, el pequeñísimo 2007.08 (~25 MB), contiene sólo lo necesario para arrancar el proceso de instalación. Esta variante no contiene paquetes, y por lo tanto sólo sirve para una instalación por FTP si tienes una rápida y fácil de configurar conexión, o un repositorio de paquetes en una LAN. Con sólo 22 MB esta es la más rápida forma de iniciar la instalación de Arch, y tiene la ventaja adicional de usar los últimos paquetes disponibles al momento de instalar en lugar de las versiones más antiguas de la otra ISO. Por supuesto todos los paquetes que escojas para instalar tienen que ser descargados de algún lado, pero al menos no tienes que actualizar el sistema inmediatamente después de la instalación, y salvarte de algún lío. Si tu conexión a Internet es barata y rápida, escoge esta imagen.
  
Si tu conección a internet es via DialUp, no podŕas hacer una instalación FTP ya que los modulos correspondientes no estan incluidos en los CD's.
+
Si no tienes un lector de CD en tu computador, obviamente estás pegado.
  
For a successful FTP install you must have a gateway in your LAN that is actually connected to the internet and routes any requests from the PC to be installed into the internet and back. Or, alternatively, you can of course have a properly set up FTP server in your LAN to install from. Point is that you cannot attach a modem to your PC and set up a connection with your provider with the Installer. It won't work.
+
Ahora obtén una imagen instalable de Arch, ya sea descargándola y quemándola desde alguno de los mirros listados, o comprándola a OSDisc.
  
The most expedient method of installing Arch Linux surely is installing the base system from the base CD, followed by a complete system upgrade. Subsequently, any other packages you want or need once you set up your internet connection will be available through pacman from your newly installed base system. Again, this method is strongly recommended and conforms to the "Arch Way".
+
Además no debes preocuparte al usar una ISO de instalación antigua, ya que actualizarás el sistema a la rama actual una vez que hayas configurado tu sistema básico, ¡si al menos tienes una conexión de banda ancha!
  
Another thing you should know before trying to install Arch Linux is that during the install you're asked a few questions about which hard drive to prepare, what modules to load, and what changes to make to certain system-critical files like lilo.conf and rc.conf. The installer will not hold your hand here and guide you through any potential setup known and unknown to mankind; you are expected to know what to put in and leave out. This is quite a requirement for a newbie, so if this intimidates you already, make sure you read through this whole document to get at least a vague idea of what is going to be asked, and check back on IRC, the forums or a Linux guru in your neighborhood if anything is not clear to you before you totally mess up your system. You may of course boldly step into the fight and tinker around and try until it works, but don't tell anyone afterwards you haven't been warned. That being said, it's not as bad as it seems. ;)
+
Ahora es posible usar una conexión por dialup con PPP. Las herramientas ppp, rp-pppoe e ISDN están incluidas en el medio de instalación.
  
====What You Will Need====
+
Las ISOs 2007.08 corren como cualquier sistema Arch ya instalado, y lo más destacable es:
* A working knowledge of Linux and your system, esp. your hardware
+
* Arch Linux installation media (see the mirror list)
+
** Either the Arch Linux Install CD, or
+
** 2-7 floppy disks, depending on what you need: SCSI, Ethernet, etc.
+
* Either an i686-based computer (PPro, Pentium 2 or higher, Athlon/Duron, VIA-C7, etc. Note that AMD K6, Transmeta Crusoe, Cyrix III, and VIA C3 are NOT supported.), or
+
* An x86-64-based computer (Pentium 4/Celeron with x64 support, Athlon x64, Core 2)
+
* Some time to kill
+
  
====Acquiring Arch Linux====
+
* pacman está incluido para permitir la instalación de cualquier otro paquete necesario en el ambiente de instalación.
You can download Arch Linux from any of the mirrors listed on the download page. If you are downloading the floppy disk images for an FTP-based install, be sure to select a mirror that provides the packages. Likewise, if you will be performing a CD-based install, be sure to select a mirror that provides the ISO.
+
* Soporte completo de /etc/rc.d/ y /etc/rc.conf
 +
* Soporte completo de red, incluyendo ssh, telnet y servicios portmap.
 +
* Configuración personalizada de archivos: cualquier medio con directorio /config será copiado al ambiente de instalación /etc/
 +
* Carga de paquetes como extensiones durante el arranque: cualquier medio con el directorio /package incluyendo pacman será instalado durante el arranque.
 +
* Enlaces y naim incluidos para poder comunicarse sobre Internet.
 +
* Soporte completo para kexec.
  
Consult the [http://www.archlinux.org/download webpage] for a current list of download mirrors.
+
El amigable método de instalación de Arch instalará con seguridad el sistema base y todo lo que necesitas para conectarte desde el CD, y luego correrá un sistema completo para ser actualizado o agregarle cualquier otro paquete que quieras o necesites una vez que configures la conexión a Internet.
  
====Floppy Install====
+
Otra cosa que debes saber antes de intentar instalar Arch is que durante el proceso se te harán algunas preguntas sobre el disco a preparar, qué módulos cargar y que cambios hacer en importantes archivos del sistema, como lilo.conf y rc.conf. El instalador no agarrará tu mano para guiarte a través de ninguna configuración conocida o desconocida por seres humanos, se espera que sepas que poner y que dejar tal como está. Este es un importante requerimiento para los novatos, así que si te intimida asegúrate de leer todo este documento para tener al menos una vaga idea sobre las preguntas que se te harán, y pregunta en IRC, foros o al gurú de tu vecindario si algo no te queda claro antes desordenar completamente tu sistema. Por supuesto que podrás valientemente luchar y juguetear hasta que funcione, pero después no digas que no fuiste advertido. Dicho esto, no es tan malo :)
  
# Download images/boot.img (path is relative to the mirror root)
+
Lo que necesitas tener:
# Download images/root.img
+
* Conocimiento de Linux y especialmente tu hardware,
# Download any add-on images you need from the images/addons/ subdirectory:
+
* un medio de instalación de Arch Linux (mira la lista de mirrors),
;ethernet.img : Ethernet modules
+
* un computador basado en i686 (PPro, Pentium 2 o posterior, Athlon/Duron, VIA-C7, etc. (AMD K6, Transmeta Crusoe, CyrixIII, y VIA C3 no están soportados), o
;fs1.img : XFS/JFS modules, Ext2 extra utilities
+
* un computador basado en x86-64 (Pentium 4/Celeron con soporte para 64 bits, Athlon x64, Core 2),
;fs2.img : XFS/JFS extra utilities
+
* algo de tiempo para matar.
;keymaps_usb_firewire.img : Additional keymaps/console fonts, USB/Firewire modules
+
;ntfs_fdisk.img : NTFS modules and utilities, fdisk
+
;pcmcia_wlan.img : PCMCIA modules, wireless utilities
+
;raid_lvm.img : RAID/LVM modules and utilities
+
;scsi.img : SCSI modules
+
  
#Find some blank floppies and write the images to them:
+
===Adquiriendo Arch Linux===
<pre>(insert first disk)
+
Puedes descargar Arch Linux desde cualquiera de los mirrors listados en la página de descarga. La lista de mirros estáticos es listada más abajo (podrían estar desactualizados; consulta la web por una lista actual):
# dd if=boot.img of=/dev/fd0
+
(insert second disk)
+
# dd if=root.img of=/dev/fd0
+
  
(repeat for any additional add-on images)
+
* Norteamérica
# dd if=scsi.img of=/dev/fd0</pre>
+
** ftp://ftp.archlinux.org
 +
**  ftp://ftp.nethat.com/pub/linux/archlinux
 +
**  ftp://ftp-linux.cc.gatech.edu/pub/linux/distributions/archlinux
 +
**  ftp://mirror.cs.vt.edu/pub/ArchLinux
 +
**  ftp://ftp.ibiblio.org/pub/linux/distributions/archlinux
 +
**  http://www2.cddc.vt.edu/linux/distributions/archlinux
 +
* Europa
 +
** Austria
 +
*** ftp://gd.tuwien.ac.at/opsys/linux/archlinux
 +
** Bélgica
 +
*** ftp://ftp.belnet.be/packages/archlinux
 +
** República Checa
 +
*** ftp://ftp.sh.cvut.cz/MIRRORS/arch
 +
** Estonia
 +
*** ftp://ftp.estpak.ee/pub/archlinux
 +
** Francia
 +
*** ftp://ftp.rez-gif.supelec.fr/pub/Linux/distrib/archlinux
 +
*** ftp://mir1.archlinuxfr.org/archlinux
 +
*** ftp://mir2.archlinuxfr.org/archlinux
 +
*** ftp://distrib-coffee.ipsl.jussieu.fr/pub/linux/archlinux
 +
*** http://mirrors.jakimowicz.com/archlinux
 +
** Alemania
 +
*** ftp://ftp.tu-chemnitz.de/pub/linux/sunsite.unc-mirror/distributions/archlinux
 +
*** ftp://ftp.hosteurope.de/mirror/ftp.archlinux.org
 +
** Gran Bretaña
 +
*** http://ftp.parrswood.manchester.sch.uk/Mirrors/ftp.archlinux.org
 +
** Grecia
 +
*** ftp://ftp.ntua.gr/pub/linux/archlinux
 +
** Irlanda
 +
*** ftp://ftp.heanet.ie/mirrors/ftp.archlinux.org
 +
** Italia
 +
*** ftp://mi.mirror.garr.it/mirrors/archlinux
 +
** Países Bajos
 +
*** ftp://ftp.nluug.nl/pub/metalab/distributions/archlinux
 +
*** ftp://ftp.surfnet.nl/pub/os/Linux/distr/archlinux
 +
** Noruega
 +
*** ftp://mirror.djzradio.net/archlinux
 +
** Polonia
 +
*** ftp://sunsite.icm.edu.pl/site/linux-sunsite/distributions/archlinux
 +
*** ftp://mirror.icis.pcz.pl/archlinux
 +
** Portugal
 +
*** ftp://gul.est.ips.pt/repos/archlinux
 +
*** ftp://cesium.di.uminho.pt/pub/archlinux
 +
*** http://darkstar.ist.utl.pt/archlinux
 +
** Rumania
 +
*** ftp://ftp.iasi.roedu.net/mirrors/archlinux.org
 +
** Suecia
 +
*** ftp://ftp.ds.hj.se/pub/linux/distributions/archlinux
 +
*** ftp://ftp.gigabit.nu
 +
** Suiza
 +
*** ftp://archlinux.puzzle.ch
 +
** Ucrania
 +
*** ftp://ftp.linux.kiev.ua/pub/Linux/ArchLinux
 +
** Australia
 +
*** ftp://mirror.pacific.net.au/linux/archlinux
 +
* Asia
 +
** ftp://cle.linux.org.tw/pub/ArchLinux
 +
** http://mirror.vxmatrix.net/ArchLinux
 +
** http://dxmirror.vxmatrix.net/ArchLinux
 +
** http://cncmirror.vxmatrix.net/ArchLinux
  
If you need to write these images from a Windows box, you can download rawrite.exe and use it instead of dd.
+
===Preparando el medio de instalación===
# Write down all your network settings so you can enter them into setup later, if you want to install via FTP:
+
* Descarga <mirror>/iso/<your_architecture>/Archlinux-<version>.iso (ruta relativa a la raíz del mirror)
** IP Address
+
* Descarga <mirror>/iso/<your_architecture>/md5sum-<version>.txt
** Subnet Mask
+
* Verifica la integridad del .iso usando md5sum:
** Gateway
+
md5sum Archlinux-<version>.iso
** Ethernet Module for your network card (e.g.: eepro100, 8139too)
+
* Graba la imagen .iso en un CD-R virgen (este paso varía dependiendo del sistema operativo y aplicación que uses). Si quieres descargar la base, FTP o ISO beta, usa el apropiado nombre de archivo para md5sum, por ejemplo: arch-0.8-base.iso en lugar de arch-0.8.iso.
 +
* Anota todos los datos de configuración de tu red para que puedas configurarla después si quieres instalar desde FTP:
 +
** IP,
 +
** máscara de subred,
 +
** gateway,
 +
** el módulo para tu tarjeta de red.
  
====CD Install====
+
===Usando el CD-ROM===
# Download 2007.05/iso/i686/arch-2007.05.iso or 2007.05/iso/i686/arch-2007.05-base.iso (path relative to mirror root)
+
Si ya estás familiarizado con el proceso de arranque, puedes saltarte todo este parloteo hasta el [[Guía oficial de Instalación#Proceso de instalación común|Proceso de instalación común]], que esboza el actual proceso de instalación de Arch Linux.
# Download 2007.05/iso/i686/arch-2007.05.md5sum
+
# Verify the integrity of the .iso image using md5sum:
+
<pre>md5sum --check arch-2007.05.md5sum
+
arch-2007.05.iso: OK</pre>
+
If you want to download the base or a beta ISO instead, use the appropriate filename, ie: arch-2007.05-base.iso instead of arch-2007.05.iso, likewise for the md5sum.
+
# Burn the .iso image to a blank CD-R (this step varies depending on the OS/software you're using). It is recommended to use lower burn speeds (2x-16x) for this operation. This will ensure an accurate image burn and save you from unneeded aggravation. Checking the md5sum of the burned CD is also good practice:
+
  
<pre>md5sum /dev/cdrom</pre>
+
Reinicia el computador con el CD de instalación de Arch Linux en el lector. Asegúrate de que tu BIOS está configurada para arrancar ese dispositivo. Dirígete al manual del de tu placa madre o al fabricante de tu sistema para conocer los detalles si no sabes como hacerlo. Una vez que el CD haya arrancado verás un cursor de arránque esperando a que presiones alguna tecla indefinida, explicando cuales son tus opciones. La mayoría de los usuarios pueden presionar Enter.
  
Write down all your network settings so you can enter them into setup later, if you want to install via FTP:
+
Si el arranque de tu CD falla por razones desconocidas y estás usando un lector de CD más o menos viejo junto a un CD-RW prueba a usar un típico CD-R en su lugar. Algunos lectores viejos -dos de los míos, por ejemplo - Dennis- no leen los CD-RWs apropiadamente.
** IP Address
+
** Subnet Mask
+
** Gateway
+
** Ethernet Module for your network card (e.g.: eepro100, or 8139too, or forcedeth)
+
  
===Using the CD-ROM===
+
Al final del proceso de arranque, deberías encontrarte con permisos de super usuario en una consola con un puñado de instrucciones llenando la mitad superior de tu pantalla. En este punto estás listo para comenzar la instalación, o realizar cualquier preparación manual que consideres necesaria.
You should skip this section and go right to the Floppy Installation instructions if you are not using a CD-ROM from which to boot. If you're already familiar with the boot process, you may skip all this babble as well, and jump to the Common Install Procedure, which outlines the actual process of installing Arch Linux.
+
  
Reboot your computer with the Arch Linux Installation CD in the drive. Make sure your BIOS is set in a way to allow booting from your CD-ROM. Refer to your motherboard manual or your system manufacturer for details if you have no clue how to do that. Once the CD is booted from, you will see a boot prompt waiting for your input indefinitely, explaining what your options are at this point. Most users can just hit Enter to boot the default Arch install kernel with IDE and SCSI support. If, for some reason, the kernel does not boot for you, you can try the IDE-only kernel by typing arch-noscsi at the boot prompt.
+
===Proceso de instalación común===
 +
En este punto tu sistema debería haber arrancado, y el disco donde te gustaría instalar, así como tu medio de instalación deberían ser accesibles.
  
If your CD-ROM fails to boot for no obvious reason, and you're using a rather old CD-ROM drive in conjunction with a copy burned to a CD-RW, consider using a normal CD-R instead. Some older drives [mine, for example - Dennis] don't manage to read CD-RWs properly.
+
Pasos de la instalación:
  
At the end of the boot procedure, you should be dropped into a root shell with a handful of instructions filling the upper half of your screen. At this point you are ready to commence the actual installation. Don't let those instructions fool you; when booting from a CD, you don't have to run the loaddisk anymore as it's done automatically during boot. Only floppy users need to run loaddisk manually.
+
# Carga del idioma del teclado;
 +
# arranque del instalador;
 +
# configuración de la red (solo para instalar desde FTP);
 +
# preparación del disco duro:
 +
## preparación automática,
 +
## particionado del disco duro,
 +
## montaje del sistema de archivos;
 +
# selección de paquetes;
 +
# instalación de paquetes;
 +
# configuración del sistema;
 +
# instalación del núcleo;
 +
# instalación del cargador de arranque;
 +
# salida del instalador.
  
===Using The Floppies===
+
Usando las herramientas disponibles los usuarios experimentados también son capaces de preparar el disco duro o cualquier dispositivo necesario para la instalación antes de iniciar el instalador. Puedes saltarte este párrafo sino ves necesaria ninguna interacción manual. Fíjate que el medio de instalación de Arch Linux también contiene un script /arch/quickinst para usuarios experimentados. Este instala los paquetes básicos en un directorio especificado por el usuario. Si estás realizando una instalación exótica con cosas divertidas como RAID y LVM, o no quieres usar el instalador para nada, probablemente querrás usar ese script. Todos los chicos cool lo hacen.
If you have any chance of booting the system from the Arch Linux CD, it's strongly recommended to do so. Not only are the floppies themselves prone to failure, the whole boot process takes much longer, and if you need a handful of modules the disk-juggling is very unnerving. Note that you do not have to boot from floppies to install via FTP; CD-ROM will do just fine.
+
  
Reboot your computer with the boot disk in the floppy drive. After some disk-crunching noises, you should come to a boot prompt, waiting eagerly for your input. Press Enter to continue the boot process after adding any potentially needed kernel parameters.
+
====Carga del idioma del teclado====
 +
Si utilizas un teclado que no se encuentra en inglés norteamericano puedes usar la herramienta km para cargar el idioma correcto. Simplemente escribe km en la consola, usa las flechas para navegar hasta el mapa correcto y/o tipografía de la consola.
  
If you are using a USB keyboard, you will need to load USB support automatically at bootup. You can do this by setting the NEEDUSB parameter to your USB bus type. For example, if you have a UHCI bus, you would type arch NEEDUSB=uhci at the boot prompt. After the root disk loads, you will be prompted to load the USB add-on disk, which will be auto-loaded after a 10-second wait. If you're not sure what kind of USB bus you have, try specifying NEEDUSB=auto, which will load all three (UHCI, OHCI, EHCI) bus modules.
+
====Arranque el instalador====
 +
Ahora puedes escribir /arch/setup para invocar el instalador. Luego de un mensaje informativo se te preguntará por la elección del método de instalación. Si tienes una conexión a Internet rápida puedes preferir la instalación por FTPpara asegurarte de tener las versiones más recientes de los paquetes en lugar de usar los contenidos en el CD. Por favor nota que podrías estar en problemas si tienes un proxy complejo que requiere autentificación usando la instalación por FTP. Si no puedes usar un CD o cualquier otro medio, esta será la única forma de instalar Arch.
  
Partway through the boot-up process, you will be prompted:
+
Cuando navegues por el script de instalación, asegúrate de seleccionar DONE (hecho en español) en el submenú después de realizar cada paso. Esto grabará cualquier configuración que hagas en preparación para el siguiente. Además, evita pasos arbitrarios a través del proceso de instalación que puedan confundir al instalador.
  
<pre>VFS: Insert root floppy disk to be loaded into RAM disk and press ENTER</pre>
+
Actualmente es más bien fácil configurar tu propio mirror de paquetes por FTP o tu propio CD ejecutable de instalación con los paquetes que necesites, haciendo de la tarea de instalar varias instancias de Arch Linux en múltiples máquinas algo simple, mientras que al mismo tiempo liberas un montón de ancho de banda de los mirrors oficiales. Haz tu vida y la nuestra sencilla, ¡y prueba estas alternativas!
  
Insert the root disk in the drive and hit Enter. After some more chunking you will be given a shell. Since you'll be needing your Ethernet module for the install, you should now load the modules from the Ethernet disk. Put the disk in the drive and run:
+
Cuando escoges el CD u otra fuente de instalación sólo serás capaz de instalar paquetes contenidos en dichos medios, los cuales pueden estar obsoletos. Claro que esto tiene el mérito de que no necesitarás una conexión a Internet, por lo tanto es la elección recomendada para usuarios que no le guste o no puedan descargar como mínimo 100 MB en paquetes durante la instalación.
  
<pre># loaddisk /dev/fd0</pre>
+
Después de elegir una de las alternativas se te presentará el menú del instalador, listando los pasos necesarios en el orden en que deberán ser completados.
  
After a while all Ethernet modules will be extracted to the file system. If the directory /lib/modules/ is still empty after this command, and/or you got a couple of errors, your disk has most likely gone bad. Create a new modules disk, and try again. You do not need to reboot in this case; just reissue the loaddisk command. Don't be worried if you have several disks failing this way; it's unfortunately quite common. Don't say nobody told you.
+
Llegado a este punto del proceso podrás moverte a la 5 consola virtuales con ALT-F5 para ver la salida que retornan los comandos cuando la instalación se esté ejecutando. Usa ALT+F1 para regresar a la primera consola, dónde el instalador está corriendo, y cualquier de las teclas de función entre ambas si necesitas abrir otra consola para intervenir manualmente por cualquier razón.
  
You should also load any additional add-on disks that you need, such as SCSI or RAID/LVM. Use the loaddisk command as above for each disk; the order does not matter.
+
====Configuración de la red (sólo para instalar desde FTP)====
  
If you know which Ethernet module you need, you should load it now with the modprobe command. Don't worry too much if you don't; the installer program will probe for the right module automatically.
+
Este paso te permitirá instalar y configurar tu dispositivo de red.
  
===Common Installation Procedure===
+
Se te presentará una lista de todos los dispositivos disponibles. Si ningún dispositivo de red está disponible todavía, o no el que quieres usar, tendrás que cambiarte a otro terminal con ALT+F2, por ejemplo, y cargar los módulos necesarios de forma manual. Alternativamente puedes simplemente hacer como se te indica, presionar ''OK'' y probar el módulo en la siguiente pantalla seleccionando la opción ''Probe''. Si tu tarjeta de red aún no está disponible, asegúrate de que esté correctamente conectada y soportada por el núcleo. Algunas veces es necesario conseguir controladores propietarios en forma binaria, y suministrarle una copia de algún modo al sistema de instalación para cargarlos manualmente.  Usualmente esto es nada para débiles del corazón, y es recomendable usar un modelo distinto de tarjeta.
  
At this point your system should be booted, and the hard drive to which you'd like to install, as well as your installation source, must be accessible. Make sure all necessary modules are loaded, if any.
+
Cuando el módulo correcto ha sido cargado, y tu tarjeta de red es listada, deberás seleccionar el dispositivo de red que quieres configurar y se te dará la opción de configurar la red con DHCP. Si te conectas a un servidor DHCP marca ''YES'' y deja al instalador hacer el resto. Si seleccionas ''NO'', se te dejará ingresar la información de la red manualmente. Entonces tu red debería estar correctamente configurada, y si eres del tipo escéptico, podrás revisar la conexión con alguna herramienta estándar como ''ping'' en otra consola.
  
====Installation Steps====
+
Como el automatismo no es perfecto, puede que no sea posible usar correctamente el instalador para configurar tu red. En ese caso no te molestes y configurala manualmente en una de las consolas. Todo lo que el instalador necesita es una conexión transparente al servidor FTP que luego seleccionarás durante la instalación.
# Loading a non-US Keymap
+
# Running Setup
+
# Configure Network (FTP Install only)
+
# Prepare Hard Drive
+
## Auto-Prepare
+
## Partition Hard Drives
+
## Set Filesystem Mountpoints
+
# Select Packages
+
# Install Packages
+
# Configure System
+
# Install Kernel
+
# Install Bootloader
+
# Exit Install
+
  
Using the available shell tools, experienced users are also able to prepare the hard drive or any devices needed for the installation before starting the installer. You may simply skip this paragraph if you don't see any immediate need for further manual interaction. Note that the Arch Linux installation media also contains a /arch/quickinst script for experienced users. This script installs the base set of packages to a user-specified destination directory. If you are doing an exotic install with fun things like RAID and LVM, or don't want to use the installer at all, you'll probably want to use the quickinst script.
+
Este menú sólo se muestra al seleccionar la instalación por FTP por razones obvias.
All the cool kids do it.
+
  
====Loading a non-US Keymap====
+
====Preparación del disco duro====
If you require a non-US keymap, you can use the km utility to load a new keymap. Just type km at the prompt, then use the arrow keys to navigate to the correct keymap and/or console font.
+
  
====Running Setup====
+
Esta opción te dejará en un submenú ofreciéndote dos alternativas.
  
Now you can run /arch/setup to invoke the installer program. After some info messages you will be prompted for the installation method of your choice. If you have a fast internet connection, you might prefer the FTP installation to ensure you get the latest packages instead of using the potentially outdated CD contents. Note that you will probably run into trouble if you have an interesting proxy setup. If you can't use a CD-ROM, this is the only viable method of installing Arch Linux.
+
La primera es ''Auto-Prepare'', que particionará el dispositivo de forma automática en /boot, swap, y /, y creará el sistema de archivos de todo el árbol. Estas particiones además serán automáticamente montadas en el punto correcto. Siendo exactos, esta opción creará:
 +
* La partición /boot de 32 MB,
 +
* la swap se 256 MB, y
 +
* / y /home en el espacio restante.
  
When navigating the setup script, make sure that you select DONE from the submenus after performing each step. This saves any settings you make in preparation for the next step. Further, avoid backstepping through previous steps in the installation process as this can also confuse the installer.
+
Esos tamaños pueden variar ligeramente debido a diferencias en la geometría del disco. Puedes elegir esta opción si no sabes mucho sobre como particionar discos duros, pero se cuidadoso:
It's actually rather easy to set up your own FTP package mirror or create your own bootable installation CD with the packages you need, making the task of installing several instances of Arch Linux across multiple machines rather simple, whilst at the same time saving a lot of mirror bandwidth. Make your life and ours easier, and look into these alternatives!
+
  
When choosing a CD-ROM install you will only be able to install packages contained on the CD, which may be quite old. Of course it has the merit that you won't need an internet connection, and is therefore the recommended choice for dialup users or anyone else who does not feel like downloading about at least 100 MB of packages.
+
¡ELIMINARÁ TODOS LOS DATOS DEL DISCO ELEGIDO! Lée cuidadosamente la advertencia presentada por el instalador ¡y asegúrate de que el dispositivo que será particionado es el correcto!
  
After choosing one of the two alternatives, you will be presented with the installer menu, listing the necessary steps in the order in which they should be completed.
+
Una forma de verificar tu elección es abrir otro terminal (ALT+F2, Enter) y tipear
  
At any point in the install process, you can switch to your 5th virtual console (ALT-F5) to view the output from the commands that setup is running. Use (ALT-F1) to get back to your first console where the installer is running, and any F-key in between if you need to open another console to intervene manually for any reason.
+
# cfdisk -P s ''nombre-del-dispositivo''
  
====Configure Network (FTP Install only)====
+
que mostrará la tabla actual del dispositivo, lo cual debería ser información suficiente para estar seguros.
Configure Network will allow you to install and configure your network device.
+
  
If no eth0 device is available yet, you will be asked whether you want the installer to probe for a network module. Choose YES here unless that messes up your system horribly (which shouldn't happen), or NO if you want to load the module manually. If the installer fails to find a matching network module, make sure you ran the loaddisk command correctly earlier to make the ethernet modules available. When booting from CD-ROM, this is done automatically for you. If your network card is still not found, make sure your card is properly physically installed and supported by the linux kernel at all.
+
Sí ningún nombre de dispositivo es mostrado (''[nothing] will be COMPLETELY ERASED!...''), y el instalador produce el error ''Device not valid'' después de escoger ''YES'', asegúrate de haber cargado todos los módulos necesarios en caso de ser SCASI, RAID, etc. Aún puedes cargar cualquier módulos cambiando a otra consola y escribiendo los comandos, entonces regresa a la consola de instalación presionando ALT+F1.
  
When the correct module is loaded, you will be given the option to configure your network with DHCP. If you're connected to a DHCP server, hit YES and let the installer do the rest. If you select NO, you will be asked to enter the networking information manually, which you hopefully wrote down as you were told.
+
Si prefieres particionar el disco manualmente, usa las otras dos opciones: ''Partition Hard Drives'' y ''Set Filesystem Mountpoints'' para preparar el dispositivo de acuerdo a tus preferencias como se describe abajo. Entonces regresa al menú principal.
  
This menu entry is only available when choosing FTP Installation, for rather obvious reasons.
+
====Particionando el disco duro====
 +
¡Este paso será omitido si has realizado la partición automática!
  
====Prepare Hard Drive====
+
De lo contrario deberás seleccionar el disco que quieres particionar, y será ejecutado el programa cfdisk con el que podrás modificar la información de las particiones hasta que guardes los cambios [Write] y salgas [Quit].
Prepare Hard Drive will bring you into a submenu offering two alternatives of preparing your target drive for installation.
+
  
=====Auto-Prepare=====
+
Necesitarás al menos una partición raíz para continuar con la instalación, y es útil anotar dónde será montada cada partición ya que se te preguntará en el paso siguiente.
The first choice is Auto-Prepare, which will automatically partition your hard drive into a /boot, swap, and root partition, and then create filesystems on all three. These partitions will also be automatically mounted in the proper place. To be exact, this option will create a
+
* 32 MB ext2 /boot partition
+
* 256 MB swap partition
+
* ext3 root partition with the remaining space
+
  
Actual sizes may vary slightly due to different hard disk geometries. You can choose this option if you don't know much about hard drive partitions, but be warned: AUTO-PREPARE WILL ERASE ALL DATA ON THE CHOSEN HARD DRIVE!
+
====Montaje del sistema de archivos====
  
Read the warning presented by the installer very carefully, and make sure the correct device is about to be partitioned!
+
Este paso también será omitido si escogiste ''Auto-Prepare''. Debes seleccionar esta opción una vez que hayas editado la información de las particiones en el menú anterior, o si ya tenías el disco con las particiones necesarias.
  
A way to verify your choice for a device to partition would be to open another terminal (ALT-F2, Enter) and enter
+
La primera pregunta a responder es qué partición usarás como swap. Selecciona la partición creada para la swap de la lista, o ''NONE'', si no quieres usar una partición para swap. Usar un archivo para swap no está soportado directamente por el instalador; en su lugar escoge ''NONE'' aquí, termina la asociación de puntos de montaje, y activa un archivo para swap en la partición que deseas con el comando ''swapon''.
<pre># cfdisk -P s <name of device></pre>
+
there to display the current partition table of the selected device, which should suffice to identify the hard disk.
+
  
If no device name is shown ([nothing] will be COMPLETELY ERASED! ...), and the installer produces an Device not valid error after hitting YES, make sure you loaded all needed modules if it's a SCSI, RAID, etc. device. You can still load any modules now by changing to another terminal and issuing the commands there, then return to the installer process on terminal one (ALT-F1).
+
Luego de configurar la partición swap, se te preguntará por la partición para la raíz. Esto es obligatorio.
  
If you prefer to do the partitioning manually, use the other two options, Partition Hard Drives and Set Filesystem Mountpoints to prepare the target media according to your specifications as outlined below. Otherwise Return to Main Menu after a successful auto-preparation.
+
El proceso se repetirá hasta que selecciones ''DONE'' en la lista, idealmente cuando todas las asociaciones estén listas. El instalador sugerirá /boot luego de escoger montar asociar / y swap.
  
=====Partition Hard Drives=====
+
Cada vez que especifiques un punto de montaje se te preguntará si quieres crear un sistema de archivos en dicha partición. Si seleccionas ''YES'', se te preguntará por el sistema de archivos a crear (escoge ext3 si no tienes idea), y la partición será formateada con el sistema escogido, destruyendo todos los datos que pudiera contener. Sin embargo no debería ser problema si escoges ''NO' en este punto para mantener los datos existentes en la partición.
Partition Hard Drives should be skipped if you chose Auto-Prepare already.
+
  
Otherwise you should select the disk(s) you want to partition, and you'll be dropped into the cfdisk program where you can freely modify the partitioning information until you [Write] and [Quit].
+
Si quieres conservar los datos de alguna partición, es altamente recomendable que hagas copias de seguridad en lugar de alojarlos en el disco esperando a que nada salga mal durante la instalación. ¡No digas que no fuiste advertido!
  
You will need at least a swap and a root partition to continue the installation.
+
Se te preguntará sobre crear un sistema de archivos en tu partición swap, y si esta usa un sistema propio. Siempre debes responder ''YES''..
  
=====Set Filesystem Mountpoints=====
+
Si quieres montar cualquier otra partición, por ejemplo /boot o /home, aquí podrás hacerlo. Simplemente:
Set Filesystem Mountpoints should also be skipped if you chose to Auto-Prepare your hard drive. You should select this choice once the partition information is edited to your liking with the previous menu selection, or already existent through whatever other means.
+
* selecciona la partición a montar,
 +
* escoge el sistema de archivos (si quieres crear uno en lugar de conservar los datos),
 +
* ingresa un punto de montaje único.
  
The first question to answer is what partition to use as swap. Select the previously created swap partition from the list, and select the partition that is supposed to become your root partition in the next step.
+
Repite estos pasos hasta que estés satisfecho, entonces selecciona ''DONE'' para crear cualquier sistema de archivos y montar las particiones en sus respectivos puntos. Antes de que el formateo sea hecho el instalador te presentará una lista de tus elecciones para que las revises. Luego de formatear y montar las particiones, podrás regresar al menú principal y continuar con el paso siguiente..
  
Every time you specify a partition to mount, you will be asked if you want to create a filesystem on the respective partition. If you select YES, you will be asked what filesystem to create (a matter of taste, really. Choose ext2 if you have no clue), and the partition will be formatted with the chosen filesystem, destroying all data in the process. It should be no problem, however, to say NO at this point to preserve any existing files on the partition.
+
====Selección de paquetes====
  
If you want to preserve existing data on a partition, you are strongly advised to create backups instead of hoping that nothing will go wrong during the install. Don't say I didn't warn you!
+
Esta opción te permitirá escoger los paquetes que deseas instalar desde el CD o por FTP.
  
You will not be asked for a filesystem to use on your swap partition, as this partition uses a specific filesystem of it's own.
+
Si seleccionaste la instalación por CD tienes que decirle al instalador que intente montar el lector por sí mismo o indicarle que ya lo hiciste en el directorio /src. Escoge la opción de acuerdo a lo que necesites. Normalmente querrás escoger el CD, después de lo cual se te dará la posibilidad de elegir un dispositivo desde la lista de todos los que hayan sido detectados.
  
If you want to mount any other partitions, for example a separate /boot or /home partition, you will be able to do so now. Simply
+
Si tu dispositivo no aparece en la lista, asegúrate de haber cargado los módulos necesarios, como SCSI o USB, en otra consola de ser necesario.
* select a partition to mount
+
* choose a filesystem (if you want to create one instead of keeping the data)
+
* choose a mountpoint for the partition
+
  
Repeat these steps until you're satisfied, then select DONE to create any filesystems and mount the partitions in their respective places. After formatting and mounting all partitions, you will be dropped into the Main Menu, ready to proceed.
+
Si escogiste la instalación por FTP, se te preguntará por el mirror más cercano de una lista, o usar la opción ''Custom'' para ingresar el nombre de dominio (o IP) de algún otro FTP que contenga los paquetes, como puede ser un servidor en tu LAN, o cualquier mirror que no sea listado por cualquier motivo, y más tarde la ruta completa al directorio del servidor que contiene los paquetes y especialmente el archivo ''current.db.tar.gz''. El instalador revisará que sea el correcto y te permitirá realizar correcciones hasta que ingreses una dirección y ruta que permita descargar la lista de paquetes.
  
Do not mount /tmp on a separate partition just yet, as it will badly confuse the installer! Simply leave the designated /tmp partition alone until the installation is done, and configure the partition manually after you have a running system if you must have a separate partition for /tmp.
+
Sea cual sea la fuente que elijas, después de conseguir la lista de paquetes se te presentará una pantalla de selección de paquetes.
  
====Select Packages====
+
Si se presenta un error mientras se obtiene la lista de paquetes deberás escoger otro mirror, asegurarte de que la red está trabajando y que no haya errores en la dirección de tu servidor personalizado. También podrías haberte equivocado al montar tu lector de CD en /src si escogiste esta opción. Lee el mensaje cuidadosamente, en la mayoría de los casos todo lo que necesitas es modificar un poco la disposición de tus dispositivos o el servidor.
Select Packages will let you select the packages you wish to install from the CD or your FTP mirror.
+
  
If you chose CD-ROM installation, you have to tell the installer whether it should try to mount the CD itself, or whether you already mounted the source media in /src. Select the option according to what you need; Normally you will want to choose CD, after which you will be given the possibility to choose a CDROM drive from the list of all detected devices.
+
  Now, once that is tackled, you have the opportunity to specify whole
 +
  package groups from which you'd generally like to install packages,
 +
  then fine-tune your coarse selection by (de)selecting individual
 +
  packages from the groups you have chosen.
  
If your CD-ROM drive is not displayed in the list, make sure you loaded any modules that may be needed, like SCSI or USB storage support.
+
  Any packages in the BASE category should stay selected under all
 +
  circumstances, and you should select any other group which contains a
 +
  package you might need. Please note that the upcoming individual
 +
  package selection screen will only offer packages which are in the
 +
  categories you select here, so if you only select BASE, you won't be
 +
  able to add any other packages than those in the BASE category.
  
If you chose FTP Installation, you will be asked to choose a mirror close to you from a list, or select CUSTOM to enter your own fully qualified FTP path to an installation source, ie. a prepared server in your LAN, or a mirror that's not listed for whatever reason.
+
  If you want to only select the bare minimum for installation, but be
 +
  able to browse through all available packages nevertheless to see if
 +
  anything interesting is there to add, you should select all package
 +
  categories, but choose to NOT select all packages by default.
  
Whatever source you chose, after fetching the package list you'll be dropped into the package category selection screen.
+
  The "Select all packages by default?" question can be easily
 +
  misunderstood; Basically you are asked whether you want all the
 +
  packages in the categories you just chose to be selected or not.
 +
  If you select YES, the whole list of packages contained in the chosen
 +
  categories will be displayed and selected, and your job will be to
 +
  deselect what you do not want.
 +
  If you select NO, the same list of packages will displayed, but only
 +
  packages of the BASE category will be selected, and you'll have to
 +
  explicitly select any other packages you want to install.
  
If you are presented an error while fetching the package database, you should either choose another FTP mirror, make sure your network is working at all, and you didn't slip any typos into your custom server address. You might also have goofed mounting of your source media in the /src directory, if you chose that option.
+
  Choosing NO helps to install a lean system!
  
Now, once that is tackled, you have the opportunity to specify whole package groups from which you'd generally like to install packages, then fine-tune your coarse selection by (de)selecting individual packages.
+
  It is recommended that you install all the BASE packages, but not
 +
  anything else at this point. Don't worry about getting all the
 +
  packages you want - you can easily install more of them once the basic
 +
  system boots by itself. The only exception to this rule is installing
 +
  any packages you need for setting up internet connectivity. These
 +
  packages usually are:
  
Any packages in the BASE category should stay selected under all circumstances, and you should select any other group which contains a package you might need. Please note that the upcoming individual package selection screen will only offer packages which are in the categories you select here, so if you only select BASE, you won't be able to add any other packages than those in the BASE category.
+
  dhcpcd (base)
 +
          Add if your machine is a DHCP client.
  
If you want to only select the bare minimum for installation, but be able to browse through all available packages nevertheless to see if anything interesting is there to add, you should select all package categories, but choose to NOT select all packages by default.
+
  isdn4k-utils (network)
 +
          Add if you use ISDN for dialup.
  
The Select all packages by default? question can be easily misunderstood; Basically you are asked whether you want all the packages in the categories you just chose to be selected or not.
+
  ppp (base)
 +
          Add if you use an analog modem for dialup.
  
If you select YES, the whole list of packages contained in the chosen categories will be displayed and selected, and your job will be to deselect what you do not want.
+
  wvdial (network)
 +
          Add if you'd like to have an easy frontend to analog modem
 +
          dialup setup.
  
If you select NO, the same list of packages will displayed, but only packages of the BASE category will be selected, and you'll have to explicitly select any other packages you want to install.
+
  rp-pppoe (base)
 +
          Add if you use DSL for pseudo-dialup.
  
Choosing NO helps to install a lean system!
+
  The downloadable base ISO does not contain any packages but those in
 +
  the BASE category, so be advised to get the full ISO if you need the
 +
  ISDN packages or certain helper applications!
  
It is recommended that you install all the BASE packages, but not anything else at this point. Don't worry about getting all the packages you want - you can easily install more of them once the basic system boots by itself. The only exception to this rule is installing any packages you need for setting up internet connectivity. These packages usually are:
+
  Once you're done selecting the packages you need, leave the selection
 +
  screen and continue to the next step, Install Packages.
  
;dhcpcd (base) : Add if your machine is a DHCP client.
+
====Install Packages====
;isdn4k-utils (network) : Add if you use ISDN for dialup.
+
;ppp (base) : Add if you use an analog modem for dialup.
+
;rp-pppoe (base) : Add if you use DSL for pseudo-dialup.
+
  
The downloadable base ISO does not contain any packages but those in the BASE category, so be advised to get the full sized ISO if you need ISDN packages!
+
  Install Packages will now install pacman and any other packages you
 +
  selected with resolved dependencies onto your harddisk. Don't be
 +
  surprised if more packages are installed than you selected! Those
 +
  packages are dependencies for your selection, and the installer will
 +
  not explicitly ask for permission to install these extra packages, as
 +
  it assumes you know what you're doing.
  
Once you're done selecting the packages you need, leave the selection screen and continue to the next step, Install Packages.
+
  After the package selection, the installer will not check for free
 +
  space on the target! This seemingly trivial task would eat up
 +
  considerable time, and therefore the installer simply assumes to have
 +
  enough free space on the target partition(s). In case it doesn't, the
 +
  installation will fail in various funny ways. A df -h in another
 +
  terminal might show that one or more of the targets mounted below /mnt
 +
  have been filled up, causing mischief. Consider repartitioning or
 +
  selecting a smaller set of packages.
  
====Install Packages====
+
  Error messages and debugging output is echoed as usual to terminal
Install Packages will now install pacman and any other packages you selected with resolved dependencies onto your harddisk.
+
  five (ALT-F5). During normal, successful operation, you shouldn't find
 +
  much to read there, though. After the packages have been installed,
 +
  proceed to the next step, Configure System.
  
If you skipped preparation of your hard drive, you will be asked where your root partition has been mounted. This should only happen to people who partitioned and created filesystems on the target devices manually. Those people will have to enter the root directory where the packages shall be installed. By default, the installer mounts the root partition in /mnt, and any extra partitions below.
+
====Configure System====
  
Error messages and debugging output is output to terminal five (ALT-F5). After the packages are installed, proceed to the next step, Configure System.
+
  Configure System allows you to edit the configuration files crucial
 +
  for your newly installed system. Initially you will be asked whether
 +
  to allow the hwdetect script to try and detect your hardware, and
 +
  produce some (even more) sensible defaults for your configuration
 +
  files. Unless you're having problems/crashes, you should let it have
 +
  it's way, and work from what it generates.
  
====Configure System====
+
  Answer the following questions about RAID, LVM and encrypted volumes
Configure System allows you to edit the configuration files crucial for your newly installed system.
+
  with Yes, if your root partition resides on a RAID, LVM or encrypted
 +
  volume, respectively, to automatically add the necessary HOOKS to the
 +
  mkinitcpio.conf. Otherwise you will get a kernel panic during boot, as
 +
  your root partition will not be accessible at the time of boot. Most
 +
  people will answer these questions with No, though, and not waste a
 +
  second thought about it.
  
If you're in a real hurry, you may skip this step entirely and hope the defaults will work, but it's strongly recommended to iterate through the list of config file presented here and change options accordingly. Please refer to [[#System Configuration|System Configuration]] for detailed instructions.
+
  After this automatic preconfiguration you'll be asked for your
 +
  favourite editor to use for manually fine-tuning the generated
 +
  configuration files, either VIM or nano. When in doubt, choose nano.
 +
 
 +
  If you're in a real hurry, you may skip the following step of
 +
  reviewing the configuration entirely and hope the defaults will work
 +
  for you, but it's strongly recommended to iterate through the list of
 +
  configuration files presented here and review the settings carefully.
 +
  Please refer to the System Configuration section for detailed
 +
  descriptions of the various files.
  
 
====Install Kernel====
 
====Install Kernel====
Install Kernel will ask you which kernel image to install on your hard drive.
 
  
Recommended: Install the stock 2.6.x kernel with SCSI/SATA/IDE support. The exact support each 2.6.x kernel has will depend on how you have configured your initial ramdisk, but the default has support for all known SCSI, SATA, and IDE systems. See the System Configuration section for more information about the initrd.  
+
  Install Kernel will ask you which kernel image to install on your hard
 +
  drive.
  
Please note that Arch Linux uses the 2.6 kernel by default. We are phasing out support for the 2.4 series, so you should only use it if 2.6 just isn't working out for you.
+
  2.6
 +
          Install the stock 2.6 kernel with SCSI/SATA/IDE support. What
 +
          exactly will be supported by the kernel during boot depends on
 +
          how you configured your initial ramdisk, but the default has
 +
          support for practically all SCSI, SATA, and IDE systems. See
 +
          the System Configuration section for more information about the
 +
          new initramfs, especially the potential pitfalls with the new
 +
          PATA and ide legacy drivers.
 +
 
 +
  Please note that this release of Arch Linux only offers one kernel to
 +
  install, as flexibility has now been put into the initramfs created by
 +
  the mkinitcpio tool.
 +
 
 +
  The CD-ROM includes the 2.6.21.1 kernel. If you are using the FTP
 +
  Installation method, the kernel about to be installed will be the
 +
  current version waiting on your FTP source, and might therefore
 +
  introduce changes and/or incompatibilities unknown at the present
 +
  time. This is unlikely, but keep this in mind.
  
 
====Install Bootloader====
 
====Install Bootloader====
Install Bootloader will install a bootloader on your hard drive, either GRUB (recommended) or LILO, depending on your personal preference.
 
  
Before installing the bootloader, the setup script will want you to examine the appropriate configuration file to confirm the proper settings. Make sure you know what your root (and /boot, if you have it) partitions are.
+
  Install Bootloader will install a bootloader on your hard drive,
 +
  either GRUB (recommended) or LILO, depending on your personal
 +
  preference.
 +
 
 +
  Before installing the bootloader, the setup script will want you to
 +
  examine the appropriate configuration file to confirm the proper
 +
  settings. Make sure you know what your root (and /boot, if you have
 +
  it) partitions are.
  
If you choose to install LILO, the bootloader will be automatically installed according to your settings in the configuration file, whilst GRUB demands the selection of a partition to install the bootloader to. Here you should choose what you would enter as the boot option of LILO, which is usually the entry named /dev/hda, as it refers the master boot record of the first hard disk. Detailed error messages can be found as usual on VC5 (virtual console 5), if anything goes wrong.
+
  If you choose to install LILO, the bootloader will be automatically
 +
  installed according to your settings in the configuration file, whilst
 +
  GRUB demands the selection of a partition to install the bootloader
 +
  to. Here you should choose what you would enter as the boot option of
 +
  LILO, which is usually the entry named /dev/hda, as it refers the
 +
  master boot record of the first hard disk. Detailed error messages can
 +
  be found as usual on VC5 (virtual console 5), if anything goes wrong.
  
If you plan on setting up a multiboot system, it might be a better option to install the bootloader in your root or /boot partition, and refer to that boot sector from whatever other boot loader you want to reside in the master boot record.
+
  If you plan on setting up a multiboot system, it might be a better
 +
  option to install the bootloader in your root or /boot partition, and
 +
  refer to that boot sector from whatever other boot loader you want to
 +
  reside in the master boot record.
  
Installing a boot loader in the MBR will relentlessly overwrite any existing bootloader! Make sure you understand the implications of that if you're running a multiboot system, or want to preserve an installed bootloader from another OS!
+
  Installing a boot loader in the MBR will relentlessly overwrite any
 +
  existing bootloader! Make sure you understand the implications of that
 +
  if you're running a multiboot system, or want to preserve an installed
 +
  bootloader from another OS!
  
 
====Exit Install====
 
====Exit Install====
  
Exit Install now, remove the CD from the drive, type reboot at the command line and cross your fingers!
+
  Exit Install now, remove the CD from the drive, type reboot at the
 +
  command line and cross your fingers!
  
If your system boots up, you can log in as root without any password, so your first things to do are setting a password for root with the passwd command once you're logged in, add a user as outlined in the User Management section, and set up your Internet Connection.
+
  If your system boots up, you can log in as root without any password,
 +
  so your first things to do are setting a password for root with the
 +
  passwd command once you're logged in, add a user as outlined in the
 +
  User Management section, and set up your Internet Connection.
  
Congratulations! Now you can proceed getting into the nitty-gritty of configuring the interesting parts of your system.
+
  Congratulations! Now you can proceed getting into the nitty-gritty of
 +
  configuring the interesting parts of your system, and adapt it to your
 +
  needs!
  
 
==System Configuration==
 
==System Configuration==
These are the core configuration files for Arch Linux. You should be comfortable hand-editing these files with a text-editor, because there aren't any GUI apps to help you out. Only the most basic configuration files are listed here. If you need help configuring a specific service, please read the appropriate manpage or refer to any online documentation.
 
  
Arch Linux does not use any abstraction layer to administrate your system. As a result, you can usually stick to any instructions published by the author of a software, or whatever you find in a search engine of your choice, and it'll work out without confusing your system, because your system just does not care.
+
  These are the core configuration files for Arch Linux. You should be
 +
  comfortable hand-editing these files with a text-editor, because there
 +
  aren't any GUI apps to help you out. Only the most basic configuration
 +
  files are listed here. If you need help configuring a specific
 +
  service, please read the appropriate manpage or refer to any online
 +
  documentation you need. In many cases, the Archlinux Wiki and forums
 +
  are a rich source for help as well.
  
====Configuration Files====
+
  Arch Linux does not use any abstraction layers to administrate your
Before attempting to boot your newly installed system, you should at least glance over these files and make sure they are not too far off.
+
  system. As a result, you can usually stick to any instructions
# /etc/rc.conf
+
  published by the author of a software, or whatever you find in a
# /boot/grub/menu.lst
+
  search engine of your choice, and it'll work out without confusing
# /etc/lilo.conf
+
  your system, because your system just does not care.
# /etc/mkinitrd.conf
+
# /etc/hosts
+
# /etc/fstab
+
# /etc/modprobe.conf
+
# /etc/modules.conf
+
# /etc/resolv.conf
+
# /etc/conf.d/*
+
# /etc/profile
+
  
=====/etc/rc.conf=====
+
===Configuration Files===
This is the main configuration file for Arch Linux. It allows you to set your keyboard, timezone, hostname, network, daemons to run and modules to load at bootup, profiles, and more. You should read through all the settings in this file and make sure you understand them:
+
  
;LOCALE : This sets your system language, which will be used by all i18n-friendly applications and utilities. You can get a list of the available locales by running '''locale -a''' from the commandline. This setting is not needed for US English users.
+
  Before attempting to boot your newly installed system, you should at
;HARDWARECLOCK : Either '''UTC''' if your BIOS clock is set to UTC or GMT, or '''localtime''' if your BIOS clock is set to your local time. If you have an OS installed which cannot handle UTC BIOS times correctly, like Windows, choose localtime here, otherwise prefer UTC, which makes daylight savings time a non-issue and has a few other positive aspects.
+
  least glance over these files and make sure they are not too far off
;TIMEZONE : Specifies your time zone. Possible time zones are the relative path to a zoneinfo file starting from the directory /usr/share/zoneinfo. For example, a german timezone would be '''Europe/Berlin''', which refers to the file /usr/share/zoneinfo/Europe/Berlin. If you don't know the exact name of your timezone file, worry about it later. Command '''tzselect''' can find correct timezone for you.
+
  the mark.
;KEYMAP : Defines the keymap to load with the loadkeys program on bootup. Possible keymaps are found in /usr/share/kbd/keymaps. Please note that this setting is only valid for your TTYs, not any graphical window managers or X.
+
;CONSOLEFONT : Defines the console font to load with the setfont program on bootup. Possible fonts are found in /usr/share/kbd/consolefonts.
+
;USECOLOR : Enable ('''yes''') or disable ('''no''') colorized status messages during boot-up.
+
;MOD_AUTOLOAD : If set to "YES", Arch will scan your hardware at bootup and attempt to automatically load the proper modules for your system. This is done with the hwdetect utility.
+
;MOD_BLACKLIST : This is an array of modules that you do not want to be loaded at bootup. For example, if you don't want that annoying PC speaker, you could blacklist the pcspkr module.
+
;MODULES : In this array you can list the names of modules you want to load during bootup without the need to bind them to a hardware device as in the modprobe.conf (or modules.conf, if you're using kernel 2.4.x). Simply add the name of the module here, and put any options into the modprobe.conf if need be. Prepending a module with a bang ('!') will not load the module during bootup (this is not the same as MOD_BLACKLIST).
+
;USELVM : Set to "YES" to run a vgchange during sysinit, thus activating any LVM groups. If you have no idea what this means, don't bother.
+
;HOSTNAME : Set this to the hostname of the machine, without the domain part. This is totally your choice, as long as you stick to letters, digits and a few common special characters like the dash. Don't be too creative here, though.
+
;INTERFACES : Here you define the settings for your networking interfaces. The default lines and the included comments explain the setup well enough. If you do not use DHCP to configure a device, just keep in mind that the value of the variable (whose name must be equal to the name of the device which is supposed to be configured) equals the line which would be appended to the ifconfig command if you were to configure the device manually in the shell.
+
;ROUTES : You can define your own static network routes with arbitrary names here. Look at the example for a default gateway to get the idea. Basically the quoted part is passed exactly as you pass it to the route add command, therefore reading man route is recommended if you don't know what to write here.
+
;NET_PROFILES : Enable certain network profiles at bootup. Network profiles provide a convenient way of managing multiple network configurations, and are intended to replace the standard INTERFACES/ROUTES setup that is still recommended for systems with only one network configuration. If your computer will be participating in various networks at various times (eg, a laptop) then you should take look in the /etc/network-profiles directory to set up some profiles. There is a template file included there that can be used to create new profiles.
+
;DAEMONS : This array simply lists the names of those scripts contained in /etc/rc.d/ which are supposed to be started during the boot process. If a script name is prefixed with a bang (!), it is not executed. If a script is prefixed with an "at" symbol (@), then it will be executed in the background (ie, the startup sequence will not wait for successful completion before continuing). Usually you do not need to change the defaults to get a running system, but will edit this array quite often once you install system services like sshd.
+
  
=====/boot/grub/menu.lst=====
+
  List of Configuration Files
GRUB is the default bootloader for Arch Linux, and is highly recommended. You should check and modify this file to accommodate your boot setup if you want to use GRUB, otherwise read on about the LILO configuration.
+
  
Configuring GRUB is quite easy, the biggest hurdle is that it uses yet another device naming scheme different from /dev; Your hard disks as a whole are referred to as (hd0), (hd1), etc., sequentially numbered in order of appearance on the IDE/SCSI bus, just like the hda, hdb, etc. names in Linux. The partitions of a disk are referred to with (hd0,0), (hd0,1) and so on, with 0 meaning the first partition. A few conversion examples are included in the default menu.lst to aid your understanding.
+
    1. Setup-relevant configuration files:
+
    2. /etc/rc.conf
Note that the hdx naming scheme is in direct reference to your BIOS drive layout, whereas the sdx naming scheme is in direct reference to the udev device layout. The 2 are not always in sync, (for instance, hd0,0 will not always be sda1) especially if you have a mixture of both many IDE and SATA harddrives on your machine.
+
    3. /etc/hosts
 +
    4. /etc/fstab
 +
    5. /etc/mkinitcpio.conf
 +
    6. /etc/modprobe.conf
 +
    7. /etc/resolv.conf
 +
    8. /etc/locale.gen
 +
    9. /boot/grub/menu.lst
 +
  10. /etc/lilo.conf
 +
  11. Additional configuration files:
 +
  12. /etc/conf.d/*
 +
  13. /etc/profile
  
Once you have grasped the concept of device naming, all you need to do is to choose a nice title for your boot section(s), supply the correct partition device as a parameter to the root option to have it mounted as / on bootup, and create a kernel line that includes the partition and path where the kernel is located as well as any boot parameters. If using the stock Arch 2.6.x kernel, you'll also need an initrd line that points to the initrd26.img file in your /boot directory. The path you put on your initrd line should be the same as the path to vmlinuz26 that you provide on the kernel line. You should be fine with the defaults, just check whether the partition information is correct in the root and kernel lines.
+
    /etc/rc.conf
  
To create a boot option that loads the bootsector of a different OS, this example might be helpful. You will probably succeed in starting any Microsoft-based operating system with it, just add this block to the file after any other sections, and modify the partition device accordingly to refer to the partition containing the bootsector of the OS you are intending to boot.
+
  This is the main configuration file for Arch Linux. It allows you to
 +
  set your keyboard, timezone, hostname, network, daemons to run and
 +
  modules to load at bootup, profiles, and more. You should read through
 +
  all the settings in this file and make sure you understand them, and
 +
  change them where appropriate:
  
<pre># (1) Other OS
+
  LOCALE
 +
          This sets your system language, which will be used by all
 +
          i18n-friendly applications and utilities. See locale.gen below
 +
          for available options. This setting's default is fine for US
 +
          English users.
 +
 
 +
  HARDWARECLOCK
 +
          Either UTC if your BIOS clock is set to UTC, or localtime if
 +
          your BIOS clock is set to your local time. If you have an OS
 +
          installed which cannot handle UTC BIOS times correctly, like
 +
          Windows, choose localtime here, otherwise you should prefer
 +
          UTC, which makes daylight savings time a non-issue and has a
 +
          few other positive aspects.
 +
 
 +
  TIMEZONE
 +
          Specifies your time zone. Possible time zones are the relative
 +
          path to a zoneinfo file starting from the directory
 +
          /usr/share/zoneinfo. For example, a german timezone would be
 +
          Europe/Berlin, which refers to the file
 +
          /usr/share/zoneinfo/Europe/Berlin. If you don't know the exact
 +
          name of your timezone file, worry about it later.
 +
 
 +
  KEYMAP
 +
          Defines the keymap to load with the loadkeys program on bootup.
 +
          Possible keymaps are found in /usr/share/kbd/keymaps. Please
 +
          note that this setting is only valid for your TTYs, not any
 +
          graphical window managers or X! Again, the default is fine for
 +
          US users.
 +
 
 +
  CONSOLEFONT
 +
          Defines the console font to load with the setfont program on
 +
          bootup. Possible fonts are found in
 +
          /usr/share/kbd/consolefonts.
 +
 
 +
  CONSOLEMAP
 +
          Defines the console map to load with the setfont program on
 +
          bootup. Possible maps are found in /usr/share/kbd/consoletrans.
 +
          You will want to set this to a map suitable for your locale
 +
          (8859-1 for Latin1, for example) if you're using an utf8 locale
 +
          above, and use programs that generate 8-bit output. If you're
 +
          using X11 for everyday's work, don't bother, as it only affects
 +
          the output of linux console applications.
 +
 
 +
  USECOLOR
 +
          Enable (or disable) colorized status messages during boot-up.
 +
 
 +
  MOD_AUTOLOAD
 +
          If set to "yes", Arch will scan your hardware at bootup and
 +
          attempt to automatically load the proper modules for your
 +
          system. This is done with the hwdetect utility.
 +
 
 +
  MOD_BLACKLIST
 +
          This is an array of modules that you do not want to be loaded
 +
          at bootup. For example, if you don't want that annoying PC
 +
          speaker, you could blacklist the pcspkr module.
 +
 
 +
  MODULES
 +
          In this array you can list the names of modules you want to
 +
          load during bootup without the need to bind them to a hardware
 +
          device as in the modprobe.conf. Simply add the name of the
 +
          module here, and put any options into the modprobe.conf if need
 +
          be. Prepending a module with a bang ('!') will not load the
 +
          module during bootup (this is not the same as MOD_BLACKLIST!),
 +
          thus allowing to "comment out" certain modules if necessary. A
 +
          benefit of specifying networking modules here is that ethernet
 +
          cards covered by the listed modules will always be detected in
 +
          the order the modules are listed. This prevents the dreaded
 +
          interface confusion where your ethernet hardware is assigned to
 +
          seemingly random interfaces after each boot. An even better way
 +
          to handle this is using static interface labels by configuring
 +
          udev appropriately, though.
 +
 
 +
  USELVM
 +
          Set to "YES" to run a vgchange during sysinit, thus activating
 +
          any LVM groups. If you have no idea what this means, don't
 +
          bother.
 +
 
 +
  HOSTNAME
 +
          Set this to the hostname of the machine, without the domain
 +
          part. This is totally your choice, as long as you stick to
 +
          letters, digits and a few common special characters like the
 +
          dash. Don't be too creative here, though, and when in doubt,
 +
          use the default.
 +
 
 +
  INTERFACES
 +
          Here you define the settings for your networking interfaces.
 +
          The default lines and the included comments explain the setup
 +
          well enough. If you do not use DHCP to configure a device, just
 +
          keep in mind that the value of the variable (whose name must be
 +
          equal to the name of the device which is supposed to be
 +
          configured) equals the line which would be appended to the
 +
          ifconfig command if you were to configure the device manually
 +
          in the shell.
 +
 
 +
  ROUTES
 +
          You can define your own static network routes with arbitrary
 +
          names here. Look at the example for a default gateway to get
 +
          the idea. Basically the quoted part is identical to what you'd
 +
          pass to a manual route add command, therefore reading man route
 +
          is recommended if you don't know what to write here, or simply
 +
          leave this alone.
 +
 
 +
  NET_PROFILES
 +
          Enables certain network profiles at bootup. Network profiles
 +
          provide a convenient way of managing multiple network
 +
          configurations, and are intended to replace the standard
 +
          INTERFACES/ROUTES setup that is still recommended for systems
 +
          with only one network configuration. If your computer will be
 +
          participating in various networks at various times (eg, a
 +
          laptop) then you should take a look at the
 +
          /etc/network-profiles/ directory to set up some profiles. There
 +
          is a template file included there that can be used to create
 +
          new profiles.
 +
 
 +
  DAEMONS
 +
          This array simply lists the names of those scripts contained in
 +
          /etc/rc.d/ which are supposed to be started during the boot
 +
          process. If a script name is prefixed with a bang (!), it is
 +
          not executed. If a script is prefixed with an "at" symbol (@),
 +
          then it will be executed in the background, ie. the startup
 +
          sequence will not wait for successful completion before
 +
          continuing. Usually you do not need to change the defaults to
 +
          get a running system, but you are going to edit this array
 +
          whenever you install system services like sshd, and want to
 +
          start these automatically during bootup. This is basically
 +
          Arch's way of handling what others handle with various symlinks
 +
          to an init.d directory.
 +
 
 +
    /etc/hosts
 +
 
 +
  This is where you stick hostname/ip associations of computers on your
 +
  network. If a hostname isn't known to your DNS, you can add it here to
 +
  allow proper resolving, or override DNS replies. You usually don't
 +
  need to change anything here, but you might want to add the hostname
 +
  and hostname + domain of the local machine to this file, resolving to
 +
  the IP of your network interface. Some services, postfix for example,
 +
  will bomb otherwise. If you don't know what you're doing, leave this
 +
  file alone until you read man hosts.
 +
 
 +
    /etc/fstab
 +
 
 +
  Your filesystem settings and mountpoints are configured here. The
 +
  installer should have created the necessary entries for you, but you
 +
  should look over it and make sure it's right, especially when using an
 +
  encrypted root device, LVM or RAID.
 +
 
 +
  With the current kernel, an important change has been introduced
 +
  pertaining to the ATA/IDE subsystem. The new pata (Parallel ATA)
 +
  drivers replace the legacy IDE subsystem, and one important change is
 +
  that the naming scheme for IDE disks has changed from the old hda,
 +
  hdb, etc. to also use device names of the type sda, sdb, etc, just
 +
  like SCSI and SATA devices do. Because of this, when using the new
 +
  pata driver in the HOOKS of the /etc/mkinitcpio.conf, remember to use
 +
  the appropriate device names in your /etc/fstab and bootloader
 +
  configuration! Alternatively, you could use the /dev/disk/by-uuid/...
 +
  or /dev/disk/by-label/... representations of your disk drives where
 +
  available to make absolutely sure you're referring to the right
 +
  partitions, and save yourself the trouble of sorting out whether
 +
  you're supposed to use sda or hda. If that's not an option, here's the
 +
  rundown; If you're using pata instead of ide in the HOOKS array of the
 +
  /etc/mkinitcpio.conf, you'll be using the sd? names. If not, use the
 +
  old style hd? names. It is therefore crucial to check the HOOKS array
 +
  in the /etc/mkinitcpio.conf, to be able to adapt the other files
 +
  accordingly.
 +
 
 +
    /etc/mkinitcpio.conf
 +
 
 +
  This file allows you to fine-tune the initial ramdisk (also commonly
 +
  referred to as the "initrd") for your system. The initrd is a gzipped
 +
  image that is read by the kernel during bootup. The purpose of the
 +
  initrd is to bootstrap the system to the point where it can access the
 +
  root filesystem. This means it has to load any modules that are
 +
  required to "see" things like IDE, SCSI, or SATA drives (or USB/FW, if
 +
  you are booting off a USB/FW drive). Once the initrd loads the proper
 +
  modules, either manually or through udev, it passes control to the
 +
  Arch system and your bootup continues. For this reason, the initrd
 +
  only needs to contain the modules necessary to access the root
 +
  filesystem. It does not need to contain every module you would ever
 +
  want to use. The majority of your everyday modules will be loaded
 +
  later on by udev, during the init process.
 +
 
 +
  By default, mkinitcpio.conf is configured to provide all known modules
 +
  for IDE, SCSI, or SATA systems through so-called HOOKS. This means the
 +
  default initrd should work for almost everybody. The downside to this
 +
  is that there are many modules loaded that you will not need. This is
 +
  easily visible by examining your module table after booting up (with
 +
  the lsmod command). While this doesn't actually hurt anything, some
 +
  people find it annoying. To cull this list down to only what you
 +
  actually need, you can edit mkinitcpio.conf and remove the subsystem
 +
  HOOKS (ie, IDE, SCSI, RAID, USB, etc) that you don't need.
 +
 
 +
  You can customize even further by specifying the exact modules you
 +
  need in the MODULES array and remove even more of the hooks, but take
 +
  heed to the comments in the file, as this is a touchy place to go
 +
  crazy with removing entries!
 +
 
 +
  If you're using RAID or encryption on your root filesystem, then
 +
  you'll have to tweak the RAID/CRYPT settings near the bottom. See the
 +
  wiki pages for RAID/LVM, filesystem encryption, and mkinitcpio for
 +
  more info.
 +
 
 +
  When you're finished tweaking mkinitcpio.conf, you must run mkinitcpio
 +
  -p kernel26 as root to regenerate the images, unless you're still
 +
  installing the system; In that case this step will be done
 +
  automatically after choosing Install Kernel later in the process.
 +
 
 +
  WARNING: If you fail to set up your mkinitcpio.conf correctly, your
 +
  system will not boot! For this reason, you should be especially
 +
  careful when tweaking this file.
 +
 
 +
  If you do manage to render your system unbootable, you can try using
 +
  the fallback image that is installed alongside the stock kernel. A
 +
  boot option for this is included in the default GRUB and LILO
 +
  configuration.
 +
 
 +
  Read the warning about the pata transition problems elaborated in the
 +
  fstab section carefully!
 +
 
 +
    /etc/modprobe.conf
 +
 
 +
  This tells the kernel which modules it needs to load for system
 +
  devices, and what options to set. For example, to have the kernel load
 +
  your Realtek 8139 ethernet module when it starts the network (ie.
 +
  tries to setup eth0), use this line:
 +
alias eth0 8139too
 +
 
 +
  The syntax of this file is nearly identical to the old modules.conf
 +
  scheme, unless you use some of the more exotic options like
 +
  post-install. Then you should invest a little time into reading man
 +
  modprobe.conf.
 +
 
 +
  Most people will not need to edit this file.
 +
 
 +
    /etc/resolv.conf
 +
 
 +
  Use this file to manually setup your nameserver(s) that you want to
 +
  use. It should basically look like this:
 +
search domain.tld
 +
nameserver 192.168.0.1
 +
nameserver 192.168.0.2
 +
 
 +
  Replace domain.tld and the ip addresses with your settings. The
 +
  so-called search domain specifies the default domain that is appended
 +
  to unqualified hostnames automatically. By setting this, a ping myhost
 +
  will effectively become a ping myhost.domain.tld with the above
 +
  values. These settings usually aren't mighty important, though, and
 +
  most people should leave them alone for now. If you use DHCP, this
 +
  file will be replaced with the correct values automatically when
 +
  networking is started, meaning you can and should happily ignore this
 +
  file.
 +
 
 +
    /etc/locale.gen
 +
 
 +
  This file contains a list of all supported locales and charsets
 +
  available to you. When choosing a LOCALE in your /etc/rc.conf or when
 +
  starting a program, it is required to uncomment the respective locale
 +
  in this file, to make a "compiled" version available to the system,
 +
  and run the locale-gen command as root to generate all uncommented
 +
  locales and put them in their place afterwards. You should uncomment
 +
  all locales you intend to use.
 +
 
 +
  During the installation process, you do not need to run locale-gen
 +
  manually, this will be taken care of automatically after saving your
 +
  changes to this file.
 +
 
 +
  By default, all locales are commented out, including the default
 +
  en_US.utf8 locale referred to in the /etc/rc.conf file. To make your
 +
  system work smoothly, you must edit this file and uncomment at least
 +
  the one locale you're using in your rc.conf.
 +
    _________________________________________________________________
 +
 
 +
    /boot/grub/menu.lst
 +
 
 +
  GRUB is the default bootloader for Arch Linux. You should check and
 +
  modify this file to accomodate your boot setup if you want to use
 +
  GRUB, otherwise read on about the LILO configuration.
 +
 
 +
  Make sure you read the warning regarding the pata transition
 +
  elaborated on in the fstab section!
 +
 
 +
  Configuring GRUB is quite easy, the biggest hurdle is that it uses yet
 +
  another device naming scheme different from /dev; Your hard disks as a
 +
  whole are referred to as (hd0), (hd1), etc., sequentially numbered in
 +
  order of appearance on the IDE/SCSI bus, just like the hda, hdb, etc.
 +
  names in Linux. The partitions of a disk are referred to with (hd0,0),
 +
  (hd0,1) and so on, with 0 meaning the first partition. A few
 +
  conversion examples are included in the default menu.lst to aid your
 +
  understanding.
 +
 
 +
  Once you grasped the concept of device naming, all you need to do is
 +
  to choose a nice title for your boot section(s), supply the correct
 +
  root partition device as a parameter to the root option to have it
 +
  mounted as / on bootup, and create a kernel line that includes the
 +
  partition and path where the kernel is located as well as any boot
 +
  parameters. If using the stock Arch 2.6.x kernel, you'll also need an
 +
  initrd line that points to the kernel26.img file in your /boot
 +
  directory. The path you put on your initrd line should be the same as
 +
  the path to vmlinuz26 that you provide on the kernel line. You should
 +
  be fine with the defaults, just check whether the partition
 +
  information is correct in the root and kernel lines, especially in
 +
  regard to the pata issue!
 +
 
 +
  To create a boot option that loads the bootsector of a different OS,
 +
  the following example might be helpful. You will probably succeed in
 +
  starting any Microsoft-based operating system with it, just add this
 +
  block to the file after any other sections, and modify the partition
 +
  device accordingly to refer to the partition containing the bootsector
 +
  of the OS you are intending to boot.
 +
# (1) Other OS
 
title My Other OS
 
title My Other OS
 
rootnoverify (hd0,1)
 
rootnoverify (hd0,1)
 
makeactive
 
makeactive
chainloader +1</pre>
+
chainloader +1
  
For advanced configuration of other OSes, please refer to the online [http://www.gnu.org/software/grub/manual/grub.html GRUB manual].
+
  For advanced configuration of other OSes, please refer to the online
 +
  GRUB manual.
  
=====/etc/lilo.conf=====
+
  After checking your bootloader configuration for correctness, you'll
This is the configuration file for the LILO bootloader. Make sure you check this one and get it right if you want to use LILO to boot your system. See LILO documentation for help on this.
+
  be prompted for a partition to install the loader to. Unless you're
 +
  using yet another boot loader, you should install GRUB to the MBR of
 +
  the installation disk, which is usually represented by the appropriate
 +
  device name without a number suffix.
  
Things you should check are the root= lines in the image sections and the boot= line right at the beginning of the file. The root lines specify the device which shall be mounted as the root filesystem on bootup. If you don't know what is supposed to be entered here, change to another terminal and type mount to see a list of all currently mounted drives, and look for the line which displays a device name mounted on /mnt type [...]. The device path at the beginning of this very line should be entered in the root lines of your lilo.conf. Change if necessary.
+
    /etc/lilo.conf
  
The boot line should be okay by default in most cases. Unless you have a weird boot manager setup in mind with multiple OSes, the device referenced here should be having the same prefix your root lines have, but not end with a number. For example, a root of /dev/hda3 means you probably want to install LILO into the Master Boot Record of the hard disk, so you would set boot to /dev/hda, which references the disk as a whole.
+
  This is the configuration file for the LILO bootloader. Make sure you
To prevent some serious grief, you should make sure you know how to restore the bootsector of your other OSes, for example with Windows's FIXBOOT/FIXMBR tools.
+
  check this one and get it right if you want to use LILO to boot your
 +
  system. See LILO documentation for help on this.
  
To be on the safe side, you should keep the option lba32 right below the prompt line. This will prevent some geometry issues from happening.
+
  Things you should check are the root= lines in the image sections and
 +
  the boot= line right at the beginning of the file. The root lines
 +
  specify the device which shall be mounted as the root filesystem on
 +
  bootup. If you don't know what is supposed to be entered here, change
 +
  to another terminal and type mount to see a list of all currently
 +
  mounted drives, and look for the line which displays a device name
 +
  mounted on /mnt type [...]. The device path at the beginning of this
 +
  very line should be entered in the root lines of your lilo.conf.
 +
  Change if necessary, and keep the pata issue in mind!
  
In some cases, depending on your BIOS, LILO will not run on bootup and spill out an error code infinitely. In most cases you either removed the lba32 option, or your hardware setup is a little special, meaning that maybe your CD-ROM drive is primary master and the hard disk you installed secondary slave. This can very well irritate your BIOS, and prevent a boot up. To prevent that you can try and make the install drive the primary master on your IDE bus. If you've got a mixed IDE and SCSI system and the problem persists, you'll probably need some experimentation with the disk and bios options of LILO to provide a working mapping; The disk drives in your system are numbered sequentially by your BIOS, starting with 0x80. If you're lucky your SCSI controller tells you which drive has which BIOS ID, but usually you're not. How the drives are effectively numbered is depending on your BIOS, so in the worst case you can only guess until it works. A typical disk line would look like this:
+
  The boot line should be okay by default in most cases. Unless you have
<pre>boot=/dev/hda
+
  a weird boot manager setup in mind with multiple OSes, the device
disk=/dev/hda bios=0x80</pre>
+
  referenced here should be having the same prefix your root lines have,
 +
  but not end with a number. For example, a root of /dev/hda3 means you
 +
  probably want to install LILO into the Master Boot Record of the hard
 +
  disk, so you would set boot to /dev/hda, which references the disk as
 +
  a whole. During installation, the boot device must be the current name
 +
  of the device where you want to write the boot sector to; This may
 +
  differ from the name of the device after the first boot, thanks to the
 +
  pata transition! Check carefully what device to write to during the
 +
  installation stage, for example with the mount command.
  
The disk option maps a BIOS ID to the disk device known to linux. Note that there is still no guarantee that things will work as other things can be wrong, so do not despair if all your tries fail, but rather try rearranging your hardware in a way that's not totally odd. In this area too much can go wrong and needs special handling to be explained here. In most cases the lba32 option will suffice anyway. Old hard drives will usually need a little more special care until they do as told.
+
  To prevent some serious grief, you should make sure you know how to
Don't become fidgety when reading this section, I (Dennis) just happened to stumble over this problem when experimenting with a rather odd system, and figured it'd be a good idea to mention this show stopper and workarounds here. You probably won't ever experience this, and if you do, use GRUB.
+
  restore the bootsector of your other OSes, for example with Windows's
 +
  FIXBOOT/FIXMBR tools.
  
How to recreate a LILO boot sector with only a rescue disk is explained later in this document.
+
  To be on the safe side, you should keep the option lba32 listed. This
 +
  will prevent some geometry issues from happening.
  
=====/etc/mkinitrd.conf=====
+
  In some cases, depending on your BIOS, LILO will not run on bootup and
This file allows you to fine-tune the initial ramdisk (also commonly referred to as the "initrd") for your system. The initrd is a gzipped image that is read by the kernel during bootup. The purpose of the initrd is to bootstrap the system to the point where it can access the root filesystem. This means it has to load any modules that are required to "see" things like IDE, SCSI, or SATA drives (or USB/FW, if you are booting off a USB/FW drive). Once the initrd loads the proper modules, it passes control to the Arch system and your bootup continues. For this reason, the initrd only needs to contain the modules necessary to access the root filesystem. It does not need to contain every module you would ever want to use. The majority of these modules will be loaded later on by hwdetect or hwd.
+
  spill out an error code infinitely. In most cases you either removed
 +
  the lba32 option, or your hardware setup is a little special, meaning
 +
  that maybe your CD-ROM drive is primary master and the hard disk you
 +
  installed secondary slave. This can very well confuse your BIOS, and
 +
  thus stop the boot process. To prevent that you can try and make the
 +
  install drive the primary master on your IDE bus. If you've got a
 +
  mixed IDE and SCSI system and the problem persists, you'll probably
 +
  need some experimentation with the disk and bios options of LILO to
 +
  provide a working mapping; The disk drives in your system are numbered
 +
  sequentially by your BIOS, starting with 0x80. If you're lucky your
 +
  SCSI controller tells you which drive has which BIOS ID, but usually
 +
  you're not. How the drives are effectively numbered is depending on
 +
  your BIOS, so in the worst case you can only guess until it works. A
 +
  typical disk line would look like this:
 +
boot=/dev/hda
 +
disk=/dev/hda bios=0x80
  
By default, mkinitrd.conf is configured to provide all known modules for IDE, SCSI, or SATA systems. This means the default initrd should work for almost everybody. The downside to this is that there are many modules loaded that you will not need. This is easily visible by examining your module table after booting up (with the lsmod command). While this doesn't actually hurt anything, some people find it annoying. To cull this list down to only what you actually need, you can edit mkinitrd.conf and disable the subsystems (ie, IDE, SCSI, RAID, USB, etc) that you don't need. Each subsystem has a variable that starts with REMOVE_. Setting the variable to 1 (one) will remove it from the initrd.
+
  The disk option maps a BIOS ID to the disk device known to linux. Note
 +
  that there is still no guarantee that things will work as other things
 +
  can be wrong, so do not despair if all your tries fail, but rather try
 +
  rearranging your hardware in a way that's not totally odd. In this
 +
  area too much can go wrong and needs special handling to be explained
 +
  here. In most cases the lba32 option will suffice anyway. Old hard
 +
  drives will usually need a little more special care until they do as
 +
  told.
  
You can customize even further by specifying the exact modules you need in the HOSTCONTROLLER_ variables. Or, if you'd rather trust the auto-detection utility (hwdetect) to find the modules for you, you can set the AUTODETECT variable to 1 and ignore the other settings.
+
  Don't become fidgety when reading this section, I (Dennis) just
If you're using RAID or encryption on your root filesystem, then you'll have to tweak the RAID/CRYPT settings near the bottom. See the wiki pages for RAID/LVM, filesystem encryption, and Initrd for more info.
+
  happened to stumble over this problem when experimenting with a rather
 +
  odd system, and figured it'd be a good idea to mention this show
 +
  stopper and workarounds here. You probably won't ever experience this,
 +
  as you should be using GRUB anyway.
  
When you're finished tweaking mkinitrd.conf, you must run mkinitrd auto to regenerate the initrd. You can include the -show switch if you want to see a list of the modules being included.
+
  How to recreate a LILO boot sector with only a rescue disk is
<pre># mkinitrd auto -show</pre>
+
  explained later in this document.
  
WARNING: If you fail to include the correct module(s) in your initrd, your system will not boot! For this reason, you should be especially careful when tweaking your initrd. Do not over-tweak unless you know your hardware well.
+
    /etc/conf.d/*
  
If you do manage to break your system, you can use the backup initrd that is included with the stock 2.6.x kernel, but only if you use the GRUB bootloader. To use the backup initrd, you must edit the initrd line from the GRUB menu at bootup and change it to point to the backup image. For example, if your normal initrd line is initrd /initrd26.img, you should change it to initrd /initrd26-full.img. Then bootup with the backup initrd and fix your primary!
+
  During setup, this is totally unimportant. Consider this as reference
 +
  for the interested.
  
=====/etc/hosts=====
+
  Some daemon scripts will have a matching configuration file in this
This is where you stick hostname/ip pairs of other computers on your network. If a hostname isn't part of DNS, you can add it here. You usually don't need to change anything here, but you might want to add the hostname and hostname + domain of the machine to this file, resolving to the IP of your network interface. If you don't know what you're doing, leave this file alone until you read man hosts.
+
  directory that contains some more-or-less useful default values. When
 +
  a daemon is started, it will first source the settings from it's
 +
  config file within this directory, and then source the /etc/rc.conf.
 +
  This means you can easily centralize all your daemon configuration
 +
  options in your /etc/rc.conf simply by setting an appropriate variable
 +
  value, or split up your configuration over multiple files if you
 +
  prefer a decentralized approach to this issue. Isn't life great if
 +
  it's all just simple scripting?
  
=====/etc/fstab=====
+
    /etc/profile
Your filesystem settings and mountpoints are configured here. The install program should have created the necessary entries for you, but you should look over it and make sure it's right.
+
  
=====/etc/modprobe.conf=====
+
  This script is run on each user login to initialize the system. It is
 +
  kept quite simple under Arch Linux, as most things are. You may wish
 +
  to edit or customize it to suit your needs.
  
This is for use with 2.6.x kernels only.
+
===Boot Scripts===
  
This tells the kernel which modules it needs to load for system devices. For example, to have the kernel load your Realtek 8139 ethernet module when it starts the network (ie. tries to setup eth0), use this line:
+
  Arch Linux uses a fairly simple bootup sequence quite similar to
<pre>alias eth0 8139too</pre>
+
  *BSDs. The first boot script to run is /etc/rc.sysinit. When it's
 +
  done, /etc/rc.multi will be called (in a normal bootup). The last
 +
  script to run will be /etc/rc.local. When started in runlevel 1, the
 +
  single user mode, the script /etc/rc.single is run instead of
 +
  /etc/rc.multi. You will not find an endless symlink collection in the
 +
  /etc/rc?.d/ directories to define the bootup sequence for all possible
 +
  runleves. In fact, due to this approach Arch only really has three
 +
  runlevels, if you take starting up X in runlevel 5 into account. The
 +
  boot scripts are using the variables and definitions found in the
 +
  /etc/rc.conf file and also a set of general functions defined in the
 +
  /etc/rc.d/functions script. If you plan to write your own daemon
 +
  files, you should consider having a look at this file and existing
 +
  daemon scripts.
  
The syntax of this file is nearly identical to the old modules.conf scheme, unless you use some of the more exotic options like post-install. Then you should invest a little time into reading man modprobe.conf.
+
  Boot Script Overview
  
=====/etc/modules.conf (deprecated)=====
+
    1. /etc/rc.sysinit
This is for use with 2.4.x kernels only.
+
    2. /etc/rc.single
 +
    3. /etc/rc.multi
 +
    4. /etc/rc.local
 +
    5. /etc/rc.shutdown
 +
    6. /etc/rc.local.shutdown
 +
    7. /etc/rc.d/*
  
This tells the kernel which modules it needs to load for system devices. For example, to have the kernel load your Realtek 8139 ethernet module when it starts the network (ie. tries to setup eth0), use this line:
+
    /etc/rc.sysinit
<pre>alias eth0 8139too</pre>
+
  
=====/etc/resolv.conf=====
+
  The main system boot script. It does boot-critical things like
Use this file to setup your nameserver(s) that you will use. It should basically look like this:
+
  mounting filesystems, running udev, activating swap, loading modules,
<pre>search domain.tld
+
  setting localization parameters, etc. You will most likely never need
nameserver 192.168.0.1
+
  to edit this file!
nameserver 192.168.0.2</pre>
+
  
Replace domain.tld and the ip addresses with your settings. The so called search domain specifies the default domain that is appended to unqualified hostnames automatically. Setting this, a ping myhost will effectively become a ping myhost.domain.tld with the above values. These settings usually aren't mighty important, though, and most people should leave them alone for now. If you use DHCP, this file will be fed with the correct values automatically when networking is started, meaning you can and should happily ignore this file altogether.
+
    /etc/rc.single
  
=====/etc/conf.d/*=====
+
  Single-user startup. Not used in a normal boot-up. If the system is
During setup, this is totally unimportant. Consider this as reference for the interested.
+
  started in single-user mode, for example with the kernel parameter 1
 +
  before booting or during normal multi-user operation with the command
 +
  init 1, this script makes sure no daemons are running except for the
 +
  bare minimum; syslog-ng and udev. The single-user mode is useful if
 +
  you need to make any changes to the system while making sure that no
 +
  remote user can do anything that might cause data loss or damage.
  
Some daemon scripts will have a matching configuration file in this directory that contains some more-or-less useful default values. When a daemon is started, it will first source the settings from it's config file within this directory, and then source the /etc/rc.conf. This means you can easily centralize all your daemon configuration options in the rc.conf simply by setting an appropriate variable value, or split up your configuration over multiple files if you prefer a decentralized approach to this issue. Ain't life great if it's all just simple scripting?
+
  For desktop users, this mode usually is useless as crud. You should
 +
  have no need to edit this script, either.
  
=====/etc/profile=====
+
    /etc/rc.multi
This script is run on each user login to initialize the system. It is kept quite simple under Arch Linux (most things are). You may wish to edit or customize it to suit your needs.
+
  
====Boot Scripts====
+
  Multi-user startup script. It starts all daemons you configured in the
 +
  DAEMONS array (set in /etc/rc.conf) after which it calls
 +
  /etc/rc.local. You shouldn't feel a pressing need to edit this file.
  
Arch Linux uses a fairly simple bootup sequence quite similar to *BSDs. The first boot script to run is /etc/rc.sysinit. When it's done, /etc/rc.multi will be called (in a normal bootup). The last script to run will be /etc/rc.local. When started in runlevel 1, the single user mode, the script /etc/rc.single is run instead of /etc/rc.multi. You will not find an endless symlink collection in the /etc/rc.d/ directories to define the bootup sequence for all possible runlevels. In fact, due to this approach Arch only really has three runlevels, if you take starting up X in runlevel 5 into account. The boot scripts are using the variables and definitions found in the /etc/rc.conf file and also a set of general functions defined in the /etc/rc.d/functions script. If you plan to write your own daemon files, you should consider having a look at this file and existing daemon scripts.
+
    /etc/rc.local
  
Boot Script Overview
+
  Local multi-user startup script. It is a good place to put any
* /etc/rc.sysinit
+
  last-minute commands you want the system to run at the very end of the
* /etc/rc.single
+
  bootup process. This is finally the one and only script you should
* /etc/rc.multi
+
  modify if needed, and you have total freedom on what to add to this
* /etc/rc.local
+
  script.
* /etc/rc.shutdown
+
* /etc/rc.d/*
+
  
=====/etc/rc.sysinit=====
+
  Most common system configuration tasks, like loading modules, changing
 +
  the console font or setting up devices, usually have a dedicated place
 +
  where they belong. To avoid confusion, you should make sure that
 +
  whatever you intend to add to your rc.local isn't feeling just as home
 +
  in /etc/profile.d/ or any other already existant config location
 +
  instead.
  
The main system boot script. It does boot-critical things like mounting filesystems, running devfsd, activating swap, loading modules, setting localization parameters, etc. You will most likely never need to edit this file!
+
    /etc/rc.shutdown
=====/etc/rc.single=====
+
  
Single-user startup. Not used in a normal boot-up. If the system is started in single-user mode, for example with the kernel parameter 1 before booting or during normal multi-user operation with the command init 1, this script makes sure no daemons are running except for the bare minimum; syslog-ng and udev. The single-user mode is useful if you need to make any changes to the system while making sure that no remote user can do anything that might cause data loss or damage.
+
  System shutdown script. It stops daemons, unmounts filesystems,
 +
  deactivates the swap, etc. Just don't touch.
  
For desktop users, this mode usually is useless as crud. You'll probably never need to edit this script, either.
+
    /etc/rc.local.shutdown
  
=====/etc/rc.multi=====
+
  Analogous to the /etc/rc.local file, this file may contain any
Multi-user startup script. It starts all daemons you configured in the DAEMONS array (set in /etc/rc.conf) after which it calls /etc/rc.local. You shouldn't feel a pressing need to edit this file.
+
  commands you want to run right before the common rc.shutdown is
 +
  executed. Please note that this file does not exist by default, and
 +
  for it to work properly, it must be set as executable.
  
=====/etc/rc.local=====
+
    /etc/rc.d/*
Local multi-user startup script. It is a good place to put any last-minute commands you want the system to run at the end of the bootup process. This is finally the one and only script you should modify if needed, and you have total freedom on what to add to this script.
+
  
Most common system configuration tasks, like loading modules, changing the console font or setting up devices, usually have a dedicated place where they belong. To avoid confusion, you should make sure that whatever you intend to add to your rc.local isn't feeling just as home in /etc/profile.d/ or any other already existant config location instead.
+
  This directory contains the daemon scripts referred to from the
 +
  rc.conf's DAEMONS array. In addition to being called on bootup, you
 +
  can use these scripts when the system is running to manage the
 +
  services of your system. For example the command
 +
# /etc/rc.d/postfix stop
  
=====/etc/rc.shutdown=====
+
  will stop the postfix daemon. Of course a script only exists when the
System shutdown script. It stops daemons, unmounts filesystems, deactivates the swap, etc. Just don't touch.
+
  appropriate package has been installed (in this case postfix). With a
 +
  basic system install, you don't have many scripts in here, but rest
 +
  assured that all relevant daemon scripts end up here. This directory
 +
  is pretty much the equivalent to the /etc/rc3.d/ or /etc/init.d/
 +
  directories of other distributions, without all the symlink hassle.
  
=====/etc/rc.d/*=====
+
===User Management===
This directory contains the daemon scripts referred to from the rc.conf's DAEMONS array. In addition to being called on bootup, you can use these scripts when the system is running to manage the services of your system. For example the command
+
<pre># /etc/rc.d/postfix stop</pre>
+
  
will stop the postfix daemon. Of course a script only exists when the appropriate package has been installed (in this case postfix). With a basic system install, you don't have many scripts in here, but rest assured that all relevant daemon scripts end up here. This directory is pretty much the equivalent to the /etc/rc3.d/ or /etc/init.d/ directories of other distributions, without all the symlink hassle.
+
  Users and groups can be added and deleted with the standard commands
 +
  provided in the util-linux package: useradd, userdel, groupadd,
 +
  groupdel, passwd, and gpasswd. The typical way of adding a user is
 +
  similar to this procedure:
 +
# useradd -m -s /bin/bash johndoe
 +
# passwd johndoe
  
====User Management====
+
  The first command will add the user named johndoe to the system,
 +
  create a home directory for him at /home/johndoe, and place some
 +
  default login files in his home directory. It will also set his login
 +
  shell to be /bin/bash. The second command will ask you for a password
 +
  for the johndoe user. A password is required to activate the account.
  
Users and groups can be added and deleted with the standard commands provided in the util-linux package: useradd, userdel, groupadd, groupdel, passwd, and gpasswd. The typical way of adding a user is similar to this procedure:
+
  As an alternative to the useradd command, the adduser script is also
<pre># useradd -m -s /bin/bash johndoe
+
  available to interactively create new users on your system simply by
# passwd johndoe</pre>
+
  answering questions.
  
The first command will add the user named johndoe to the system, create a home directory for him at /home/johndoe, and place some default login files in his home directory. It will also set his login shell to be /bin/bash. The second command will ask you for a password for the johndoe user. A password is required to activate the account.
+
  See the manpages for more information on the remaining commands. It is
 +
  a good idea to create one or multiple normal users for your day-to-day
 +
  work to fully use the available security features and minimize
 +
  potential damage that may be the result of using the root user for
 +
  anything but system administration tasks.
  
As an alternative to the useradd command, the adduser script is also available to interactively create new users on your system simply by answering questions.
+
===Internet Access===
  
See the manpages for more information on the remaining commands. It is a good idea to create one or multiple normal users for your day-to-day work to fully use the available security features and minimize potential damage that may be the result of using the root user for anything but system administration tasks.
+
  Due to a lack of developers for dialup issues, connecting Arch to the
 +
  Internet with a dialup line is requiring a lot of manual setup. If at
 +
  all possible, set up a dedicated router which you can then use as a
 +
  default gateway on the Arch box.
  
===Internet Access===
+
  There are quite a few dialup related documents in the Arch Linux Wiki
Due to a lack of developers for dialup issues, connecting Arch to the Internet with a dialup line is requiring a lot of manual setup. If at all possible, set up a dedicated router which you can then use as a default gateway on the Arch box.
+
There are quite a few dialup related documents in the Arch Linux Wiki.
+
  
====Analog Modem====
+
    Analog Modem
To be able to use a Hayes-compatible, external, analog modem, you need to at least have the ppp package installed. Modify the file /etc/ppp/options to suit your needs and according to man pppd. You will need to define a chat script to supply your username and passwort to the ISP after the initial connection has been established. The manpages for pppd and chat have examples in them that should suffice to get a connection up and running if you're either experienced or stubborn enough. With udev, your serial ports usually are /dev/tts/0 and /dev/tts/1.
+
  
Instead of fighting a glorious battle with the plain pppd, you may opt to install wvdial or a similar tool to ease the setup process considerably.
+
  To be able to use a Hayes-compatible, external, analog modem, you need
In case you're using a so called WinModem, which is basically a PCI plugin card working as an internal analog modem, you should endulge in the vast information found on the LinModem homepage.
+
  to at least have the ppp package installed. Modify the file
 +
  /etc/ppp/options to suit your needs and according to man pppd. You
 +
  will need to define a chat script to supply your username and passwort
 +
  to the ISP after the initial connection has been established. The
 +
  manpages for pppd and chat have examples in them that should suffice
 +
  to get a connection up and running if you're either experienced or
 +
  stubborn enough. With udev, your serial ports usually are /dev/tts/0
 +
  and /dev/tts/1.
  
====ISDN====
+
  Instead of fighting a glorious battle with the plain pppd, you may opt
Setting up ISDN is done in three steps:
+
  to install wvdial or a similar tool to ease the setup process
 +
  considerably.
  
# Install and configure hardware
+
  In case you're using a so called WinModem, which is basically a PCI
# Install and configure the ISDN utilities
+
  plugin card working as an internal analog modem, you should indulge in
# Add settings for your ISP
+
  the vast information found on the LinModem homepage.
  
The current Arch stock kernels include the necessary ISDN modules, meaning that you won't need to recompile your kernel unless you're about to use rather odd ISDN hardware. After physically installing your ISDN card in your machine or plugging in your USB ISDN-Box, you can try loading the modules with modprobe. Nearly all passive ISDN PCI cards are handled by the hisax module which needs two parameters; type and protocol. You must set protocol to '1' if your country uses the 1TR6 standard, '2' if it uses EuroISDN (EDSS1), '3' if you're hooked to a so called leased-line without D-channel, and '4' for US NI1.
+
    ISDN
  
Details on all those settings and how to set them is included in the kernel documentation, more specifically in the isdn subdirectory, or available online. The type parameter depends on your card; A list of all possible types is to be found in the README.HiSax kernel documentation. Choose your card and load the module with the appropriate options like this:
+
  Setting up ISDN is done in three steps:
<pre># modprobe hisax type=18 protocol=2</pre>
+
    1. Install and configure hardware
 +
    2. Install and configure the ISDN utilities
 +
    3. Add settings for your ISP
  
This will load the hisax module for my ELSA Quickstep 1000PCI, being used in Germany with the EDSS1 protocol. You should find helpful debugging output in your /var/log/everything.log file in which you should see your card being prepared for action. Please note that you will probably need to load some usb modules before you can work with an external USB ISDN Adapter.
+
  The current Arch stock kernels include the necessary ISDN modules,
 +
  meaning that you won't need to recompile your kernel unless you're
 +
  about to use rather odd or old ISDN hardware. After physically
 +
  installing your ISDN card in your machine or plugging in your USB
 +
  ISDN-Box, you can try loading the modules with modprobe. Nearly all
 +
  passive ISDN PCI cards are handled by the hisax module which needs two
 +
  parameters; type and protocol. You must set protocol to '1' if your
 +
  country uses the 1TR6 standard, '2' if it uses EuroISDN (EDSS1), '3'
 +
  if you're hooked to a so called leased-line without D-channel, and '4'
 +
  for US NI1.
  
Once you confirmed that your card works with certain settings, you can add the module options to your /etc/modprobe.conf (or /etc/modules.conf if you're using kernel 2.4.x):
+
  Details on all those settings and how to set them is included in the
<pre>alias ippp0 hisax
+
  kernel documentation, more specifically in the isdn subdirectory,
options hisax type=18 protocol=2</pre>
+
  available online. The type parameter depends on your card; A list of
 +
  all possible types is to be found in the README.HiSax kernel
 +
  documentation. Choose your card and load the module with the
 +
  appropriate options like this:
 +
# modprobe hisax type=18 protocol=2
  
Alternatively you can only add the options line here, and add hisax to your MODULES array in the rc.conf. Your choice, really, but this example has the advantage that the module will not be loaded until it's really needed.
+
  This will load the hisax module for my (Dennis) ELSA Quickstep
 +
  1000PCI, being used in Germany with the EDSS1 protocol. You should
 +
  find helpful debugging output in your /var/log/everything.log file in
 +
  which you should see your card being prepared for action. Please note
 +
  that you will probably need to load some usb modules before you can
 +
  work with an external USB ISDN Adapter.
  
That being done you should have working, supported hardware. Now you need the basic utilities to actually use it!
+
  Once you confirmed that your card works with certain settings, you can
 +
  add the module options to your /etc/modprobe.conf:
 +
alias ippp0 hisax
 +
options hisax type=18 protocol=2
  
Install the isdn4k-utils package, and read the manpage to isdnctrl, it'll get you started. Further down in the manpage you will find explanations on how to create a configuration file that can be parsed by isdnctrl, as well as some helpful setup examples.
+
  Alternatively you can only add the options line here, and add hisax to
Please note that you have to add your SPID to your MSN setting separated by a colon if you use US NI1.
+
  your MODULES array in the rc.conf. Your choice, really, but this
 +
  example has the advantage that the module will not be loaded until
 +
  it's really needed.
  
After you configured your ISDN card with the isdnctrl utility, you should be able to dial into the machine you specified with the PHONE_OUT parameter, but fail the username and password authentication. To make this work add your username and password to /etc/ppp/pap-secrets or /etc/ppp/chap-secrets as if you were configuring a normal analogous PPP link, depending on which protocol your ISP uses for authentication. If in doubt, put your data into both files.
+
  That being done you should have working, supported hardware. Now you
 +
  need the basic utilities to actually use it!
  
If you set up everything correctly, you should now be able to establish a dialup connection with isdnctrl dial ippp0 as root. If you have any problems, remember to check the logfiles!
+
  Install the isdn4k-utils package, and read the manpage to isdnctrl,
 +
  it'll get you started. Further down in the manpage you will find
 +
  explanations on how to create a configuration file that can be parsed
 +
  by isdnctrl, as well as some helpful setup examples.
  
====DSL (PPPoE)====
+
  Please note that you have to add your SPID to your MSN setting
These instructions are only relevant to you if your PC itself is supposed to manage the connection to your ISP. You do not need to do anything but define a correct default gateway if you are using a separate router of some sort to do the grunt work.
+
  seperated by a colon if you use US NI1.
  
Before you can use your DSL online connection, you will have to physically install the network card that is supposed to be connected to the DSL-Modem into your computer. After adding your newly installed network card to the modules.conf/modprobe.conf or the MODULES array, you should install the rp-pppoe package and run the adsl-setup script to configure your connection. After you have entered all the data, you can connect and disconnect your line with
+
  After you configured your ISDN card with the isdnctrl utility, you
<pre># /etc/rc.d/adsl start</pre>
+
  should be able to dial into the machine you specified with the
and
+
  PHONE_OUT parameter, but fail the username and password
<pre># /etc/rc.d/adsl stop</pre>
+
  authentication. To make this work add your username and password to
respectively. The setup usually is rather easy and straightforward, but feel free to read the manpages for hints. If you want to automatically dial in on bootup, add adsl to your DAEMONS array.
+
  /etc/ppp/pap-secrets or /etc/ppp/chap-secrets as if you were
 +
  configuring a normal analogous PPP link, depending on which protocol
 +
  your ISP uses for authentication. If in doubt, put your data into both
 +
  files.
 +
 
 +
  If you set up everything correctly, you should now be able to
 +
  establish a dialup connection with isdnctrl dial ippp0 as root. If you
 +
  have any problems, remember to check the logfiles!
 +
 
 +
    DSL (PPPoE)
 +
 
 +
  These instructions are only relevant to you if your PC itself is
 +
  supposed to manage the connection to your ISP. You do not need to do
 +
  anything but define a correct default gatewayif you are using a
 +
  seperate router of some sort to do the grunt work.
 +
 
 +
  Before you can use your DSL online connection, you will have to
 +
  physically install the network card that is supposed to be connected
 +
  to the DSL-Modem into your computer. After adding your newly installed
 +
  network card to the modprobe.conf or the MODULES array, you should
 +
  install the rp-pppoe package and run the pppoe-setup script to
 +
  configure your connection. After you have entered all required data,
 +
  you can connect and disconnect your line with
 +
# /etc/rc.d/adsl start
 +
 
 +
  and
 +
# /etc/rc.d/adsl stop
 +
 
 +
  respectively. The setup usually is rather easy and straightforward,
 +
  but feel free to read the manpages for hints. If you want to
 +
  automatically dial in on bootup, add adsl to your DAEMONS array.
  
 
==Package Management==
 
==Package Management==
 +
 
===Pacman===
 
===Pacman===
pacman is the package manager which tracks all the software installed on your system. It has simple dependency support and uses the standard tar-gz archive format for all packages. Some common tasks are explained below with the respective commands in long and short option form. For an up to date explanation of pacman's options, read man pacman. This overview is merely scratching the surface of pacman's current capabilities.
 
  
Typical tasks:
+
  pacman is the package manager which tracks all the software installed
# Adding a new package with a package file
+
  on your system. It has simple dependency support and uses the standard
# Upgrading a package with a package file
+
  gzipped tar archive format for all packages. Some common tasks are
# Removing packages
+
  explained below with the respective commands in long and short option
# Refreshing the package list
+
  form. For an up to date explanation of pacman's options, read man
# Upgrading the system
+
  pacman. This overview is merely scratching the surface of pacman's
# Adding/Upgrading a package from the repositories
+
  current capabilities.
# List installed packages
+
# Check if a specific package is installed
+
# Display specific package info
+
# Display list of files contained in package
+
# Find out which package a specific file belongs to
+
  
====Adding a new package with a package file====
+
  Typical tasks:
<pre># pacman --add foo.pkg.tar.gz
+
# pacman -A foo.pkg.tar.gz</pre>
+
  
This will install the foo.pkg.tar.gz package on the system. If dependencies are missing, pacman will exit with an error and report the missing deps, but not attempt to resolve the dependencies automatically. Look at the --sync option if you expect this functionality.
+
    1. Adding a new package with a package file
 +
    2. Upgrading a package with a package file
 +
    3. Removing packages
 +
    4. Refreshing the package list
 +
    5. Upgrading the system
 +
    6. Adding/Upgrading a package from the repositories
 +
    7. List installed packages
 +
    8. Check if a specific package is installed
 +
    9. Display specific package info
 +
  10. Display list of files contained in package
 +
  11. Find out which package a specific file belongs to
  
NOTE: This option is deprecated. man pacman (>=3)
+
    Adding a new package with a package file
  
-A, --add (deprecated)
+
# pacman --add foo.pkg.tar.gz
              Add  a  package  to the system. Either a
+
# pacman -A foo.pkg.tar.gz
              URL or file path can be  specified. The
+
              package  will  be  uncompressed into the
+
              installation root and the database  will
+
              be  updated. The  package  will  not be
+
              installed if another version is  already
+
              installed. NOTE: please use --upgrade in
+
              place of this option.
+
  
====Upgrading a package with a package file====
+
  This will install the foo.pkg.tar.gz package on the system. If
<pre># pacman --upgrade foo.pkg.tar.gz
+
  dependencies are missing, pacman will exit with an error and report
# pacman -U foo.pkg.tar.gz</pre>
+
  the missing deps, but not attempt to resolve the dependencies
 +
  automatically. Look at the --sync option if you expect this
 +
  functionality. Adding multiple package files is possible, and if the
 +
  listed files depend on each other, the packages will be automatically
 +
  installed in the correct order.
  
This does essentially the same as the --add operation, but will additionally upgrade an already-installed package at no extra cost. I can personally not imagine a case where you'd prefer --add over this --upgrade function.
+
    Upgrading a package with a package file
  
====Removing packages====
+
# pacman --upgrade foo.pkg.tar.gz
<pre># pacman --remove foo
+
# pacman -U foo.pkg.tar.gz
# pacman -R foo</pre>
+
  
This will remove all files belonging to the package named foo, except for configuration files that have been edited. Only supply the name of the package to this command, without the pkg.tar.gz suffix.
+
  This does essentially the same as the --add operation, but will
 +
  additionally upgrade an already-installed package at no extra cost. I
 +
  can personally not imagine a case where you'd prefer --add over this
 +
  --upgrade function, unless you want pacman to exit if a package is
 +
  already installed.
  
To remove any and all trace of a package, add the --nosave option to the above command.
+
    Removing packages
  
====Refreshing the package list====
+
# pacman --remove foo
<pre># pacman --sync --refresh
+
# pacman -R foo
# pacman -Sy</pre>
+
  
This will retrieve a fresh master package list from the repositories defined in the /etc/pacman.conf file and uncompress it into the database area. You should use this before using --sysupgrade to make sure you get the newest packages. Depending on your pacman.conf settings, this command may require a working internet connection to access FTP-based repositories. This option is quite similar to Debian's apt-get update command.
+
  This will remove all files belonging to the package named foo, except
 +
  for configuration files that have been edited. Only supply the name of
 +
  the package to this command, without the pkg.tar.gz suffix.
  
====Upgrading the system====
+
  To remove any and all trace of a package, add the --nosave option to
<pre># pacman --sync --sysupgrade
+
  the above command.
# pacman -Su</pre>
+
  
This command will upgrade all packages that are out-of-date on your system by comparing the local package version to the versions in the master package list that gets downloaded with the --refresh command. It's a good idea to run this every now and then to keep your system up to date. Note that this command does NOT implicitly refresh the master package list, so it's usually wiser to combine both commands into one:
+
    Refreshing the package list
<pre># pacman --sync --refresh --sysupgrade
+
# pacman -Syu</pre>
+
  
With these options pacman will automatically retrieve the current master package list and do a full system upgrade to the latest packages with all dependencies being automagically resolved. You will want to run this quite often.
+
# pacman --sync --refresh
 +
# pacman -Sy
  
====Adding/Upgrading a package from the repositories====
+
  This will retrieve a fresh master package list from the repositories
<pre># pacman --sync foo
+
  defined in the /etc/pacman.conf file and uncompress it into the
# pacman -S foo</pre>
+
  database area. You should use this before using --sysupgrade to make
 +
  sure you get the newest packages. Depending on your pacman.conf
 +
  settings, this command may require a working internet connection to
 +
  access FTP/HTTP-based repositories. This option is quite similar to
 +
  Debian's apt-get update command.
  
Retrieve and install package foo, complete with all dependencies it requires. Before using any sync option, make sure you refreshed the package list, or add --refresh or -y to the options to do it before the installation attempt. Unlike --add, the --sync option does not differ between installing and upgrading packages. Depending on your pacman.conf settings this function requires working internet access.
+
    Upgrading the system
  
====List installed packages====
+
# pacman --sync --sysupgrade
<pre># pacman --query
+
# pacman -Su
# pacman -Q</pre>
+
  
Displays the list of all installed packages in the system.
+
  This command will upgrade all packages that are out-of-date on your
 +
  system by comparing the local package version to the versions in the
 +
  master package list that gets downloaded with the --refresh command.
 +
  It's a good idea to run this regularly to keep your system up to date.
 +
  Note that this command does NOT implicitly refresh the master package
 +
  list, so it's usually wiser to combine both commands into one like
 +
  this:
 +
# pacman --sync --refresh --sysupgrade
 +
# pacman -Syu
  
====Check if a specific package is installed====
+
  With these options pacman will automatically retrieve the current
<pre># pacman --query foo
+
  master package list and do a full system upgrade to the latest
# pacman -Q foo</pre>
+
  packages with all dependencies being automagically resolved. You will
 +
  want to run this quite often.
  
Instead of grepping the full list for a name, you can append the name of the package you are looking for to the query command. This command will display the name and version of the foo package if it is installed, nothing otherwise.
+
    Adding/Upgrading a package from the repositories
  
====Display specific package info====
+
# pacman --sync foo
<pre># pacman --query --info foo
+
# pacman -S foo
# pacman -Qi foo</pre>
+
  
Displays information on the installed package foo (size, install date, build date, dependencies, conflicts, etc.). To display this information for a package file that is not yet installed, add the --file or -p option, respectively:
+
  Retrieve and install package foo, complete with all dependencies it
<pre># pacman --query --info --file foo.pkg.tar.gz
+
  requires. Before using any sync option, make sure you refreshed the
# pacman -Qip foo.pkg.tar.gz</pre>
+
  package list, or add --refresh or -y to the options to do it before
 +
  the installation attempt. Unlike --add, the --sync option does not
 +
  differ between installing and upgrading packages. Depending on your
 +
  pacman.conf settings this function requires working internet access.
  
====Display list of files contained in package====
+
  Receiving strange errors when downloading packages from the server,
<pre># pacman --query --list foo
+
  ie. broken downloads or files that aren't found, usually are either
# pacman -Ql foo</pre>
+
  caused by not refreshing the package list with --sync, or if you're
 +
  unlucky enough to try downloading from a mirror while it's synching
 +
  it's contents, and is thusly in an inconsistent state.
  
Lists all files belonging to package foo.
+
    List installed packages
  
====Find out which package a specific file belongs to====
+
# pacman --query
<pre># pacman --query --owns /path/to/file
+
# pacman -Q
# pacman -Qo /path/to/file</pre>
+
  
This query displays the name and version of the package which contains the file referenced by it's full path as a parameter.
+
  Displays a list of all installed packages in the system.
 +
 
 +
    Check if a specific package is installed
 +
 
 +
# pacman --query foo
 +
# pacman -Q foo
 +
 
 +
  Instead of grepping the full list for a name, you can append the name
 +
  of the package you are looking for to the query command. This command
 +
  will display the name and version of the foo package if it is
 +
  installed, nothing otherwise.
 +
 
 +
    Display specific package info
 +
 
 +
# pacman --query --info foo
 +
# pacman -Qi foo
 +
 
 +
  Displays information on the installed package foo (size, install date,
 +
  build date, dependencies, conflicts, etc.). To display this
 +
  information for a package file that is not yet installed, add the
 +
  --file or -p option, respectively:
 +
# pacman --query --info --file foo.pkg.tar.gz
 +
# pacman -Qip foo.pkg.tar.gz
 +
 
 +
    Display list of files contained in package
 +
 
 +
# pacman --query --list foo
 +
# pacman -Ql foo
 +
 
 +
  Lists all files belonging to package foo.
 +
 
 +
    Find out which package a specific file belongs to
 +
 
 +
# pacman --query --owns /path/to/file
 +
# pacman -Qo /path/to/file
 +
 
 +
  This query displays the name and version of the package which contains
 +
  the file referenced by it's full path as a parameter. Just using the
 +
  file name without the path will not yield results.
  
 
===Accessing Repositories===
 
===Accessing Repositories===
A package repository is a collection of packages and a package meta-info file that can reside in a local directory or on a remote FTP/HTTP server. The default repository for an Arch system is the current repository. This is kept up to date with the latest version of most software and stays fairly bleeding-edge.
 
  
Many users also choose to activate the extra package repository which contains more packages that are not part of Arch's core package set. You can activate this repo by uncommenting the appropriate lines in your /etc/pacman.conf. This repository is activated by default.
+
  A package repository is a collection of packages and a package
 +
  meta-info file that can reside in a local directory or on a remote
 +
  FTP/HTTP server. The default repository for an Arch system is the
 +
  current repository. This is kept up to date by developers with the
 +
  latest version of most software and stays fairly bleeding-edge.
  
You can also build, maintain and use your own package repositories. See the pacman manpage for instructions.
+
  Many users also choose to activate the extra package repository which
 +
  contains more packages that are not part of Arch's core package set.
 +
  You can activate this repo by uncommenting the appropriate lines in
 +
  your /etc/pacman.conf. This repository is activated by default.
  
If you install from a CD and end up having a problem accessing the Internet, you may need to install additional packages from the CD. You can locate the packages on the cd and install them manually using pacman -A packagename.pkg.tar.gz Alternatively, you can temporarily set up a local repository to access the CD. Mount the CD on /mnt/cdrom using the command mount /mnt/cdrom (assuming your fstab is properly set up). Then add the following line to your /etc/pacman.conf, under the section [current] which is the name of the database package on the install cd (current.db.tar.gz):
+
  You can also build, maintain and use your own package repositories.
 +
  See the pacman manpage for instructions.
  
Server = file:///mnt/cdrom/arch/pkg
+
  If you install from CD-ROM and end up having problems accessing the
+
  Internet, you may need to install additional packages from the CD.
Make sure you put it before "Include = /etc/pacman.d/current". This way, you cd will now be the primary [current] repository.
+
  Refer to the FAQs, specifically FAQ #3 later in this document, to find
You will then be able to install additional packages to help you get your Internet access set up.
+
  out how to define a repository that uses the installation CD-ROM as a
 +
  package source.
  
 
==Arch Build System (ABS)==
 
==Arch Build System (ABS)==
 +
 
===Binary vs. Source===
 
===Binary vs. Source===
Where pacman is responsible for the binary side of the package world, ABS is responsible for the source side: It helps you to build your own custom packages from source code, also letting you rebuild Arch Linux packages with your own customizations. The procedure usually goes as follows:
 
  
# Synchronize your ABS tree with the server (run abs as root)
+
  Where pacman is responsible for the binary side of the package world,
# Create a new directory in /var/abs/local/ named after the package you are going to create
+
  ABS is responsible for the source side: It helps you to build your own
# Copy the PKGBUILD.proto prototype from /var/abs/ into your newly created directory, remove the proto, suffix, and edit it for the new package.
+
  custom packages from source code, also letting you rebuild Arch Linux
# Run makepkg in the working directory with the PKGBUILD file.
+
  packages with your own customizations. The procedure usually goes as
# Install the newly built package with pacman.
+
  follows:
# Send the package to your friends for bragging rights (or give it to an Archer so s/he can stick it in the master ABS tree).
+
    1. Synchronize your ABS tree with the server.
 +
    2. Create a new directory in /var/abs/local/ named after the package
 +
      you are going to create.
 +
    3. Copy the PKGBUILD.proto prototype from /var/abs/ into your newly
 +
      created directory, remove the .proto suffix, and edit it to fit
 +
      the new package.
 +
    4. Run makepkg in the working directory with the PKGBUILD file.
 +
    5. Install the newly built package with pacman.
 +
    6. Send the package to your friends for bragging rights (or give it
 +
      to an Archer so s/he can stick it in the master ABS tree).
  
 
===Synchronizing Your ABS Tree===
 
===Synchronizing Your ABS Tree===
You can synchronize all the PKGBUILD files in /var/abs by running the abs script as root. It requires the cvsup package to operate and will complain if you don't have it installed. Using CVS as the transfer medium allows you to follow different version trees within ABS - this can be configured in /etc/abs/supfile.arch. For example, the default supfile is set to track the current package tree, which is bleeding-edge and the recommended source to follow. You can also follow specific versions. See the comments in the supfiles for more info.
 
  
ABS supports multiple repositories, which can be enabled or disabled from /etc/abs/abs.conf. By default abs will follow the current and extra repositories, but not unstable.
+
  You can synchronize all the required package building files in
 +
  /var/abs by running the abs script as root. It requires the cvsup
 +
  package to operate and will complain if you don't have it installed. A
 +
  working internet connection is also required, of course. Using CVS as
 +
  the transfer medium allows you to follow different version trees
 +
  within ABS - this can be configured in /etc/abs/supfile.arch. For
 +
  example, the default supfile is set to track the current package tree,
 +
  which is bleeding-edge and the recommended source to follow. You can
 +
  also follow specific versions. See the comments in the supfiles for
 +
  more info.
  
You will also see an /etc/abs/supfile.extra file. This will give you access to all the unofficial build scripts that were not included in the main ABS repository. If you do not want to use this repository, you can delete the file, but usually it makes more sense to edit abs.conf accordingly instead.
+
  ABS supports multiple repositories, which can be enabled or disabled
 +
  in /etc/abs/abs.conf. By default, abs will follow the current and
 +
  extra repositories, but not anything else.
  
====How to Build Packages====
+
  You will also see an /etc/abs/supfile.extra file. This will give you
The build process is thoroughly explained in the makepkg manpage. See it for instructions on building your own packages. If that's not helping you, keep your eyes peeled for tutorials in the Wiki, or ask for help in the forums or IRC.
+
  access to all the unofficial build scripts that were not included in
 +
  the main ABS repository. If you do not want to use this repository,
 +
  you can delete the file, but usually it makes more sense to edit
 +
  abs.conf accordingly instead, and disable the repositories you don't
 +
  need.
  
====Package Guidelines====
+
===How to Build Packages===
  
When building package for Arch Linux, you should adhere to the package guidelines below, especially if you would like to contribute your new package to Arch Linux.
+
  The build process is thoroughly explained in the makepkg manpage. Read
 +
  it for instructions on building your own packages. If that's not
 +
  helping you, keep your eyes peeled for tutorials in the Wiki, or ask
 +
  for help in the forums or IRC.
  
====Package Naming====
+
===Package Guidelines===
* Package names should consist of alphanumeric characters only; all letters should be lowercase.
+
* Package versions should be the same as the version released by the author. Versions can include letters if need be (eg, nmap's version is 2.54BETA32). Version tags may not include hyphens! Letters, numbers, and periods only.
+
* Package releases are specific to Arch Linux packages. These allow users to differentiate between newer and older package builds. When a new package version is first released, the release count starts at 1. Then as fixes and optimizations are made, the package will be re-released to the AL public and the release number will increment. When a new version comes out, the release count resets to 1. Package release tags follow the same naming restrictions as version tags.
+
  
====Directories====
+
  When building package for Arch Linux, you should adhere to the package
Configuration files should be placed in the /etc directory. If there's more than one configuration file, it's customary to use a subdirectory in order to keep the /etc area as clean as possible. Use /etc/{pkgname}/ where {pkgname} is the name of your package (or a suitable alternative, eg, apache uses /etc/httpd/).
+
  guidelines below, especially if you would like to contribute your new
 +
  package to Arch Linux.
  
Package files should follow these general directory guidelines:
+
    Package Naming
*/etc- System-essential configuration files
+
*/usr/bin- Application binaries
+
*/usr/sbin- System binaries
+
*/usr/lib- Libraries
+
*/usr/include- Header files
+
*/usr/lib/{pkg}- Modules, plugins, etc.
+
*/usr/man- Manpages
+
*/usr/share/{pkg}- Application data
+
*/etc/{pkg}- Configuration files for {pkg}
+
*/opt- Packages that do not fit cleanly into Linux filesystem layout can be placed here. If a package's files can be cleanly placed into the above directories, then do so. If there are other high-level directories that do not fit, then you should use /opt. For example, the acrobat package has Browser, Reader, and Resource directories sitting at the same level as the bin directory. This doesn't fit into a normal Linux filesystem layout, so we place all the files in a subdirectory of /opt.
+
  
====makepkg Duties====
+
    * Package names should consist of alphanumeric characters only; all
When you use makepkg to build a package for you, it does the following automatically:
+
      letters should be lowercase.
 +
    * Package versions should be the same as the version released by the
 +
      author. Versions can include letters if need be (eg, nmap's
 +
      version was 2.54beta32 a good while ago). Version tags may not include
 +
      hyphens!  Letters, numbers, and periods only.
 +
    * Package releases are specific to Arch Linux packages. These allow
 +
      users to differentiate between newer and older package builds.
 +
      When a new package version is first released, the release count
 +
      starts at 1. Then as fixes and optimizations are made, the package
 +
      will be re-released to the AL public and the release number will
 +
      increment. When a new version comes out, the release count resets
 +
      to 1. Package release tags follow the same naming restrictions as
 +
      version tags.
  
# Checks if package dependencies are installed
+
    Directories
# Downloads source files from servers
+
# Unpacks source files
+
# Does any necessary patching
+
# Builds the software and installs it in a fake root
+
# Removes /usr/doc, /usr/info, /usr/share/doc, and /usr/share/info from the package
+
# Strips symbols from binaries
+
# Strips debugging symbols from libraries
+
# Generates the package meta file which is included with each package
+
# Compresses the fake root into the package file
+
# Stores the package file in the configured destination directory (cwd by default)
+
  
====Other====
+
  Configuration files should be placed in the /etc directory. If there's
Do not introduce new variables into your PKGBUILD build scripts, unless the package cannot be built without doing so, as these could possibly conflict with variables used in makepkg itself. If a new variable is absolutely required, prefix the variable name with an underscore.
+
  more than one configuration file, it's customary to use a subdirectory
 +
  in order to keep the /etc area as clean as possible. Use
 +
  /etc/{pkgname}/ where {pkgname} is the name of your package (or a
 +
  suitable alternative, eg, apache uses /etc/httpd/).
  
Avoid using /usr/libexec/ for anything. Use /usr/lib/{pkg} instead.
+
  Package files should follow these general directory guidelines:
  
The Packager field from the package meta file can be customized by the package builder by modifying the appropriate option in the /etc/makepkg.conf file, or alternatively by exporting the PACKAGER environment variable before building packages with makepkg:
+
  /etc             System-essential configuration files
<pre># export PACKAGER="John Doe <your.email>"</pre>
+
  /usr/bin        Application binaries
 +
  /usr/sbin        System binaries
 +
  /usr/lib        Libraries
 +
  /usr/include    Header files
 +
  /usr/lib/{pkg}  Modules, plugins, etc.
 +
  /usr/man        Manpages
 +
  /usr/share/{pkg} Application data
 +
  /etc/{pkg}      Configuration files for {pkg}
 +
  /opt
  
====Submitting Packages====
+
  Packages that do not fit cleanly into Linux filesystem layout can be
If you'd like to submit packages, please take a look at the Arch User Repository and their guidelines. New packages should be submitted to the AUR.
+
  placed here. If a package's files can be cleanly placed into the above
 +
  directories, then do so. If there are other high-level directories
 +
  that do not fit, then you should use /opt.
  
If you're submitting a package directly to the Arch developers, we ask the following:
+
  For example, the acrobat package has Browser, Reader, and Resource
 +
  directories sitting at the same level as the bin directory. This
 +
  doesn't fit into a normal Linux filesystem layout, so we place all the
 +
  files in a subdirectory of /opt.
  
# Please add a comment line to the top of your PKGBUILD file that follows this format: <pre># Contributor: Your Name <your.email></pre>
+
  Clear as mud? Good.
# Verify the package dependencies (eg, run ldd on dynamic executables, check tools required by scripts, etc.). It's also a good idea to use the namcap utility, written by Jason Chu jason@archlinux.org, to analyze the sanity if your package. namcap will tell you about bad permissions, missing dependencies, un-needed dependencies, and other common mistakes. You can install the namcap package with pacman.
+
# All packages should come as a compressed tar file containing a directory with the newly built package, the PKGBUILD, filelist, and additional files (patches, install, ...) in it. The archive name should at least contain the name of the package.
+
# Watch for announcements regarding the actual submission of packages, as a new implementation of the whole procedure is currently being discussed among the developers. If you think your package is too important to wait, you may of course ask a Trusted User if he would be willing to take your package for inclusion in his repository.
+
  
==Frequently Asked Questions==
+
    makepkg Duties
The FAQs listed here are only covering any problems that may keep you from booting or installing an initial Arch Linux system. If you have questions regarding further usage of the system utilities, XFree86 setup, etc. or how to configure your hardware, please head over to the Wiki. If you think an issue is not covered here that should be, please notify the author of this document, whose address is to be found at the very top of this file.
+
  
'''During package installation, pacman fails to resolve dependencies for package A because package B is not in the package set.'''
+
  When you use makepkg to build a package for you, it does the following
 +
  automatically:
 +
    1. Checks if package dependencies are installed
 +
    2. Downloads source files from servers
 +
    3. Unpacks source files
 +
    4. Does any necessary patching
 +
    5. Builds the software and installs it in a fake root
 +
    6. Removes /usr/doc, /usr/info, /usr/share/doc, and /usr/share/info
 +
      from the package
 +
    7. Strips symbols from binaries
 +
    8. Strips debugging symbols from libraries
 +
    9. Generates the package meta file which is included with each
 +
      package
 +
  10. Compresses the fake root into the package file
 +
  11. Stores the package file in the configured destination directory
 +
      (cwd by default)
  
Unless something is very broken and thus very likely to be reported by multiple people soon, you probably just forgot to mount your target partitions properly. This causes pacman to decompress the package database into the initial ramdisk, which fills up quite nicely and ultimatively leads to this error.
+
    Other
  
Make sure that you use the DONE and not the CANCEL option offered by the Filesystem Mountpoints menu to apply your choices. This error should not happen if you use the Auto-Prepare feature; please report this as a bug.
+
  Do not introduce new variables into your PKGBUILD build scripts,
 +
  unless the package cannot be built without doing so, as these could
 +
  possibly conflict with variables used in makepkg itself. If a new
 +
  variable is absolutely required, prefix the variable name with an
 +
  underscore.
  
'''How can I install packages from the install CD with pacman --sync (so it resolves dependencies for me)?'''
+
  Avoid using /usr/libexec/ for anything. Use /usr/lib/{pkgname}
 +
  instead.
  
If you would rather have packages install from the CD instead of downloading them, then mount the install CD somewhere (eg, /mnt/cd) and add this line right below the [current] line in /etc/pacman.conf:
+
  The "Packager" field from the package meta file can be customized by
<pre>Server = file:///mnt/cd/arch/pkg</pre>
+
  the package builder by modifying the appropriate option in the
 +
  /etc/makepkg.conf file, or alternatively by exporting the PACKAGER
 +
  environment variable before building packages with makepkg:
 +
# export PACKAGER="John Doe <your.email>"
  
Replace /mnt/cd with the mountpoint you chose. Then use pacman --sync as you normally would - It will now check the /mnt/cd directory first for packages.
+
    Submitting Packages
  
'''How can I create multiple swap partitions during the install?'''
+
  If you'd like to submit packages, please take a look at the Arch User
 +
  Repository and their guidelines. New packages should be submitted to
 +
  the AUR.
  
Naturally you won't be able to use the Auto-Prepare feature if you want to create and use multiple swap partitions. Create the partitions manually instead, and create as much swap partitions as your little heart desires. Go through the rest of the install, don't mind that you're only asked for one swap partition during the mount-point setting. Once you're through with the install and are about to edit your system configuration files, you can edit the fstab file and include a line for every swap device you created earlier. Simply copy the automatically generated swap line, and modify the referenced device according to your setup. The additional swaps will be activated after the bootup when swapon -a is being run by the initscripts.
+
  If you're submitting a package, please do the following:
 +
    1. Please add a comment line to the top of your PKGBUILD file that
 +
      follows this format:
 +
# Contributor: Your Name <your.email>
 +
    2. Verify the package dependencies (eg, run ldd on dynamic
 +
      executables, check tools required by scripts, etc.). It's also a
 +
      good idea to use the namcap utility, written by Jason Chu
 +
      jason@archlinux.org, to analyze the sanity if your package. namcap
 +
      will tell you about bad permissions, missing dependencies,
 +
      un-needed dependencies, and other common mistakes. You can install
 +
      the namcap package with pacman as usual.
 +
    3. All packages should come as a compressed tar file containing a
 +
      directory with the newly built package, the PKGBUILD, filelist,
 +
      and additional files (patches, install, ...) in it. The archive
 +
      name should at least contain the name of the package.
 +
    4. Read the appropriate documents regarding the AUR, and the newest
 +
      version of the packaging guildelines on the AUR Homepage.
  
If, for any odd reason, you can not wait until after the installation with activating multiple swap partitions or files, you will have to open a shell on one of the virtual terminals and issue the swapon <device> for every swap drive or file you partitioned/readied before. Then continue as explained above with the install.
+
==Frequently Asked Questions==
  
In case you are honestly contemplating setting up multiple swap files or drives, you should keep in mind that a kernel that needs to swap is actually crying bitterly for more RAM, not more swap space. Please keep your penguin well fed. Thank you.
+
  The FAQs listed here are only covering any problems that may keep you
 +
  from booting or installing an initial Arch Linux system. If you have
 +
  questions regarding further usage of the system utilities, X11 setup,
 +
  etc. or how to configure your hardware, please head over to the Wiki.
 +
  If you think an issue is not covered here that should be, please
 +
  notify the author of this document, whose address is to be found at
 +
  the very top of this file.
  
'''How do I reconfigure LILO from the rescue system?'''
+
===During package installation, pacman fails to resolve dependencies for package A because package B is not in the package set===
As a first step you simply boot from the Arch Install CD or disks. If your partitions are intact and don't need checking, you should supply the root= kernel boot parameter as the instructions tell you. That will boot directly into your system, and you can skip all but the last step of actually reconfiguring and running lilo.
+
  
If you cannot boot your old root directly, boot the CD as if you were going to start an installation. Once you're in a shell, you mount the root partition of your harddisk into the /mnt directory, for example like this:
+
  Unless something is very broken and thus very likely to be reported by
<pre># mount /dev/hda3 /mnt</pre>
+
  multiple people soon, you probably just forgot to mount your target
 +
  partitions properly. This causes pacman to decompress the package
 +
  database into the initial ramdisk, which fills up quite nicely and
 +
  ultimatively leads to this error.
  
Then you mount any other partitions to their respective mount points within that root of yours, for example a /boot partition:
+
  Make sure that you use the DONE and not the CANCEL option offered by
<pre># mount /dev/hda1 /mnt/boot</pre>
+
  the Filesystem Mountpoints menu to apply your choices. This error
 +
  should not happen if you use the Auto-Prepare feature; If it does
 +
  nevertheless, please report this as a bug.
  
Now you need to mount a /dev tree in the /mnt area, where lilo will be able to find it:
+
===How can I install packages from the install CD with pacman --sync (so it resolves dependencies for me)?===
<pre># /mnt/bin/mount --bind /dev /mnt/dev</pre>
+
  
Once everything is mounted, make this /mnt directory your new root with the chroot /mnt command. This will start a new shell and drop you into the /mnt directory, which will be considered your / from then on.
+
  If you would rather have packages install from the CD instead of
 +
  downloading them, then mount the install CD somewhere (eg. /mnt/cd)
 +
  and add this line right below the [current] line in /etc/pacman.conf:
 +
Server = file:///mnt/cd
  
Now you can edit /etc/lilo.conf to your liking and run lilo to fix anything that needs fixing. Simply type exit when you want to break out of this root again, back into the original file tree. You can now reboot and test your changes.
+
  Replace /mnt/cd with the mountpoint you chose. Then use pacman --sync
 +
  as you normally would - It will now check the /mnt/cd directory first
 +
  for packages.
  
'''I can't ssh into my machine!'''
+
===How can I create multiple swap partitions during the install?===
  
Edit your /etc/hosts.deny file. The default configuration will reject all incoming connections.
+
  Naturally you won't be able to use the Auto-Prepare feature if you
 +
  want to create and use multiple swap partitions. Create the partitions
 +
  manually instead, and create as many swap partitions as your little
 +
  heart desires. Go through the rest of the disk preparation steps,
 +
  don't mind that you're only asked for one swap partition during the
 +
  mount-point setting. Once you're through with the install and are
 +
  about to edit your system configuration files, you can edit the fstab
 +
  file and include a line for every swap device you created earlier.
 +
  Simply copy the automatically generated swap line, and modify the
 +
  referenced device according to your setup. The additional swaps will
 +
  be activated after the bootup when swapon -a is being run by the
 +
  initscripts. Make sure you ran mkswap on all of your swap partitions
 +
  manually, or else your system will complain on bootup!
  
'''How should I load modules during boot now?'''
+
  If, for any odd reason, you can not wait until after the installation
 +
  with activating multiple swap partitions or files, you will have to
 +
  open a shell on one of the virtual terminals and issue the swapon
 +
  <device> for every swap drive or file you partitioned/readied before
 +
  with mkswap. Then continue as explained above with the install.
  
If you want to load a module unconditionally without a specific device binding, add the name of the module to the MODULES array of your /etc/rc.conf. For on demand loading on device access, add it as usual with the alias command to your /etc/modprobe.conf (/etc/modules.conf for 2.4 kernels). To pass any options to a module you want to load through the MODULES array, only add the appropriate options line to the /etc/modprobe.conf.
+
  In case you are honestly contemplating setting up multiple swap files
 +
  or drives, you should keep in mind that a kernel that needs to swap is
 +
  actually crying bitterly for more RAM, not more swap space. Please
 +
  keep your penguin well fed. Thank you.
  
'''Kernel refuses to boot because of lost interrupt'''
+
===How do I reconfigure LILO from the rescue system?===
  
Kernel refuses to boot. It locks at:
+
  As a first step you simply boot from the Arch Install CD or disks. If
<pre>IRQ probe failed for hda
+
  your partitions are intact and don't need checking, you can try
hda lost interrupt</pre>
+
  choosing one of the recovery boot options according to your partition
 +
  layout, or fiddle with the GRUB boot manager settings on your own to
 +
  get your existing system to boot properly. That will boot directly
 +
  into your system, and you can skip all but the last step of actually
 +
  reconfiguring and running LILO.
  
This error occurs for some HD controllers on kernel 2.6.x. A workaround is to pass the acpi=off option to the kernel at boot time.
+
  If you cannot boot your old root directly, boot from the CD as if you
 +
  were going to start an installation. Once you're in a shell, you mount
 +
  the root partition of your harddisk into the /mnt directory, for
 +
  example like this:
 +
# mount /dev/hda3 /mnt
  
'''I get access denied errors trying to play sound or read DVDs.'''
+
  Then you mount any other partitions to their respective mount points
 +
  within that root of yours, for example a /boot partition:
 +
# mount /dev/hda1 /mnt/boot
  
Add your user to the optical and audio groups.
+
  Now you need to mount a /dev tree in the /mnt area, where LILO will be
<pre># gpasswd -a johndoe optical
+
  able to find it:
# gpasswd -a johndoe audio</pre>
+
# /mnt/bin/mount --bind /dev /mnt/dev
  
Logout, then login as your regular user (eg, johndoe) so the group changes can take effect.
+
  Once everything is mounted, make this /mnt directory your new root
 +
  with the chroot /mnt command. This will start a new shell and drop you
 +
  into the /mnt directory, which will be considered your / from then on.
  
If you have a DVD drive, you may want to create a /dev/dvd symlink to your real DVD device.
+
  Now you can edit /etc/lilo.conf to your liking and run lilo to fix
 +
  anything that needs fixing. Simply type exit when you want to break
 +
  out of this root again, back into the original file tree. You can now
 +
  reboot and test your changes.
  
For example, if you use udev and your DVD drive is on /dev/hdc, you can do the following as root:
+
===I can't ssh into my machine!===
<pre># cat >>/etc/udev/rules.d/00.rules <<EOF
+
> KERNEL="hdc", NAME="hdc", SYMLINK="dvd"
+
> EOF
+
# /etc/start_udev
+
# mount /dev/pts
+
# mount /dev/shm</pre>
+
  
'''When trying to install packages with pacman, I get this: error: xorg conflicts with xfree86.'''
+
  Edit your /etc/hosts.deny file. The default configuration will reject
 +
  all incoming connections, not only ssh connections.
  
This is a temporary problem as we make a full switch over to xorg. Currently, some packages still depend on xfree86 specifically, so pacman gets confused.
+
===How should I load modules during boot now?===
  
You can fix this problem by installing xorg explicitly, then installing other packages afterwards.
+
  If you want to load a module unconditionally without a specific device
 +
  binding, add the name of the module to the MODULES array of your
 +
  /etc/rc.conf. For on demand loading on device access, add it as usual
 +
  with the alias and optioncommands to your /etc/modprobe.conf, in the
 +
  rare cases that the automatisms employed by udev don't cut
 +
  it. To pass any options to a module you want to load through the
 +
  MODULES array, only add the appropriate options line to your
 +
  /etc/modprobe.conf.
  
<pre># pacman -S xorg
+
===Kernel refuses to boot because of "lost interrupt"===
# pacman -S otherpkg1 otherpkg2 ...</pre>
+
 
 +
  Kernel refuses to boot. It locks at:
 +
IRQ probe failed for hda
 +
hda lost interrupt
 +
 
 +
  This or a similar error occurs for some HD controllers on kernel
 +
  2.6.x. A workaround is to pass the acpi=off option to the kernel at
 +
  boot time.
 +
 
 +
===I get "access denied" errors trying to play music or read DVDs===
 +
 
 +
  Add your user to the optical and audio groups.
 +
# gpasswd -a johndoe optical
 +
# gpasswd -a johndoe audio
 +
 
 +
  Logout, then login again as that user (eg. johndoe) so the group
 +
  changes can take effect, and the device permissions shouldn't be a
 +
  problem anymore.
 +
 
 +
  If you have a DVD drive, you may want to create a /dev/dvd symlink to
 +
  your real DVD device. Usually udev does this for you already, but this
 +
  will serve well as an example for setting up similar symlinks.
 +
 
 +
  For example, if your DVD drive is accessible through /dev/sdc, you can
 +
  do the following as root:
 +
# cat >>/etc/udev/rules.d/00.rules <<EOF
 +
> KERNEL="sdc", NAME="sdc", SYMLINK="dvd"
 +
> EOF
 +
# /etc/start_udev
 +
# mount /dev/pts
 +
# mount /dev/shm
  
 
{{Category:Consiguiendo e Instalando Arch}}
 
{{Category:Consiguiendo e Instalando Arch}}

Revision as of 22:36, 18 December 2007

Tango-preferences-desktop-locale.pngThis article or section needs to be translated.Tango-preferences-desktop-locale.png

Notes: please use the first argument of the template to provide more detailed indications. (Discuss in Talk:Official Installation Guide (Español)#)

Esta es la documentación general para usuarios de la distribución Arch Linux, nombre clave (Don't Panic). Cubre como obtener los archivos necesarios, instalación y configuración de un sistema básico y funcional, además de una corta referencia a las capas del sistema y las herramientas específicas de Arch, como el administrador de paquetes pacman y el Arch Build System (ABS).

Contents

Introducción

Que es Arch Linux

Arch Linux es una distribución Linux optimizada para i686 que se basó originalmente en ideas tomadas de CRUX, una genial distribución desarrollada por Per Lidén.

Arch es rápida, ligera, flexible y simple. Quizá no sea una descripción glamorosa pero es completamente real. Arch está optimizada para procesadores i686, así que obtienes más de los ciclos de tu CPU. Es ligera comparada con RedHat y demás distribuciones, y su diseño simple la hacen fácil de extender y adaptar a cualquier clase de sistema que estés construyendo.

Esto es apoyado por un sistema de paquetes binarios fácil de usar que permite actualizar el sistema completo con un comando. Arch también usa un sistema constructor de paquetes desde código fuente (el Arch Build System o ABS) que facilita la generación de binarios, que también puede sincronizarse con un comando, ¡y claro!, también puedes reconstruir tu sistema con un comando. Todo se hace de forma simple y transparente.

Arch Linux se esfuerza por mantener las más recientes versiones estables de su software. Actualmente soportamos una muy racionalizada colección de paquetes base con una creciente colección de paquetes extra mantenidas por los desarrolladores, así como, literalmente, miles de paquetes adicionales mantenidos por confiables miembros de la comunidad para nuestro AUR para ser usados por quien quiera como quiera.

En nuestra meta de simplicidad hemos excluido algunas porciones inútiles del sistema, como /usr/doc y las páginas info. Esto debido a que casi no son usadas y la información puede ser encontrada en Internet o bien en las páginas MAN.

Arch Linux además se esfuerza por usar algunas de las últimas características disponibles para los usuarios de Linux. Desde la versión 0.8 (Voodoo) Arch Linux usa la versión 2.6 del núcleo así como udev por defecto, y soporta EXT2/EXT3/REISERFS/XFS/JFS, RAID/LVM y sistemas de archivos encriptados.

Licencia

Arch Linux, pacman, la documentación y scripts tienen copyright ©2002-2006 para Judd Vinet y estan licenciados bajo la GNU General Public License versión 2.

Créditos y feedback

Este documento está fuertemente basado en los trabajos de Judd Vinet judd@archlinux.org. Correcciones menores y una buena cantidad de modificaciones y adiciones han sido hechas por Dennis Herbrich dennis@archlinux.org y Tobias Powalowski tpowa@archlinux.org. Una incontable cantidad de personas han contribuido y contribuirán con la evolución de esta documentación enviando correcciones y sugerencias, siendo imposible listarlos a todos. Sin embargo, tu sabes quien eres, y sin tu ayuda sería imposible de mantener y mejorar. ¡Gracias!

Instalando Arch Linux

Pre-Instalación

Arch Linux está optimizado para la arquitectura i686 o x86-64 (AMD64) y no corre en otros procesadores x86 (i386, i486, i586). Es necesaria una CPU Pentium-Pro/Pentium-II o posterior.

Existe un proyecto de la comunidad que proporciona paquetes para i586 y PPC. Busca en el sitio por más información.

Antes de instalar hay que elegir que tipo de instalación. Arch Linux provee dos imágenes ISO para arrancar desde CD:

  • El considerablemente pequeño 2007.08 ISO (~150 MB) sólo contiene los paquetes base además del núcleo. Notar que ya no es necesario descargar una imagen ISO completa si planeas usar RAID/LVM durante la instalación ya que los paquetes necesarios fueron movidos a la base hace tiempo. Instalar desde un medio creado con esta imagen da como resultado un sistema Linux completamente funcional, sin adornos, esperando a ser usado desde la línea de comandos. Esta imagen es apropiada idealmente para minimalistas o expertos que sólo quieren un sistema básico funcional y continuar desde ahí, o tienen una conexión lenta o difícil de configurar como para instalar desde FTP. El nombre de este ISO puede ser Archlinux-i686-2007.08-2.core.iso, de acuerdo a tu arquitectura.
  • Finalmente, hay una nueva opción disponible para anchos de banda consistentes, el pequeñísimo 2007.08 (~25 MB), contiene sólo lo necesario para arrancar el proceso de instalación. Esta variante no contiene paquetes, y por lo tanto sólo sirve para una instalación por FTP si tienes una rápida y fácil de configurar conexión, o un repositorio de paquetes en una LAN. Con sólo 22 MB esta es la más rápida forma de iniciar la instalación de Arch, y tiene la ventaja adicional de usar los últimos paquetes disponibles al momento de instalar en lugar de las versiones más antiguas de la otra ISO. Por supuesto todos los paquetes que escojas para instalar tienen que ser descargados de algún lado, pero al menos no tienes que actualizar el sistema inmediatamente después de la instalación, y salvarte de algún lío. Si tu conexión a Internet es barata y rápida, escoge esta imagen.

Si no tienes un lector de CD en tu computador, obviamente estás pegado.

Ahora obtén una imagen instalable de Arch, ya sea descargándola y quemándola desde alguno de los mirros listados, o comprándola a OSDisc.

Además no debes preocuparte al usar una ISO de instalación antigua, ya que actualizarás el sistema a la rama actual una vez que hayas configurado tu sistema básico, ¡si al menos tienes una conexión de banda ancha!

Ahora es posible usar una conexión por dialup con PPP. Las herramientas ppp, rp-pppoe e ISDN están incluidas en el medio de instalación.

Las ISOs 2007.08 corren como cualquier sistema Arch ya instalado, y lo más destacable es:

  • pacman está incluido para permitir la instalación de cualquier otro paquete necesario en el ambiente de instalación.
  • Soporte completo de /etc/rc.d/ y /etc/rc.conf
  • Soporte completo de red, incluyendo ssh, telnet y servicios portmap.
  • Configuración personalizada de archivos: cualquier medio con directorio /config será copiado al ambiente de instalación /etc/
  • Carga de paquetes como extensiones durante el arranque: cualquier medio con el directorio /package incluyendo pacman será instalado durante el arranque.
  • Enlaces y naim incluidos para poder comunicarse sobre Internet.
  • Soporte completo para kexec.

El amigable método de instalación de Arch instalará con seguridad el sistema base y todo lo que necesitas para conectarte desde el CD, y luego correrá un sistema completo para ser actualizado o agregarle cualquier otro paquete que quieras o necesites una vez que configures la conexión a Internet.

Otra cosa que debes saber antes de intentar instalar Arch is que durante el proceso se te harán algunas preguntas sobre el disco a preparar, qué módulos cargar y que cambios hacer en importantes archivos del sistema, como lilo.conf y rc.conf. El instalador no agarrará tu mano para guiarte a través de ninguna configuración conocida o desconocida por seres humanos, se espera que sepas que poner y que dejar tal como está. Este es un importante requerimiento para los novatos, así que si te intimida asegúrate de leer todo este documento para tener al menos una vaga idea sobre las preguntas que se te harán, y pregunta en IRC, foros o al gurú de tu vecindario si algo no te queda claro antes desordenar completamente tu sistema. Por supuesto que podrás valientemente luchar y juguetear hasta que funcione, pero después no digas que no fuiste advertido. Dicho esto, no es tan malo :)

Lo que necesitas tener:

  • Conocimiento de Linux y especialmente tu hardware,
  • un medio de instalación de Arch Linux (mira la lista de mirrors),
  • un computador basado en i686 (PPro, Pentium 2 o posterior, Athlon/Duron, VIA-C7, etc. (AMD K6, Transmeta Crusoe, CyrixIII, y VIA C3 no están soportados), o
  • un computador basado en x86-64 (Pentium 4/Celeron con soporte para 64 bits, Athlon x64, Core 2),
  • algo de tiempo para matar.

Adquiriendo Arch Linux

Puedes descargar Arch Linux desde cualquiera de los mirrors listados en la página de descarga. La lista de mirros estáticos es listada más abajo (podrían estar desactualizados; consulta la web por una lista actual):

Preparando el medio de instalación

  • Descarga <mirror>/iso/<your_architecture>/Archlinux-<version>.iso (ruta relativa a la raíz del mirror)
  • Descarga <mirror>/iso/<your_architecture>/md5sum-<version>.txt
  • Verifica la integridad del .iso usando md5sum:
md5sum Archlinux-<version>.iso
  • Graba la imagen .iso en un CD-R virgen (este paso varía dependiendo del sistema operativo y aplicación que uses). Si quieres descargar la base, FTP o ISO beta, usa el apropiado nombre de archivo para md5sum, por ejemplo: arch-0.8-base.iso en lugar de arch-0.8.iso.
  • Anota todos los datos de configuración de tu red para que puedas configurarla después si quieres instalar desde FTP:
    • IP,
    • máscara de subred,
    • gateway,
    • el módulo para tu tarjeta de red.

Usando el CD-ROM

Si ya estás familiarizado con el proceso de arranque, puedes saltarte todo este parloteo hasta el Proceso de instalación común, que esboza el actual proceso de instalación de Arch Linux.

Reinicia el computador con el CD de instalación de Arch Linux en el lector. Asegúrate de que tu BIOS está configurada para arrancar ese dispositivo. Dirígete al manual del de tu placa madre o al fabricante de tu sistema para conocer los detalles si no sabes como hacerlo. Una vez que el CD haya arrancado verás un cursor de arránque esperando a que presiones alguna tecla indefinida, explicando cuales son tus opciones. La mayoría de los usuarios pueden presionar Enter.

Si el arranque de tu CD falla por razones desconocidas y estás usando un lector de CD más o menos viejo junto a un CD-RW prueba a usar un típico CD-R en su lugar. Algunos lectores viejos -dos de los míos, por ejemplo - Dennis- no leen los CD-RWs apropiadamente.

Al final del proceso de arranque, deberías encontrarte con permisos de super usuario en una consola con un puñado de instrucciones llenando la mitad superior de tu pantalla. En este punto estás listo para comenzar la instalación, o realizar cualquier preparación manual que consideres necesaria.

Proceso de instalación común

En este punto tu sistema debería haber arrancado, y el disco donde te gustaría instalar, así como tu medio de instalación deberían ser accesibles.

Pasos de la instalación:

  1. Carga del idioma del teclado;
  2. arranque del instalador;
  3. configuración de la red (solo para instalar desde FTP);
  4. preparación del disco duro:
    1. preparación automática,
    2. particionado del disco duro,
    3. montaje del sistema de archivos;
  5. selección de paquetes;
  6. instalación de paquetes;
  7. configuración del sistema;
  8. instalación del núcleo;
  9. instalación del cargador de arranque;
  10. salida del instalador.

Usando las herramientas disponibles los usuarios experimentados también son capaces de preparar el disco duro o cualquier dispositivo necesario para la instalación antes de iniciar el instalador. Puedes saltarte este párrafo sino ves necesaria ninguna interacción manual. Fíjate que el medio de instalación de Arch Linux también contiene un script /arch/quickinst para usuarios experimentados. Este instala los paquetes básicos en un directorio especificado por el usuario. Si estás realizando una instalación exótica con cosas divertidas como RAID y LVM, o no quieres usar el instalador para nada, probablemente querrás usar ese script. Todos los chicos cool lo hacen.

Carga del idioma del teclado

Si utilizas un teclado que no se encuentra en inglés norteamericano puedes usar la herramienta km para cargar el idioma correcto. Simplemente escribe km en la consola, usa las flechas para navegar hasta el mapa correcto y/o tipografía de la consola.

Arranque el instalador

Ahora puedes escribir /arch/setup para invocar el instalador. Luego de un mensaje informativo se te preguntará por la elección del método de instalación. Si tienes una conexión a Internet rápida puedes preferir la instalación por FTPpara asegurarte de tener las versiones más recientes de los paquetes en lugar de usar los contenidos en el CD. Por favor nota que podrías estar en problemas si tienes un proxy complejo que requiere autentificación usando la instalación por FTP. Si no puedes usar un CD o cualquier otro medio, esta será la única forma de instalar Arch.

Cuando navegues por el script de instalación, asegúrate de seleccionar DONE (hecho en español) en el submenú después de realizar cada paso. Esto grabará cualquier configuración que hagas en preparación para el siguiente. Además, evita pasos arbitrarios a través del proceso de instalación que puedan confundir al instalador.

Actualmente es más bien fácil configurar tu propio mirror de paquetes por FTP o tu propio CD ejecutable de instalación con los paquetes que necesites, haciendo de la tarea de instalar varias instancias de Arch Linux en múltiples máquinas algo simple, mientras que al mismo tiempo liberas un montón de ancho de banda de los mirrors oficiales. Haz tu vida y la nuestra sencilla, ¡y prueba estas alternativas!

Cuando escoges el CD u otra fuente de instalación sólo serás capaz de instalar paquetes contenidos en dichos medios, los cuales pueden estar obsoletos. Claro que esto tiene el mérito de que no necesitarás una conexión a Internet, por lo tanto es la elección recomendada para usuarios que no le guste o no puedan descargar como mínimo 100 MB en paquetes durante la instalación.

Después de elegir una de las alternativas se te presentará el menú del instalador, listando los pasos necesarios en el orden en que deberán ser completados.

Llegado a este punto del proceso podrás moverte a la 5 consola virtuales con ALT-F5 para ver la salida que retornan los comandos cuando la instalación se esté ejecutando. Usa ALT+F1 para regresar a la primera consola, dónde el instalador está corriendo, y cualquier de las teclas de función entre ambas si necesitas abrir otra consola para intervenir manualmente por cualquier razón.

Configuración de la red (sólo para instalar desde FTP)

Este paso te permitirá instalar y configurar tu dispositivo de red.

Se te presentará una lista de todos los dispositivos disponibles. Si ningún dispositivo de red está disponible todavía, o no el que quieres usar, tendrás que cambiarte a otro terminal con ALT+F2, por ejemplo, y cargar los módulos necesarios de forma manual. Alternativamente puedes simplemente hacer como se te indica, presionar OK y probar el módulo en la siguiente pantalla seleccionando la opción Probe. Si tu tarjeta de red aún no está disponible, asegúrate de que esté correctamente conectada y soportada por el núcleo. Algunas veces es necesario conseguir controladores propietarios en forma binaria, y suministrarle una copia de algún modo al sistema de instalación para cargarlos manualmente. Usualmente esto es nada para débiles del corazón, y es recomendable usar un modelo distinto de tarjeta.

Cuando el módulo correcto ha sido cargado, y tu tarjeta de red es listada, deberás seleccionar el dispositivo de red que quieres configurar y se te dará la opción de configurar la red con DHCP. Si te conectas a un servidor DHCP marca YES y deja al instalador hacer el resto. Si seleccionas NO, se te dejará ingresar la información de la red manualmente. Entonces tu red debería estar correctamente configurada, y si eres del tipo escéptico, podrás revisar la conexión con alguna herramienta estándar como ping en otra consola.

Como el automatismo no es perfecto, puede que no sea posible usar correctamente el instalador para configurar tu red. En ese caso no te molestes y configurala manualmente en una de las consolas. Todo lo que el instalador necesita es una conexión transparente al servidor FTP que luego seleccionarás durante la instalación.

Este menú sólo se muestra al seleccionar la instalación por FTP por razones obvias.

Preparación del disco duro

Esta opción te dejará en un submenú ofreciéndote dos alternativas.

La primera es Auto-Prepare, que particionará el dispositivo de forma automática en /boot, swap, y /, y creará el sistema de archivos de todo el árbol. Estas particiones además serán automáticamente montadas en el punto correcto. Siendo exactos, esta opción creará:

  • La partición /boot de 32 MB,
  • la swap se 256 MB, y
  • / y /home en el espacio restante.

Esos tamaños pueden variar ligeramente debido a diferencias en la geometría del disco. Puedes elegir esta opción si no sabes mucho sobre como particionar discos duros, pero se cuidadoso:

¡ELIMINARÁ TODOS LOS DATOS DEL DISCO ELEGIDO! Lée cuidadosamente la advertencia presentada por el instalador ¡y asegúrate de que el dispositivo que será particionado es el correcto!

Una forma de verificar tu elección es abrir otro terminal (ALT+F2, Enter) y tipear

# cfdisk -P s nombre-del-dispositivo

que mostrará la tabla actual del dispositivo, lo cual debería ser información suficiente para estar seguros.

Sí ningún nombre de dispositivo es mostrado ([nothing] will be COMPLETELY ERASED!...), y el instalador produce el error Device not valid después de escoger YES, asegúrate de haber cargado todos los módulos necesarios en caso de ser SCASI, RAID, etc. Aún puedes cargar cualquier módulos cambiando a otra consola y escribiendo los comandos, entonces regresa a la consola de instalación presionando ALT+F1.

Si prefieres particionar el disco manualmente, usa las otras dos opciones: Partition Hard Drives y Set Filesystem Mountpoints para preparar el dispositivo de acuerdo a tus preferencias como se describe abajo. Entonces regresa al menú principal.

Particionando el disco duro

¡Este paso será omitido si has realizado la partición automática!

De lo contrario deberás seleccionar el disco que quieres particionar, y será ejecutado el programa cfdisk con el que podrás modificar la información de las particiones hasta que guardes los cambios [Write] y salgas [Quit].

Necesitarás al menos una partición raíz para continuar con la instalación, y es útil anotar dónde será montada cada partición ya que se te preguntará en el paso siguiente.

Montaje del sistema de archivos

Este paso también será omitido si escogiste Auto-Prepare. Debes seleccionar esta opción una vez que hayas editado la información de las particiones en el menú anterior, o si ya tenías el disco con las particiones necesarias.

La primera pregunta a responder es qué partición usarás como swap. Selecciona la partición creada para la swap de la lista, o NONE, si no quieres usar una partición para swap. Usar un archivo para swap no está soportado directamente por el instalador; en su lugar escoge NONE aquí, termina la asociación de puntos de montaje, y activa un archivo para swap en la partición que deseas con el comando swapon.

Luego de configurar la partición swap, se te preguntará por la partición para la raíz. Esto es obligatorio.

El proceso se repetirá hasta que selecciones DONE en la lista, idealmente cuando todas las asociaciones estén listas. El instalador sugerirá /boot luego de escoger montar asociar / y swap.

Cada vez que especifiques un punto de montaje se te preguntará si quieres crear un sistema de archivos en dicha partición. Si seleccionas YES, se te preguntará por el sistema de archivos a crear (escoge ext3 si no tienes idea), y la partición será formateada con el sistema escogido, destruyendo todos los datos que pudiera contener. Sin embargo no debería ser problema si escoges NO' en este punto para mantener los datos existentes en la partición.

Si quieres conservar los datos de alguna partición, es altamente recomendable que hagas copias de seguridad en lugar de alojarlos en el disco esperando a que nada salga mal durante la instalación. ¡No digas que no fuiste advertido!

Se te preguntará sobre crear un sistema de archivos en tu partición swap, y si esta usa un sistema propio. Siempre debes responder YES..

Si quieres montar cualquier otra partición, por ejemplo /boot o /home, aquí podrás hacerlo. Simplemente:

  • selecciona la partición a montar,
  • escoge el sistema de archivos (si quieres crear uno en lugar de conservar los datos),
  • ingresa un punto de montaje único.

Repite estos pasos hasta que estés satisfecho, entonces selecciona DONE para crear cualquier sistema de archivos y montar las particiones en sus respectivos puntos. Antes de que el formateo sea hecho el instalador te presentará una lista de tus elecciones para que las revises. Luego de formatear y montar las particiones, podrás regresar al menú principal y continuar con el paso siguiente..

Selección de paquetes

Esta opción te permitirá escoger los paquetes que deseas instalar desde el CD o por FTP.

Si seleccionaste la instalación por CD tienes que decirle al instalador que intente montar el lector por sí mismo o indicarle que ya lo hiciste en el directorio /src. Escoge la opción de acuerdo a lo que necesites. Normalmente querrás escoger el CD, después de lo cual se te dará la posibilidad de elegir un dispositivo desde la lista de todos los que hayan sido detectados.

Si tu dispositivo no aparece en la lista, asegúrate de haber cargado los módulos necesarios, como SCSI o USB, en otra consola de ser necesario.

Si escogiste la instalación por FTP, se te preguntará por el mirror más cercano de una lista, o usar la opción Custom para ingresar el nombre de dominio (o IP) de algún otro FTP que contenga los paquetes, como puede ser un servidor en tu LAN, o cualquier mirror que no sea listado por cualquier motivo, y más tarde la ruta completa al directorio del servidor que contiene los paquetes y especialmente el archivo current.db.tar.gz. El instalador revisará que sea el correcto y te permitirá realizar correcciones hasta que ingreses una dirección y ruta que permita descargar la lista de paquetes.

Sea cual sea la fuente que elijas, después de conseguir la lista de paquetes se te presentará una pantalla de selección de paquetes.

Si se presenta un error mientras se obtiene la lista de paquetes deberás escoger otro mirror, asegurarte de que la red está trabajando y que no haya errores en la dirección de tu servidor personalizado. También podrías haberte equivocado al montar tu lector de CD en /src si escogiste esta opción. Lee el mensaje cuidadosamente, en la mayoría de los casos todo lo que necesitas es modificar un poco la disposición de tus dispositivos o el servidor.

  Now, once that is tackled, you have the opportunity to specify whole
  package groups from which you'd generally like to install packages,
  then fine-tune your coarse selection by (de)selecting individual
  packages from the groups you have chosen.
  Any packages in the BASE category should stay selected under all
  circumstances, and you should select any other group which contains a
  package you might need. Please note that the upcoming individual
  package selection screen will only offer packages which are in the
  categories you select here, so if you only select BASE, you won't be
  able to add any other packages than those in the BASE category.
  If you want to only select the bare minimum for installation, but be
  able to browse through all available packages nevertheless to see if
  anything interesting is there to add, you should select all package
  categories, but choose to NOT select all packages by default.
  The "Select all packages by default?" question can be easily
  misunderstood; Basically you are asked whether you want all the
  packages in the categories you just chose to be selected or not.
  If you select YES, the whole list of packages contained in the chosen
  categories will be displayed and selected, and your job will be to
  deselect what you do not want.
  If you select NO, the same list of packages will displayed, but only
  packages of the BASE category will be selected, and you'll have to
  explicitly select any other packages you want to install.
  Choosing NO helps to install a lean system!
  It is recommended that you install all the BASE packages, but not
  anything else at this point. Don't worry about getting all the
  packages you want - you can easily install more of them once the basic
  system boots by itself. The only exception to this rule is installing
  any packages you need for setting up internet connectivity. These
  packages usually are:
  dhcpcd (base)
         Add if your machine is a DHCP client.
  isdn4k-utils (network)
         Add if you use ISDN for dialup.
  ppp (base)
         Add if you use an analog modem for dialup.
  wvdial (network)
         Add if you'd like to have an easy frontend to analog modem
         dialup setup.
  rp-pppoe (base)
         Add if you use DSL for pseudo-dialup.
  The downloadable base ISO does not contain any packages but those in
  the BASE category, so be advised to get the full ISO if you need the
  ISDN packages or certain helper applications!
  Once you're done selecting the packages you need, leave the selection
  screen and continue to the next step, Install Packages.

Install Packages

  Install Packages will now install pacman and any other packages you
  selected with resolved dependencies onto your harddisk. Don't be
  surprised if more packages are installed than you selected! Those
  packages are dependencies for your selection, and the installer will
  not explicitly ask for permission to install these extra packages, as
  it assumes you know what you're doing.
  After the package selection, the installer will not check for free
  space on the target! This seemingly trivial task would eat up
  considerable time, and therefore the installer simply assumes to have
  enough free space on the target partition(s). In case it doesn't, the
  installation will fail in various funny ways. A df -h in another
  terminal might show that one or more of the targets mounted below /mnt
  have been filled up, causing mischief. Consider repartitioning or
  selecting a smaller set of packages.
  Error messages and debugging output is echoed as usual to terminal
  five (ALT-F5). During normal, successful operation, you shouldn't find
  much to read there, though. After the packages have been installed,
  proceed to the next step, Configure System.

Configure System

  Configure System allows you to edit the configuration files crucial
  for your newly installed system. Initially you will be asked whether
  to allow the hwdetect script to try and detect your hardware, and
  produce some (even more) sensible defaults for your configuration
  files. Unless you're having problems/crashes, you should let it have
  it's way, and work from what it generates.
  Answer the following questions about RAID, LVM and encrypted volumes
  with Yes, if your root partition resides on a RAID, LVM or encrypted
  volume, respectively, to automatically add the necessary HOOKS to the
  mkinitcpio.conf. Otherwise you will get a kernel panic during boot, as
  your root partition will not be accessible at the time of boot. Most
  people will answer these questions with No, though, and not waste a
  second thought about it.
  After this automatic preconfiguration you'll be asked for your
  favourite editor to use for manually fine-tuning the generated
  configuration files, either VIM or nano. When in doubt, choose nano.
  If you're in a real hurry, you may skip the following step of
  reviewing the configuration entirely and hope the defaults will work
  for you, but it's strongly recommended to iterate through the list of
  configuration files presented here and review the settings carefully.
  Please refer to the System Configuration section for detailed
  descriptions of the various files.

Install Kernel

  Install Kernel will ask you which kernel image to install on your hard
  drive.
  2.6
         Install the stock 2.6 kernel with SCSI/SATA/IDE support. What
         exactly will be supported by the kernel during boot depends on
         how you configured your initial ramdisk, but the default has
         support for practically all SCSI, SATA, and IDE systems. See
         the System Configuration section for more information about the
         new initramfs, especially the potential pitfalls with the new
         PATA and ide legacy drivers.
  Please note that this release of Arch Linux only offers one kernel to
  install, as flexibility has now been put into the initramfs created by
  the mkinitcpio tool.
  The CD-ROM includes the 2.6.21.1 kernel. If you are using the FTP
  Installation method, the kernel about to be installed will be the
  current version waiting on your FTP source, and might therefore
  introduce changes and/or incompatibilities unknown at the present
  time. This is unlikely, but keep this in mind.

Install Bootloader

  Install Bootloader will install a bootloader on your hard drive,
  either GRUB (recommended) or LILO, depending on your personal
  preference.
  Before installing the bootloader, the setup script will want you to
  examine the appropriate configuration file to confirm the proper
  settings. Make sure you know what your root (and /boot, if you have
  it) partitions are.
  If you choose to install LILO, the bootloader will be automatically
  installed according to your settings in the configuration file, whilst
  GRUB demands the selection of a partition to install the bootloader
  to. Here you should choose what you would enter as the boot option of
  LILO, which is usually the entry named /dev/hda, as it refers the
  master boot record of the first hard disk. Detailed error messages can
  be found as usual on VC5 (virtual console 5), if anything goes wrong.
  If you plan on setting up a multiboot system, it might be a better
  option to install the bootloader in your root or /boot partition, and
  refer to that boot sector from whatever other boot loader you want to
  reside in the master boot record.
  Installing a boot loader in the MBR will relentlessly overwrite any
  existing bootloader! Make sure you understand the implications of that
  if you're running a multiboot system, or want to preserve an installed
  bootloader from another OS!

Exit Install

  Exit Install now, remove the CD from the drive, type reboot at the
  command line and cross your fingers!
  If your system boots up, you can log in as root without any password,
  so your first things to do are setting a password for root with the
  passwd command once you're logged in, add a user as outlined in the
  User Management section, and set up your Internet Connection.
  Congratulations! Now you can proceed getting into the nitty-gritty of
  configuring the interesting parts of your system, and adapt it to your
  needs!

System Configuration

  These are the core configuration files for Arch Linux. You should be
  comfortable hand-editing these files with a text-editor, because there
  aren't any GUI apps to help you out. Only the most basic configuration
  files are listed here. If you need help configuring a specific
  service, please read the appropriate manpage or refer to any online
  documentation you need. In many cases, the Archlinux Wiki and forums
  are a rich source for help as well.
  Arch Linux does not use any abstraction layers to administrate your
  system. As a result, you can usually stick to any instructions
  published by the author of a software, or whatever you find in a
  search engine of your choice, and it'll work out without confusing
  your system, because your system just does not care.

Configuration Files

  Before attempting to boot your newly installed system, you should at
  least glance over these files and make sure they are not too far off
  the mark.
  List of Configuration Files
   1. Setup-relevant configuration files:
   2. /etc/rc.conf
   3. /etc/hosts
   4. /etc/fstab
   5. /etc/mkinitcpio.conf
   6. /etc/modprobe.conf
   7. /etc/resolv.conf
   8. /etc/locale.gen
   9. /boot/grub/menu.lst
  10. /etc/lilo.conf
  11. Additional configuration files:
  12. /etc/conf.d/*
  13. /etc/profile
   /etc/rc.conf
  This is the main configuration file for Arch Linux. It allows you to
  set your keyboard, timezone, hostname, network, daemons to run and
  modules to load at bootup, profiles, and more. You should read through
  all the settings in this file and make sure you understand them, and
  change them where appropriate:
  LOCALE
         This sets your system language, which will be used by all
         i18n-friendly applications and utilities. See locale.gen below
         for available options. This setting's default is fine for US 
         English users.
  HARDWARECLOCK
         Either UTC if your BIOS clock is set to UTC, or localtime if
         your BIOS clock is set to your local time. If you have an OS
         installed which cannot handle UTC BIOS times correctly, like
         Windows, choose localtime here, otherwise you should prefer
         UTC, which makes daylight savings time a non-issue and has a
         few other positive aspects.
  TIMEZONE
         Specifies your time zone. Possible time zones are the relative
         path to a zoneinfo file starting from the directory
         /usr/share/zoneinfo. For example, a german timezone would be
         Europe/Berlin, which refers to the file
         /usr/share/zoneinfo/Europe/Berlin. If you don't know the exact
         name of your timezone file, worry about it later.
  KEYMAP
         Defines the keymap to load with the loadkeys program on bootup.
         Possible keymaps are found in /usr/share/kbd/keymaps. Please
         note that this setting is only valid for your TTYs, not any
         graphical window managers or X! Again, the default is fine for
         US users.
  CONSOLEFONT
         Defines the console font to load with the setfont program on
         bootup. Possible fonts are found in
         /usr/share/kbd/consolefonts.
  CONSOLEMAP
         Defines the console map to load with the setfont program on
         bootup. Possible maps are found in /usr/share/kbd/consoletrans.
         You will want to set this to a map suitable for your locale
         (8859-1 for Latin1, for example) if you're using an utf8 locale
         above, and use programs that generate 8-bit output. If you're
         using X11 for everyday's work, don't bother, as it only affects
         the output of linux console applications.
  USECOLOR
         Enable (or disable) colorized status messages during boot-up.
  MOD_AUTOLOAD
         If set to "yes", Arch will scan your hardware at bootup and
         attempt to automatically load the proper modules for your
         system. This is done with the hwdetect utility.
  MOD_BLACKLIST
         This is an array of modules that you do not want to be loaded
         at bootup. For example, if you don't want that annoying PC
         speaker, you could blacklist the pcspkr module.
  MODULES
         In this array you can list the names of modules you want to
         load during bootup without the need to bind them to a hardware
         device as in the modprobe.conf. Simply add the name of the
         module here, and put any options into the modprobe.conf if need
         be. Prepending a module with a bang ('!') will not load the
         module during bootup (this is not the same as MOD_BLACKLIST!),
         thus allowing to "comment out" certain modules if necessary. A
         benefit of specifying networking modules here is that ethernet
         cards covered by the listed modules will always be detected in
         the order the modules are listed. This prevents the dreaded
         interface confusion where your ethernet hardware is assigned to
         seemingly random interfaces after each boot. An even better way
         to handle this is using static interface labels by configuring
         udev appropriately, though.
  USELVM
         Set to "YES" to run a vgchange during sysinit, thus activating
         any LVM groups. If you have no idea what this means, don't
         bother.
  HOSTNAME
         Set this to the hostname of the machine, without the domain
         part. This is totally your choice, as long as you stick to
         letters, digits and a few common special characters like the
         dash. Don't be too creative here, though, and when in doubt,
         use the default.
  INTERFACES
         Here you define the settings for your networking interfaces.
         The default lines and the included comments explain the setup
         well enough. If you do not use DHCP to configure a device, just
         keep in mind that the value of the variable (whose name must be
         equal to the name of the device which is supposed to be
         configured) equals the line which would be appended to the
         ifconfig command if you were to configure the device manually
         in the shell.
  ROUTES
         You can define your own static network routes with arbitrary
         names here. Look at the example for a default gateway to get
         the idea. Basically the quoted part is identical to what you'd
         pass to a manual route add command, therefore reading man route
         is recommended if you don't know what to write here, or simply
         leave this alone.
  NET_PROFILES
         Enables certain network profiles at bootup. Network profiles
         provide a convenient way of managing multiple network
         configurations, and are intended to replace the standard
         INTERFACES/ROUTES setup that is still recommended for systems
         with only one network configuration. If your computer will be
         participating in various networks at various times (eg, a
         laptop) then you should take a look at the
         /etc/network-profiles/ directory to set up some profiles. There
         is a template file included there that can be used to create
         new profiles.
  DAEMONS
         This array simply lists the names of those scripts contained in
         /etc/rc.d/ which are supposed to be started during the boot
         process. If a script name is prefixed with a bang (!), it is
         not executed. If a script is prefixed with an "at" symbol (@),
         then it will be executed in the background, ie. the startup
         sequence will not wait for successful completion before
         continuing. Usually you do not need to change the defaults to
         get a running system, but you are going to edit this array
         whenever you install system services like sshd, and want to
         start these automatically during bootup. This is basically
         Arch's way of handling what others handle with various symlinks
         to an init.d directory.
   /etc/hosts
  This is where you stick hostname/ip associations of computers on your
  network. If a hostname isn't known to your DNS, you can add it here to
  allow proper resolving, or override DNS replies. You usually don't
  need to change anything here, but you might want to add the hostname
  and hostname + domain of the local machine to this file, resolving to
  the IP of your network interface. Some services, postfix for example,
  will bomb otherwise. If you don't know what you're doing, leave this
  file alone until you read man hosts.
   /etc/fstab
  Your filesystem settings and mountpoints are configured here. The
  installer should have created the necessary entries for you, but you
  should look over it and make sure it's right, especially when using an
  encrypted root device, LVM or RAID.
  With the current kernel, an important change has been introduced
  pertaining to the ATA/IDE subsystem. The new pata (Parallel ATA)
  drivers replace the legacy IDE subsystem, and one important change is
  that the naming scheme for IDE disks has changed from the old hda,
  hdb, etc. to also use device names of the type sda, sdb, etc, just
  like SCSI and SATA devices do. Because of this, when using the new
  pata driver in the HOOKS of the /etc/mkinitcpio.conf, remember to use
  the appropriate device names in your /etc/fstab and bootloader
  configuration! Alternatively, you could use the /dev/disk/by-uuid/...
  or /dev/disk/by-label/... representations of your disk drives where
  available to make absolutely sure you're referring to the right
  partitions, and save yourself the trouble of sorting out whether
  you're supposed to use sda or hda. If that's not an option, here's the
  rundown; If you're using pata instead of ide in the HOOKS array of the
  /etc/mkinitcpio.conf, you'll be using the sd? names. If not, use the
  old style hd? names. It is therefore crucial to check the HOOKS array
  in the /etc/mkinitcpio.conf, to be able to adapt the other files
  accordingly.
   /etc/mkinitcpio.conf
  This file allows you to fine-tune the initial ramdisk (also commonly
  referred to as the "initrd") for your system. The initrd is a gzipped
  image that is read by the kernel during bootup. The purpose of the
  initrd is to bootstrap the system to the point where it can access the
  root filesystem. This means it has to load any modules that are
  required to "see" things like IDE, SCSI, or SATA drives (or USB/FW, if
  you are booting off a USB/FW drive). Once the initrd loads the proper
  modules, either manually or through udev, it passes control to the
  Arch system and your bootup continues. For this reason, the initrd
  only needs to contain the modules necessary to access the root
  filesystem. It does not need to contain every module you would ever
  want to use. The majority of your everyday modules will be loaded
  later on by udev, during the init process.
  By default, mkinitcpio.conf is configured to provide all known modules
  for IDE, SCSI, or SATA systems through so-called HOOKS. This means the
  default initrd should work for almost everybody. The downside to this
  is that there are many modules loaded that you will not need. This is
  easily visible by examining your module table after booting up (with
  the lsmod command). While this doesn't actually hurt anything, some
  people find it annoying. To cull this list down to only what you
  actually need, you can edit mkinitcpio.conf and remove the subsystem
  HOOKS (ie, IDE, SCSI, RAID, USB, etc) that you don't need.
  You can customize even further by specifying the exact modules you
  need in the MODULES array and remove even more of the hooks, but take
  heed to the comments in the file, as this is a touchy place to go
  crazy with removing entries!
  If you're using RAID or encryption on your root filesystem, then
  you'll have to tweak the RAID/CRYPT settings near the bottom. See the
  wiki pages for RAID/LVM, filesystem encryption, and mkinitcpio for
  more info.
  When you're finished tweaking mkinitcpio.conf, you must run mkinitcpio
  -p kernel26 as root to regenerate the images, unless you're still
  installing the system; In that case this step will be done
  automatically after choosing Install Kernel later in the process.
  WARNING: If you fail to set up your mkinitcpio.conf correctly, your
  system will not boot! For this reason, you should be especially
  careful when tweaking this file.
  If you do manage to render your system unbootable, you can try using
  the fallback image that is installed alongside the stock kernel. A
  boot option for this is included in the default GRUB and LILO 
  configuration.
  Read the warning about the pata transition problems elaborated in the
  fstab section carefully!
   /etc/modprobe.conf
  This tells the kernel which modules it needs to load for system
  devices, and what options to set. For example, to have the kernel load
  your Realtek 8139 ethernet module when it starts the network (ie.
  tries to setup eth0), use this line:

alias eth0 8139too

  The syntax of this file is nearly identical to the old modules.conf
  scheme, unless you use some of the more exotic options like
  post-install. Then you should invest a little time into reading man
  modprobe.conf.
  Most people will not need to edit this file.
   /etc/resolv.conf
  Use this file to manually setup your nameserver(s) that you want to
  use. It should basically look like this:

search domain.tld nameserver 192.168.0.1 nameserver 192.168.0.2

  Replace domain.tld and the ip addresses with your settings. The
  so-called search domain specifies the default domain that is appended
  to unqualified hostnames automatically. By setting this, a ping myhost
  will effectively become a ping myhost.domain.tld with the above
  values. These settings usually aren't mighty important, though, and
  most people should leave them alone for now. If you use DHCP, this
  file will be replaced with the correct values automatically when
  networking is started, meaning you can and should happily ignore this
  file.
   /etc/locale.gen
  This file contains a list of all supported locales and charsets
  available to you. When choosing a LOCALE in your /etc/rc.conf or when
  starting a program, it is required to uncomment the respective locale
  in this file, to make a "compiled" version available to the system,
  and run the locale-gen command as root to generate all uncommented
  locales and put them in their place afterwards. You should uncomment
  all locales you intend to use.
  During the installation process, you do not need to run locale-gen
  manually, this will be taken care of automatically after saving your
  changes to this file.
  By default, all locales are commented out, including the default
  en_US.utf8 locale referred to in the /etc/rc.conf file. To make your
  system work smoothly, you must edit this file and uncomment at least
  the one locale you're using in your rc.conf.
    _________________________________________________________________
   /boot/grub/menu.lst
  GRUB is the default bootloader for Arch Linux. You should check and
  modify this file to accomodate your boot setup if you want to use
  GRUB, otherwise read on about the LILO configuration.
  Make sure you read the warning regarding the pata transition
  elaborated on in the fstab section!
  Configuring GRUB is quite easy, the biggest hurdle is that it uses yet
  another device naming scheme different from /dev; Your hard disks as a
  whole are referred to as (hd0), (hd1), etc., sequentially numbered in
  order of appearance on the IDE/SCSI bus, just like the hda, hdb, etc.
  names in Linux. The partitions of a disk are referred to with (hd0,0),
  (hd0,1) and so on, with 0 meaning the first partition. A few
  conversion examples are included in the default menu.lst to aid your
  understanding.
  Once you grasped the concept of device naming, all you need to do is
  to choose a nice title for your boot section(s), supply the correct
  root partition device as a parameter to the root option to have it
  mounted as / on bootup, and create a kernel line that includes the
  partition and path where the kernel is located as well as any boot
  parameters. If using the stock Arch 2.6.x kernel, you'll also need an
  initrd line that points to the kernel26.img file in your /boot
  directory. The path you put on your initrd line should be the same as
  the path to vmlinuz26 that you provide on the kernel line. You should
  be fine with the defaults, just check whether the partition
  information is correct in the root and kernel lines, especially in
  regard to the pata issue!
  To create a boot option that loads the bootsector of a different OS,
  the following example might be helpful. You will probably succeed in
  starting any Microsoft-based operating system with it, just add this
  block to the file after any other sections, and modify the partition
  device accordingly to refer to the partition containing the bootsector
  of the OS you are intending to boot.
  1. (1) Other OS

title My Other OS rootnoverify (hd0,1) makeactive chainloader +1

  For advanced configuration of other OSes, please refer to the online
  GRUB manual.
  After checking your bootloader configuration for correctness, you'll
  be prompted for a partition to install the loader to. Unless you're
  using yet another boot loader, you should install GRUB to the MBR of
  the installation disk, which is usually represented by the appropriate
  device name without a number suffix.
   /etc/lilo.conf
  This is the configuration file for the LILO bootloader. Make sure you
  check this one and get it right if you want to use LILO to boot your
  system. See LILO documentation for help on this.
  Things you should check are the root= lines in the image sections and
  the boot= line right at the beginning of the file. The root lines
  specify the device which shall be mounted as the root filesystem on
  bootup. If you don't know what is supposed to be entered here, change
  to another terminal and type mount to see a list of all currently
  mounted drives, and look for the line which displays a device name
  mounted on /mnt type [...]. The device path at the beginning of this
  very line should be entered in the root lines of your lilo.conf.
  Change if necessary, and keep the pata issue in mind!
  The boot line should be okay by default in most cases. Unless you have
  a weird boot manager setup in mind with multiple OSes, the device
  referenced here should be having the same prefix your root lines have,
  but not end with a number. For example, a root of /dev/hda3 means you
  probably want to install LILO into the Master Boot Record of the hard
  disk, so you would set boot to /dev/hda, which references the disk as
  a whole. During installation, the boot device must be the current name
  of the device where you want to write the boot sector to; This may
  differ from the name of the device after the first boot, thanks to the
  pata transition! Check carefully what device to write to during the
  installation stage, for example with the mount command.
  To prevent some serious grief, you should make sure you know how to
  restore the bootsector of your other OSes, for example with Windows's
  FIXBOOT/FIXMBR tools.
  To be on the safe side, you should keep the option lba32 listed. This
  will prevent some geometry issues from happening.
  In some cases, depending on your BIOS, LILO will not run on bootup and
  spill out an error code infinitely. In most cases you either removed
  the lba32 option, or your hardware setup is a little special, meaning
  that maybe your CD-ROM drive is primary master and the hard disk you
  installed secondary slave. This can very well confuse your BIOS, and
  thus stop the boot process. To prevent that you can try and make the
  install drive the primary master on your IDE bus. If you've got a
  mixed IDE and SCSI system and the problem persists, you'll probably
  need some experimentation with the disk and bios options of LILO to
  provide a working mapping; The disk drives in your system are numbered
  sequentially by your BIOS, starting with 0x80. If you're lucky your
  SCSI controller tells you which drive has which BIOS ID, but usually
  you're not. How the drives are effectively numbered is depending on
  your BIOS, so in the worst case you can only guess until it works. A
  typical disk line would look like this:

boot=/dev/hda disk=/dev/hda bios=0x80

  The disk option maps a BIOS ID to the disk device known to linux. Note
  that there is still no guarantee that things will work as other things
  can be wrong, so do not despair if all your tries fail, but rather try
  rearranging your hardware in a way that's not totally odd. In this
  area too much can go wrong and needs special handling to be explained
  here. In most cases the lba32 option will suffice anyway. Old hard
  drives will usually need a little more special care until they do as
  told.
  Don't become fidgety when reading this section, I (Dennis) just
  happened to stumble over this problem when experimenting with a rather
  odd system, and figured it'd be a good idea to mention this show
  stopper and workarounds here. You probably won't ever experience this,
  as you should be using GRUB anyway.
  How to recreate a LILO boot sector with only a rescue disk is
  explained later in this document.
   /etc/conf.d/*
  During setup, this is totally unimportant. Consider this as reference
  for the interested.
  Some daemon scripts will have a matching configuration file in this
  directory that contains some more-or-less useful default values. When
  a daemon is started, it will first source the settings from it's
  config file within this directory, and then source the /etc/rc.conf.
  This means you can easily centralize all your daemon configuration
  options in your /etc/rc.conf simply by setting an appropriate variable
  value, or split up your configuration over multiple files if you
  prefer a decentralized approach to this issue. Isn't life great if
  it's all just simple scripting?
   /etc/profile
  This script is run on each user login to initialize the system. It is
  kept quite simple under Arch Linux, as most things are. You may wish
  to edit or customize it to suit your needs.

Boot Scripts

  Arch Linux uses a fairly simple bootup sequence quite similar to
  *BSDs. The first boot script to run is /etc/rc.sysinit. When it's
  done, /etc/rc.multi will be called (in a normal bootup). The last
  script to run will be /etc/rc.local. When started in runlevel 1, the
  single user mode, the script /etc/rc.single is run instead of
  /etc/rc.multi. You will not find an endless symlink collection in the
  /etc/rc?.d/ directories to define the bootup sequence for all possible
  runleves. In fact, due to this approach Arch only really has three
  runlevels, if you take starting up X in runlevel 5 into account. The
  boot scripts are using the variables and definitions found in the
  /etc/rc.conf file and also a set of general functions defined in the
  /etc/rc.d/functions script. If you plan to write your own daemon
  files, you should consider having a look at this file and existing
  daemon scripts.
  Boot Script Overview
   1. /etc/rc.sysinit
   2. /etc/rc.single
   3. /etc/rc.multi
   4. /etc/rc.local
   5. /etc/rc.shutdown
   6. /etc/rc.local.shutdown
   7. /etc/rc.d/*
   /etc/rc.sysinit
  The main system boot script. It does boot-critical things like
  mounting filesystems, running udev, activating swap, loading modules,
  setting localization parameters, etc. You will most likely never need
  to edit this file!
   /etc/rc.single
  Single-user startup. Not used in a normal boot-up. If the system is
  started in single-user mode, for example with the kernel parameter 1
  before booting or during normal multi-user operation with the command
  init 1, this script makes sure no daemons are running except for the
  bare minimum; syslog-ng and udev. The single-user mode is useful if
  you need to make any changes to the system while making sure that no
  remote user can do anything that might cause data loss or damage.
  For desktop users, this mode usually is useless as crud. You should
  have no need to edit this script, either.
   /etc/rc.multi
  Multi-user startup script. It starts all daemons you configured in the
  DAEMONS array (set in /etc/rc.conf) after which it calls
  /etc/rc.local. You shouldn't feel a pressing need to edit this file.
   /etc/rc.local
  Local multi-user startup script. It is a good place to put any
  last-minute commands you want the system to run at the very end of the
  bootup process. This is finally the one and only script you should
  modify if needed, and you have total freedom on what to add to this
  script.
  Most common system configuration tasks, like loading modules, changing
  the console font or setting up devices, usually have a dedicated place
  where they belong. To avoid confusion, you should make sure that
  whatever you intend to add to your rc.local isn't feeling just as home
  in /etc/profile.d/ or any other already existant config location
  instead.
   /etc/rc.shutdown
  System shutdown script. It stops daemons, unmounts filesystems,
  deactivates the swap, etc. Just don't touch.
   /etc/rc.local.shutdown
  Analogous to the /etc/rc.local file, this file may contain any
  commands you want to run right before the common rc.shutdown is
  executed. Please note that this file does not exist by default, and
  for it to work properly, it must be set as executable.
   /etc/rc.d/*
  This directory contains the daemon scripts referred to from the
  rc.conf's DAEMONS array. In addition to being called on bootup, you
  can use these scripts when the system is running to manage the
  services of your system. For example the command
  1. /etc/rc.d/postfix stop
  will stop the postfix daemon. Of course a script only exists when the
  appropriate package has been installed (in this case postfix). With a
  basic system install, you don't have many scripts in here, but rest
  assured that all relevant daemon scripts end up here. This directory
  is pretty much the equivalent to the /etc/rc3.d/ or /etc/init.d/
  directories of other distributions, without all the symlink hassle.

User Management

  Users and groups can be added and deleted with the standard commands
  provided in the util-linux package: useradd, userdel, groupadd,
  groupdel, passwd, and gpasswd. The typical way of adding a user is
  similar to this procedure:
  1. useradd -m -s /bin/bash johndoe
  2. passwd johndoe
  The first command will add the user named johndoe to the system,
  create a home directory for him at /home/johndoe, and place some
  default login files in his home directory. It will also set his login
  shell to be /bin/bash. The second command will ask you for a password
  for the johndoe user. A password is required to activate the account.
  As an alternative to the useradd command, the adduser script is also
  available to interactively create new users on your system simply by
  answering questions.
  See the manpages for more information on the remaining commands. It is
  a good idea to create one or multiple normal users for your day-to-day
  work to fully use the available security features and minimize
  potential damage that may be the result of using the root user for
  anything but system administration tasks.

Internet Access

  Due to a lack of developers for dialup issues, connecting Arch to the
  Internet with a dialup line is requiring a lot of manual setup. If at
  all possible, set up a dedicated router which you can then use as a
  default gateway on the Arch box.
  There are quite a few dialup related documents in the Arch Linux Wiki
   Analog Modem
  To be able to use a Hayes-compatible, external, analog modem, you need
  to at least have the ppp package installed. Modify the file
  /etc/ppp/options to suit your needs and according to man pppd. You
  will need to define a chat script to supply your username and passwort
  to the ISP after the initial connection has been established. The
  manpages for pppd and chat have examples in them that should suffice
  to get a connection up and running if you're either experienced or
  stubborn enough. With udev, your serial ports usually are /dev/tts/0
  and /dev/tts/1.
  Instead of fighting a glorious battle with the plain pppd, you may opt
  to install wvdial or a similar tool to ease the setup process
  considerably.
  In case you're using a so called WinModem, which is basically a PCI
  plugin card working as an internal analog modem, you should indulge in
  the vast information found on the LinModem homepage.
   ISDN
  Setting up ISDN is done in three steps:
   1. Install and configure hardware
   2. Install and configure the ISDN utilities
   3. Add settings for your ISP
  The current Arch stock kernels include the necessary ISDN modules,
  meaning that you won't need to recompile your kernel unless you're
  about to use rather odd or old ISDN hardware. After physically
  installing your ISDN card in your machine or plugging in your USB
  ISDN-Box, you can try loading the modules with modprobe. Nearly all
  passive ISDN PCI cards are handled by the hisax module which needs two
  parameters; type and protocol. You must set protocol to '1' if your
  country uses the 1TR6 standard, '2' if it uses EuroISDN (EDSS1), '3'
  if you're hooked to a so called leased-line without D-channel, and '4'
  for US NI1.
  Details on all those settings and how to set them is included in the
  kernel documentation, more specifically in the isdn subdirectory,
  available online. The type parameter depends on your card; A list of
  all possible types is to be found in the README.HiSax kernel
  documentation. Choose your card and load the module with the
  appropriate options like this:
  1. modprobe hisax type=18 protocol=2
  This will load the hisax module for my (Dennis) ELSA Quickstep
  1000PCI, being used in Germany with the EDSS1 protocol. You should
  find helpful debugging output in your /var/log/everything.log file in
  which you should see your card being prepared for action. Please note
  that you will probably need to load some usb modules before you can
  work with an external USB ISDN Adapter.
  Once you confirmed that your card works with certain settings, you can
  add the module options to your /etc/modprobe.conf:

alias ippp0 hisax options hisax type=18 protocol=2

  Alternatively you can only add the options line here, and add hisax to
  your MODULES array in the rc.conf. Your choice, really, but this
  example has the advantage that the module will not be loaded until
  it's really needed.
  That being done you should have working, supported hardware. Now you
  need the basic utilities to actually use it!
  Install the isdn4k-utils package, and read the manpage to isdnctrl,
  it'll get you started. Further down in the manpage you will find
  explanations on how to create a configuration file that can be parsed
  by isdnctrl, as well as some helpful setup examples.
  Please note that you have to add your SPID to your MSN setting
  seperated by a colon if you use US NI1.
  After you configured your ISDN card with the isdnctrl utility, you
  should be able to dial into the machine you specified with the
  PHONE_OUT parameter, but fail the username and password
  authentication. To make this work add your username and password to
  /etc/ppp/pap-secrets or /etc/ppp/chap-secrets as if you were
  configuring a normal analogous PPP link, depending on which protocol
  your ISP uses for authentication. If in doubt, put your data into both
  files.
  If you set up everything correctly, you should now be able to
  establish a dialup connection with isdnctrl dial ippp0 as root. If you
  have any problems, remember to check the logfiles!
   DSL (PPPoE)
  These instructions are only relevant to you if your PC itself is
  supposed to manage the connection to your ISP. You do not need to do
  anything but define a correct default gatewayif you are using a
  seperate router of some sort to do the grunt work.
  Before you can use your DSL online connection, you will have to
  physically install the network card that is supposed to be connected
  to the DSL-Modem into your computer. After adding your newly installed
  network card to the modprobe.conf or the MODULES array, you should
  install the rp-pppoe package and run the pppoe-setup script to
  configure your connection. After you have entered all required data,
  you can connect and disconnect your line with
  1. /etc/rc.d/adsl start
  and
  1. /etc/rc.d/adsl stop
  respectively. The setup usually is rather easy and straightforward,
  but feel free to read the manpages for hints. If you want to
  automatically dial in on bootup, add adsl to your DAEMONS array.

Package Management

Pacman

  pacman is the package manager which tracks all the software installed
  on your system. It has simple dependency support and uses the standard
  gzipped tar archive format for all packages. Some common tasks are
  explained below with the respective commands in long and short option
  form. For an up to date explanation of pacman's options, read man
  pacman. This overview is merely scratching the surface of pacman's
  current capabilities.
  Typical tasks:
   1. Adding a new package with a package file
   2. Upgrading a package with a package file
   3. Removing packages
   4. Refreshing the package list
   5. Upgrading the system
   6. Adding/Upgrading a package from the repositories
   7. List installed packages
   8. Check if a specific package is installed
   9. Display specific package info
  10. Display list of files contained in package
  11. Find out which package a specific file belongs to
   Adding a new package with a package file
  1. pacman --add foo.pkg.tar.gz
  2. pacman -A foo.pkg.tar.gz
  This will install the foo.pkg.tar.gz package on the system. If
  dependencies are missing, pacman will exit with an error and report
  the missing deps, but not attempt to resolve the dependencies
  automatically. Look at the --sync option if you expect this
  functionality. Adding multiple package files is possible, and if the
  listed files depend on each other, the packages will be automatically
  installed in the correct order.
   Upgrading a package with a package file
  1. pacman --upgrade foo.pkg.tar.gz
  2. pacman -U foo.pkg.tar.gz
  This does essentially the same as the --add operation, but will
  additionally upgrade an already-installed package at no extra cost. I
  can personally not imagine a case where you'd prefer --add over this
  --upgrade function, unless you want pacman to exit if a package is
  already installed.
   Removing packages
  1. pacman --remove foo
  2. pacman -R foo
  This will remove all files belonging to the package named foo, except
  for configuration files that have been edited. Only supply the name of
  the package to this command, without the pkg.tar.gz suffix.
  To remove any and all trace of a package, add the --nosave option to
  the above command.
   Refreshing the package list
  1. pacman --sync --refresh
  2. pacman -Sy
  This will retrieve a fresh master package list from the repositories
  defined in the /etc/pacman.conf file and uncompress it into the
  database area. You should use this before using --sysupgrade to make
  sure you get the newest packages. Depending on your pacman.conf
  settings, this command may require a working internet connection to
  access FTP/HTTP-based repositories. This option is quite similar to
  Debian's apt-get update command.
   Upgrading the system
  1. pacman --sync --sysupgrade
  2. pacman -Su
  This command will upgrade all packages that are out-of-date on your
  system by comparing the local package version to the versions in the
  master package list that gets downloaded with the --refresh command.
  It's a good idea to run this regularly to keep your system up to date.
  Note that this command does NOT implicitly refresh the master package
  list, so it's usually wiser to combine both commands into one like
  this:
  1. pacman --sync --refresh --sysupgrade
  2. pacman -Syu
  With these options pacman will automatically retrieve the current
  master package list and do a full system upgrade to the latest
  packages with all dependencies being automagically resolved. You will
  want to run this quite often.
   Adding/Upgrading a package from the repositories
  1. pacman --sync foo
  2. pacman -S foo
  Retrieve and install package foo, complete with all dependencies it
  requires. Before using any sync option, make sure you refreshed the
  package list, or add --refresh or -y to the options to do it before
  the installation attempt. Unlike --add, the --sync option does not
  differ between installing and upgrading packages. Depending on your
  pacman.conf settings this function requires working internet access.
  Receiving strange errors when downloading packages from the server,
  ie. broken downloads or files that aren't found, usually are either
  caused by not refreshing the package list with --sync, or if you're
  unlucky enough to try downloading from a mirror while it's synching
  it's contents, and is thusly in an inconsistent state.
   List installed packages
  1. pacman --query
  2. pacman -Q
  Displays a list of all installed packages in the system.
   Check if a specific package is installed
  1. pacman --query foo
  2. pacman -Q foo
  Instead of grepping the full list for a name, you can append the name
  of the package you are looking for to the query command. This command
  will display the name and version of the foo package if it is
  installed, nothing otherwise.
   Display specific package info
  1. pacman --query --info foo
  2. pacman -Qi foo
  Displays information on the installed package foo (size, install date,
  build date, dependencies, conflicts, etc.). To display this
  information for a package file that is not yet installed, add the
  --file or -p option, respectively:
  1. pacman --query --info --file foo.pkg.tar.gz
  2. pacman -Qip foo.pkg.tar.gz
   Display list of files contained in package
  1. pacman --query --list foo
  2. pacman -Ql foo
  Lists all files belonging to package foo.
   Find out which package a specific file belongs to
  1. pacman --query --owns /path/to/file
  2. pacman -Qo /path/to/file
  This query displays the name and version of the package which contains
  the file referenced by it's full path as a parameter. Just using the
  file name without the path will not yield results.

Accessing Repositories

  A package repository is a collection of packages and a package
  meta-info file that can reside in a local directory or on a remote
  FTP/HTTP server. The default repository for an Arch system is the
  current repository. This is kept up to date by developers with the
  latest version of most software and stays fairly bleeding-edge.
  Many users also choose to activate the extra package repository which
  contains more packages that are not part of Arch's core package set.
  You can activate this repo by uncommenting the appropriate lines in
  your /etc/pacman.conf. This repository is activated by default.
  You can also build, maintain and use your own package repositories.
  See the pacman manpage for instructions.
  If you install from CD-ROM and end up having problems accessing the
  Internet, you may need to install additional packages from the CD.
  Refer to the FAQs, specifically FAQ #3 later in this document, to find
  out how to define a repository that uses the installation CD-ROM as a
  package source.

Arch Build System (ABS)

Binary vs. Source

  Where pacman is responsible for the binary side of the package world,
  ABS is responsible for the source side: It helps you to build your own
  custom packages from source code, also letting you rebuild Arch Linux
  packages with your own customizations. The procedure usually goes as
  follows:
   1. Synchronize your ABS tree with the server.
   2. Create a new directory in /var/abs/local/ named after the package
      you are going to create.
   3. Copy the PKGBUILD.proto prototype from /var/abs/ into your newly
      created directory, remove the .proto suffix, and edit it to fit
      the new package.
   4. Run makepkg in the working directory with the PKGBUILD file.
   5. Install the newly built package with pacman.
   6. Send the package to your friends for bragging rights (or give it
      to an Archer so s/he can stick it in the master ABS tree).

Synchronizing Your ABS Tree

  You can synchronize all the required package building files in
  /var/abs by running the abs script as root. It requires the cvsup
  package to operate and will complain if you don't have it installed. A
  working internet connection is also required, of course. Using CVS as
  the transfer medium allows you to follow different version trees
  within ABS - this can be configured in /etc/abs/supfile.arch. For
  example, the default supfile is set to track the current package tree,
  which is bleeding-edge and the recommended source to follow. You can
  also follow specific versions. See the comments in the supfiles for
  more info.
  ABS supports multiple repositories, which can be enabled or disabled
  in /etc/abs/abs.conf. By default, abs will follow the current and
  extra repositories, but not anything else.
  You will also see an /etc/abs/supfile.extra file. This will give you
  access to all the unofficial build scripts that were not included in
  the main ABS repository. If you do not want to use this repository,
  you can delete the file, but usually it makes more sense to edit
  abs.conf accordingly instead, and disable the repositories you don't
  need.

How to Build Packages

  The build process is thoroughly explained in the makepkg manpage. Read
  it for instructions on building your own packages. If that's not
  helping you, keep your eyes peeled for tutorials in the Wiki, or ask
  for help in the forums or IRC.

Package Guidelines

  When building package for Arch Linux, you should adhere to the package
  guidelines below, especially if you would like to contribute your new
  package to Arch Linux.
   Package Naming
    * Package names should consist of alphanumeric characters only; all
      letters should be lowercase.
    * Package versions should be the same as the version released by the
      author. Versions can include letters if need be (eg, nmap's
      version was 2.54beta32 a good while ago). Version tags may not include
      hyphens!  Letters, numbers, and periods only.
    * Package releases are specific to Arch Linux packages. These allow
      users to differentiate between newer and older package builds.
      When a new package version is first released, the release count
      starts at 1. Then as fixes and optimizations are made, the package
      will be re-released to the AL public and the release number will
      increment. When a new version comes out, the release count resets
      to 1. Package release tags follow the same naming restrictions as
      version tags.
   Directories
  Configuration files should be placed in the /etc directory. If there's
  more than one configuration file, it's customary to use a subdirectory
  in order to keep the /etc area as clean as possible. Use
  /etc/{pkgname}/ where {pkgname} is the name of your package (or a
  suitable alternative, eg, apache uses /etc/httpd/).
  Package files should follow these general directory guidelines:
  /etc             System-essential configuration files
  /usr/bin         Application binaries
  /usr/sbin        System binaries
  /usr/lib         Libraries
  /usr/include     Header files
  /usr/lib/{pkg}   Modules, plugins, etc.
  /usr/man         Manpages
  /usr/share/{pkg} Application data
  /etc/{pkg}       Configuration files for {pkg}
  /opt
  Packages that do not fit cleanly into Linux filesystem layout can be
  placed here. If a package's files can be cleanly placed into the above
  directories, then do so. If there are other high-level directories
  that do not fit, then you should use /opt.
  For example, the acrobat package has Browser, Reader, and Resource
  directories sitting at the same level as the bin directory. This
  doesn't fit into a normal Linux filesystem layout, so we place all the
  files in a subdirectory of /opt.
  Clear as mud? Good.
   makepkg Duties
  When you use makepkg to build a package for you, it does the following
  automatically:
   1. Checks if package dependencies are installed
   2. Downloads source files from servers
   3. Unpacks source files
   4. Does any necessary patching
   5. Builds the software and installs it in a fake root
   6. Removes /usr/doc, /usr/info, /usr/share/doc, and /usr/share/info
      from the package
   7. Strips symbols from binaries
   8. Strips debugging symbols from libraries
   9. Generates the package meta file which is included with each
      package
  10. Compresses the fake root into the package file
  11. Stores the package file in the configured destination directory
      (cwd by default)
   Other
  Do not introduce new variables into your PKGBUILD build scripts,
  unless the package cannot be built without doing so, as these could
  possibly conflict with variables used in makepkg itself. If a new
  variable is absolutely required, prefix the variable name with an
  underscore.
  Avoid using /usr/libexec/ for anything. Use /usr/lib/{pkgname}
  instead.
  The "Packager" field from the package meta file can be customized by
  the package builder by modifying the appropriate option in the
  /etc/makepkg.conf file, or alternatively by exporting the PACKAGER
  environment variable before building packages with makepkg:
  1. export PACKAGER="John Doe <your.email>"
   Submitting Packages
  If you'd like to submit packages, please take a look at the Arch User
  Repository and their guidelines. New packages should be submitted to
  the AUR.
  If you're submitting a package, please do the following:
   1. Please add a comment line to the top of your PKGBUILD file that
      follows this format:
  1. Contributor: Your Name <your.email>
   2. Verify the package dependencies (eg, run ldd on dynamic
      executables, check tools required by scripts, etc.). It's also a
      good idea to use the namcap utility, written by Jason Chu
      jason@archlinux.org, to analyze the sanity if your package. namcap
      will tell you about bad permissions, missing dependencies,
      un-needed dependencies, and other common mistakes. You can install
      the namcap package with pacman as usual.
   3. All packages should come as a compressed tar file containing a
      directory with the newly built package, the PKGBUILD, filelist,
      and additional files (patches, install, ...) in it. The archive
      name should at least contain the name of the package.
   4. Read the appropriate documents regarding the AUR, and the newest
      version of the packaging guildelines on the AUR Homepage.

Frequently Asked Questions

  The FAQs listed here are only covering any problems that may keep you
  from booting or installing an initial Arch Linux system. If you have
  questions regarding further usage of the system utilities, X11 setup,
  etc. or how to configure your hardware, please head over to the Wiki.
  If you think an issue is not covered here that should be, please
  notify the author of this document, whose address is to be found at
  the very top of this file.

During package installation, pacman fails to resolve dependencies for package A because package B is not in the package set

  Unless something is very broken and thus very likely to be reported by
  multiple people soon, you probably just forgot to mount your target
  partitions properly. This causes pacman to decompress the package
  database into the initial ramdisk, which fills up quite nicely and
  ultimatively leads to this error.
  Make sure that you use the DONE and not the CANCEL option offered by
  the Filesystem Mountpoints menu to apply your choices. This error
  should not happen if you use the Auto-Prepare feature; If it does
  nevertheless, please report this as a bug.

How can I install packages from the install CD with pacman --sync (so it resolves dependencies for me)?

  If you would rather have packages install from the CD instead of
  downloading them, then mount the install CD somewhere (eg. /mnt/cd)
  and add this line right below the [current] line in /etc/pacman.conf:

Server = file:///mnt/cd

  Replace /mnt/cd with the mountpoint you chose. Then use pacman --sync
  as you normally would - It will now check the /mnt/cd directory first
  for packages.

How can I create multiple swap partitions during the install?

  Naturally you won't be able to use the Auto-Prepare feature if you
  want to create and use multiple swap partitions. Create the partitions
  manually instead, and create as many swap partitions as your little
  heart desires. Go through the rest of the disk preparation steps,
  don't mind that you're only asked for one swap partition during the
  mount-point setting. Once you're through with the install and are
  about to edit your system configuration files, you can edit the fstab
  file and include a line for every swap device you created earlier.
  Simply copy the automatically generated swap line, and modify the
  referenced device according to your setup. The additional swaps will
  be activated after the bootup when swapon -a is being run by the
  initscripts. Make sure you ran mkswap on all of your swap partitions
  manually, or else your system will complain on bootup!
  If, for any odd reason, you can not wait until after the installation
  with activating multiple swap partitions or files, you will have to
  open a shell on one of the virtual terminals and issue the swapon
  <device> for every swap drive or file you partitioned/readied before
  with mkswap. Then continue as explained above with the install.
  In case you are honestly contemplating setting up multiple swap files
  or drives, you should keep in mind that a kernel that needs to swap is
  actually crying bitterly for more RAM, not more swap space. Please
  keep your penguin well fed. Thank you.

How do I reconfigure LILO from the rescue system?

  As a first step you simply boot from the Arch Install CD or disks. If
  your partitions are intact and don't need checking, you can try
  choosing one of the recovery boot options according to your partition
  layout, or fiddle with the GRUB boot manager settings on your own to
  get your existing system to boot properly. That will boot directly
  into your system, and you can skip all but the last step of actually
  reconfiguring and running LILO.
  If you cannot boot your old root directly, boot from the CD as if you
  were going to start an installation. Once you're in a shell, you mount
  the root partition of your harddisk into the /mnt directory, for
  example like this:
  1. mount /dev/hda3 /mnt
  Then you mount any other partitions to their respective mount points
  within that root of yours, for example a /boot partition:
  1. mount /dev/hda1 /mnt/boot
  Now you need to mount a /dev tree in the /mnt area, where LILO will be
  able to find it:
  1. /mnt/bin/mount --bind /dev /mnt/dev
  Once everything is mounted, make this /mnt directory your new root
  with the chroot /mnt command. This will start a new shell and drop you
  into the /mnt directory, which will be considered your / from then on.
  Now you can edit /etc/lilo.conf to your liking and run lilo to fix
  anything that needs fixing. Simply type exit when you want to break
  out of this root again, back into the original file tree. You can now
  reboot and test your changes.

I can't ssh into my machine!

  Edit your /etc/hosts.deny file. The default configuration will reject
  all incoming connections, not only ssh connections.

How should I load modules during boot now?

  If you want to load a module unconditionally without a specific device
  binding, add the name of the module to the MODULES array of your
  /etc/rc.conf. For on demand loading on device access, add it as usual
  with the alias and optioncommands to your /etc/modprobe.conf, in the
  rare cases that the automatisms employed by udev don't cut
  it. To pass any options to a module you want to load through the
  MODULES array, only add the appropriate options line to your
  /etc/modprobe.conf.

Kernel refuses to boot because of "lost interrupt"

  Kernel refuses to boot. It locks at:

IRQ probe failed for hda hda lost interrupt

  This or a similar error occurs for some HD controllers on kernel
  2.6.x. A workaround is to pass the acpi=off option to the kernel at
  boot time.

I get "access denied" errors trying to play music or read DVDs

  Add your user to the optical and audio groups.
  1. gpasswd -a johndoe optical
  2. gpasswd -a johndoe audio
  Logout, then login again as that user (eg. johndoe) so the group
  changes can take effect, and the device permissions shouldn't be a
  problem anymore.
  If you have a DVD drive, you may want to create a /dev/dvd symlink to
  your real DVD device. Usually udev does this for you already, but this
  will serve well as an example for setting up similar symlinks.
  For example, if your DVD drive is accessible through /dev/sdc, you can
  do the following as root:
  1. cat >>/etc/udev/rules.d/00.rules <<EOF

> KERNEL="sdc", NAME="sdc", SYMLINK="dvd" > EOF

  1. /etc/start_udev
  2. mount /dev/pts
  3. mount /dev/shm

Category:Consiguiendo e Instalando Arch