Difference between revisions of "Installation Chroot"

From ArchWiki
Jump to: navigation, search
(wikify some external links, use https for archlinux.org)
(seeing as how this is now the "official" way to do things, there's zero need for this article; redirect)
Line 1: Line 1:
[[Category:Getting and installing Arch]]
+
#REDIRECT[[Installation Guide]]
This article will detail the installation of Arch Linux from another GNU/Linux (kernel >= 2.6.27) with a chroot.
+
 
+
This article was originally published in the [http://wiki.archlinux.fr/Install_chroot ArchLinux.fr wiki].
+
A script doing all the steps described in this page is available at: [http://calimeroteknik.free.fr/arch-guide/install-chroot.sh install-chroot.sh] <br />
+
It is recommended to read the article.
+
 
+
== Requirement ==
+
 
+
To install ArchLinux you need some data :
+
 
+
{| class="wikitable"
+
!Variable
+
!Description
+
!Example
+
|-
+
|install_path
+
|You have to mount in this directory all the partitions that will be part of your system
+
|/mnt/newarch
+
|-
+
|arch
+
|Architecture of the system: (we can only install i686 from a i686 system)
+
|i686 or x86_64
+
|-
+
|mirror
+
|Miror of download: the list is available [https://archlinux.org/download/ here]
+
|http://mir.archlinux.fr
+
|-
+
|pacman_mirrorlist_ver
+
|Actual version of '''pacman-mirrorlist''', see [https://www.archlinux.org/packages/pacman-mirrorlist here].
+
|20110703-1
+
|}
+
<br />
+
You also need a minimal '''chroot'''. You can find an archive matching your achitecture [http://mir.archlinux.fr/~tuxce/chroot/ here].<br />
+
+
You can export variable with this command, for example :
+
export install_path="/mnt/newarch"
+
 
+
{{warning|This method works only to install a system with the same architecture as the host system or to install a 32 bits system with a 64 bits host system.}}
+
 
+
Before we begin, we will create the {{ic|tmp}} directory in the new architecture in order to put it temporary files. In {{ic|$install_path}}:
+
mkdir tmp
+
chmod 1777 tmp
+
 
+
== Base system creation ==
+
 
+
We need to download the archive and the package {{ic|pacman-mirrorlist}}:
+
cd "$install_path"/tmp
+
wget "$mirror/core/os/$arch/pacman-mirrorlist-$pacman_mirrorlist_ver-any.pkg.tar.xz"
+
wget "http://mir.archlinux.fr/~tuxce/chroot/archlinux.chroot.$arch.tgz"
+
cd ..
+
tar xvf tmp/pacman-mirrorlist-$pacman_mirrorlist_ver-any.pkg.tar.xz
+
tar xvf tmp/archlinux.chroot.$arch.tgz
+
 
+
The mirror configuration file ({{ic|etc/pacman.d/mirrorlist}}) has all its lines commented, you have to uncomment at least one line, for example :
+
Server = http://mir.archlinux.fr/$repo/os/$arch
+
 
+
== Chroot preparation ==
+
 
+
=== The network ===
+
 
+
In order to have dns resolution, copy your {{ic|/etc/resolv.conf}} from the host system to the chroot :
+
cp /etc/resolv.conf etc/resolv.conf
+
 
+
=== Mount special file ===
+
 
+
We need to mount the special file system {{ic|/dev}}, {{ic|/proc}} and {{ic|/sys}} :
+
mount -o bind /proc "$install_path"/proc
+
mount -o bind /dev "$install_path"/dev
+
mount -o bind /sys "$install_path"/sys
+
 
+
=== Register the mount partitions ===
+
 
+
Mount partition are list in {{ic|/etc/mtab}}, we need to copy it contents :
+
grep -v rootfs /proc/mounts > etc/mtab
+
 
+
=== In the chroot ===
+
 
+
The ''chroot'' is ready, enter it :
+
chroot "$install_path" /bin/bash
+
 
+
== Base system installation ==
+
+
pacman -Syf base
+
 
+
== Configure the new system ==
+
 
+
 
+
=== Configure /etc/rc.conf ===
+
 
+
One of the central file in the ArchLinux system. You'll find everything you need [[rc.conf|here]]. The current default rc.conf is [https://projects.archlinux.org/initscripts.git/plain/rc.conf here]
+
 
+
=== Partition configuration ===
+
 
+
To specify what partitions will be used by your operating system you need to edit the {{ic|/etc/fstab}} file. This file lists the partitions, where they will be mounted, the type of the file system and some other options. Be sure to check [[fstab|this page]] for more information. Here is a quick example of the {{ic|/etc/fstab}} file:
+
+
#
+
# /etc/fstab: static file system information
+
#
+
# <file system>    <dir>        <type>    <options>          <dump> <pass>
+
devpts            /dev/pts      devpts    defaults            0      0
+
shm                /dev/shm      tmpfs    nodev,nosuid        0      0
+
+
/dev/sda5          swap          swap      defaults            0      0
+
/dev/sda6          /            ext4      defaults            0      1
+
/dev/sda7          /home        ext4      defaults            0      2
+
 
+
To see the list of partitions on your hard disk run the command {{ic|fdisk -l}} (l is a '''lowercase L''', NOT the digit) as root.
+
 
+
=== Grub ===
+
 
+
Perhaps you'll need [[GRUB]] now. You'll find information [[grub|here]]
+
 
+
=== Users ===
+
 
+
==== Root password ====
+
 
+
The root password is empty by default, you may want to set one :
+
passwd root
+
 
+
==== Main user ====
+
 
+
A basic configuration is :
+
+
useradd -G wheel,audio,optical,storage,video,power -m nom_utilisateur
+
passwd nom_utilisateur
+
 
+
You'll find more information [[Groups|here]]
+
 
+
==== sudo configuration ====
+
 
+
See [[sudo|here]].
+

Revision as of 04:02, 9 December 2012

Redirect to: