You are not logged in.

#1 2012-05-31 14:01:05

FNC
Member
From: South Africa
Registered: 2012-01-02
Posts: 4

Diskless network boot install (i686 server 64bit client)

Hi Everyone,

I have a i686 install of Arch that I would like to use as a server to PXE boot a 64bit Arch client.
I have followed the Diskless network boot NFS root article on the wiki.

Before running

pacman -Sy --root /disklessroot --dbpath /disklessroot/var/lib/pacman base

I changed /etc/pacman.d/mirrorlist to point to 64-bit architecture.

I got stuck at this part where I have to chroot to /diklessroot to recreate the kernel image.

chroot /disklessroot
mkinitcpio -p linux
exit
umount /disklessroot/dev
umount /disklessroot/proc
umount /disklessroot/sys

The error I got was:

chroot: failed to run command ‘/bin/bash’: Exec format error

I realised that I am trying to execute 64bit code on a 32bit PC.

I figured if I copy the i686 binaries of bash and mkinitcpio to /disklessroot/bin and /disklessroot/usr/bin respectivly I can work around this problem.
So I renamed /disklessroot/bin/bash to /disklessroot/bin/bash.64 and /disklessroot/usr/mkinitcpio to /disklessroot/usr/bin/mkinitcpio.64 and copied the binaries from /bin and /usr/bin into the /disklessroot/bin and /disklessroot/usr/bin .

Now I get the following error when trying to chroot to /disklessroot .

chroot: failed to run command ‘/bin/bash’: No such file or directory

Is there any way that I can get around this and network boot a 64bit client from a i686/32bit server?

Last edited by FNC (2012-05-31 14:07:07)

Offline

#2 2012-05-31 17:42:24

DSpider
Member
From: Romania
Registered: 2009-08-23
Posts: 2,273

Re: Diskless network boot install (i686 server 64bit client)

I changed /etc/pacman.d/mirrorlist to point to 64-bit architecture.

Don't bother. You can't run 64 bit software using a 32 bit OS. Only the other way around: 32 bit software on a 64 bit OS.

You need to install Arch x86_64 if you want 64 bit. Or you could "migrate" it to 64 bit... But if it were me, I would probably just reinstall.


"How to Succeed with Linux"

I have made a personal commitment not to reply in topics that start with a lowercase letter. Proper grammar and punctuation is a sign of respect, and if you do not show any, you will NOT receive any help (at least not from me).

Offline

#3 2012-05-31 22:51:10

nomorewindows
Member
Registered: 2010-04-03
Posts: 3,362

Re: Diskless network boot install (i686 server 64bit client)

If your client is 64-bit, then you just mount the NFS share that your diskless install would go on (if you can boot the 64-bit machine, with the arch install CD), and execute your commands from the 64-bit client.  It'll work.  That's just the way you have to do it.  The mirror should be the same regardless of architecture.  Your /diskless directory, regardless will still have to be exported in /etc/exports.  It will be your nfsroot directory when you get done (from the client).  Your syslinux pxelinux.cfg/default and pxelinux.0 files will be delivered from /var/tftpboot via tftp.


I may have to CONSOLE you about your usage of ridiculously easy graphical interfaces...
Look ma, no mouse.

Offline

Board footer

Powered by FluxBB