Difference between revisions of "Installation Chroot"

From ArchWiki
Jump to: navigation, search
(wikify some external links, use https for archlinux.org)
(fix double redirect)
 
(One intermediate revision by one other user not shown)
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]].
 

Latest revision as of 07:32, 16 February 2014

Redirect to: