You are not logged in.
Hi.
As written in the title, I'm trying to install an Arch system on an usb stick, with i686 architecture, from the Arch x86_64 system on my computer.
I would like to do it without copying the iso to an extra usb key.
From the wiki : "If you are already running Arch, simply install arch-install-scripts and proceed with the installation guide just like you would from the iso, [...]"
1) I'm not sure about what it means : can I actually do the install using arch-install-script, without using the iso or the bootstrap image ? Is that correct ?? (english is not my native language).
2) Anyway, it didn't work. So I downloaded the bootstrap(s) image(s).
Tried the i686 one, then the x86_64 one.
For each, I changed the architecture in pacman.conf from "architecture = auto" to "architecture = i686".
[~/tmp] tar xzf ~/downloads/archlinux-bootstrap-2015.03.01-x86_64.tar.gz
[~/tmp] vi root.x86_64/etc/pacman.conf
[~/tmp] vi root.x86_64/etc/pacman.d/mirrorlist
[~/tmp] sudo root.x86_64/bin/arch-chroot root.x86_64/
sh-4.3#
sh-4.3# pacman-key --init
sh-4.3# pacman-key --populate archlinux
sh-4.3# lsblk
sh-4.3# mount /dev/sdc2 /mnt
sh-4.3# pacstrap -c /mnt base base-devel
(I tried with and without the -c option)
will give :
==> Creating install root at /mnt
==> Installing packages to /mnt
:: Synchronizing package databases...
core is up to date
extra is up to date
community is up to date
:: There are 50 members in group base:
[...]
:: There are 25 members in group base-devel:
[...]
warning: skipping target: file
warning: skipping target: findutils
warning: skipping target: gawk
warning: skipping target: gettext
warning: skipping target: grep
warning: skipping target: gzip
warning: skipping target: pacman
warning: skipping target: sed
warning: skipping target: texinfo
warning: skipping target: util-linux
warning: skipping target: which
error: failed to prepare transaction (package architecture is not valid)
:: package bash-4.3.033-1-x86_64 does not have a valid architecture
:: package bzip2-1.0.6-5-x86_64 does not have a valid architecture
[...]
[same message with coreutils-8.23-1-x86_64 cryptsetup-1.6.6-1-x86_64
and more than 50 other packages, up to sudo-1.8.12-1-x86_64]
Same with the i686 bootstrap image :
[~/tmp] tar xzf ~/downloads/archlinux-bootstrap-2015.03.01-i686.tar.gz
[~/tmp] sudo cp /etc/pacman.d/mirrorlist root.i686/etc/pacman.d/mirrorlist
[~/tmp]♭ sudo root.i686/bin/arch-chroot root.i686/
sh-4.3# pacman-key --init
sh-4.3# pacman-key --populate archlinux
sh-4.3# lsblk
sh-4.3# mount /dev/sdc2 /mnt
sh-4.3# pacstrap /mnt base base-devel
[...]
error: failed to prepare transaction (package architecture is not valid)
:: package bash-4.3.033-1-x86_64 does not have a valid architecture
[...]
Thanks.
Last edited by Tétrapyle (2015-03-23 21:27:30)
Offline
Run pacman -Syy first.
Don't forget to run pacman -Syyu after changing it back.
Edit: If you're already in Arch, you don't need the bootstrap image, they're nothing more than a prepared Arch chroot. The arch-install-scripts package contains all of the scripts you need (pacstrap, genfstab, etc) to simply follow the beginner's guide right from your normal install.
Last edited by Scimmia (2015-03-22 13:57:10)
Offline
Thanks for your reply. I just updated the whole system.
Then
[~]$ sudo mount /dev/sdc2 /mnt
[~]$ sudo vi /etc/pacman.conf
My system is x86_64. I'm trying to install from that an i686 system.
If I run pacstrap now, it'll run ok but obviously it'll install an x86_64 system.
So, in pacman.conf, I changed Architecture from auto to i686 and I commented out the Multilib lines.
It seems it's not enough.
[~]$ sudo pacstrap -c /mnt
[...]
error: failed to prepare transaction (package architecture is not valid)
:: package bash-4.3.033-1-x86_64 does not have a valid architecture
:: package bzip2-1.0.6-5-x86_64 does not have a valid architecture
:: package coreutils-8.23-1-x86_64 does not have a valid architecture
:: package cryptsetup-1.6.6-1-x86_64 does not have a valid architecture
:: package device-mapper-2.02.116-1-x86_64 does not have a valid architecture
:: package dhcpcd-6.7.1-1-x86_64 does not have a valid architecture
[...]
:: package pkg-config-0.28-2-x86_64 does not have a valid architecture
:: package sudo-1.8.12-1-x86_64 does not have a valid architecture
==> ERROR: Failed to install packages to new root
Where do these x86_64 come from ? Could it be they stand for the $arch in the Server line from /etc/pacman.d/mirrorlist ?
Offline
As I said, run pacman -Syy after changing the Architecture, then run pacman -Syyu after changing the Architecture back to x86_64.
Offline
Aaaaahhh I understand now. The installation was successfull.
For others who might find it useful, after I'd run pacstrap, and while in the arch-chroot,
I had to change again the architecture line in /etc/pacman.conf
from auto to i686, so I could install grub.
I also had to add --force to grub-install,
as in this post.
Thanks again for your help!
Offline