You are not logged in.

#1 2015-03-22 10:54:23

Tétrapyle
Member
Registered: 2014-01-03
Posts: 61

[SOLVED] install i686 on USB key from x86_64 : how ?

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

#2 2015-03-22 13:53:30

Scimmia
Fellow
Registered: 2012-09-01
Posts: 12,416

Re: [SOLVED] install i686 on USB key from x86_64 : how ?

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

#3 2015-03-22 18:23:41

Tétrapyle
Member
Registered: 2014-01-03
Posts: 61

Re: [SOLVED] install i686 on USB key from x86_64 : how ?

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

#4 2015-03-23 04:17:29

Scimmia
Fellow
Registered: 2012-09-01
Posts: 12,416

Re: [SOLVED] install i686 on USB key from x86_64 : how ?

As I said, run pacman -Syy after changing the Architecture, then run pacman -Syyu after changing the Architecture back to x86_64.

Offline

#5 2015-03-23 21:26:48

Tétrapyle
Member
Registered: 2014-01-03
Posts: 61

Re: [SOLVED] install i686 on USB key from x86_64 : how ?

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

Board footer

Powered by FluxBB