blob: eca47a862fa8bd8abc62a6b616fc6cfda59389f7 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
|
## <a name="Easy_install_with_CrossHurd"> Easy install with CrossHurd </a>
Qurious about the Hurd? Have a 1-5 GiB partition free? Let's install GNU/Hurd on it!
### <a name="Preparing_the_partition"> Preparing the partition </a>
We'll assume you have a partition ready, for the sake of argument we use an example here: /dev/hda3 is the Hurd partition (type: Linux) and /dev/hda4 is the Linux swap that we'll reuse.
First we create the Ext2 filesystem, notice the `hurd` option.
# mke2fs -o hurd /dev/DEVICE
Next we create a useful mountpoint and mount the partition.
# mkdir /gnu
# mount /dev/hda3 /gnu
### <a name="Retrieving_CrossHurd"> Retrieving CrossHurd </a>
Unless you don't run Debian GNU/Linux download it from <http://packages.debian.org/crosshurd>, or simply apt-get the package from Testing or Unstable.
# apt-get install crosshurd
### <a name="Cross_installing"> Cross installing </a>
The crosshurd package only operates in the given target directory, which is the first question asked when running the program.
# cd /gnu
# crosshurd
Answer the questions you get: $ What is the target directory?: `/gnu` $ Target Debian system?: gnu $ Target CPU?: i386
Now the program starts retrieving all the necessary base packages.
### <a name="Preparing_to_reboot"> Preparing to reboot </a>
When all packages have been extracted we must prepare [[GRUB]] for the Hurd when we reboot. Add the below entry to your `/boot/grub/menu.lst` file to boot the Hurd in single user mode (-s). Single user mode is needed only for the two reboots when running the Native Install.
title GNU (kernel GNUmach 1.3)
root (hd0,2)
kernel /boot/gnumach.gz root=device:hd0s3 -s
module /hurd/ext2fs.static \
--multiboot-command-line=${kernel-command-line} \
--host-priv-port=${host-port} \
--device-master-port=${device-port} \
--exec-server-task=${exec-task} \
-T typed ${root} $(task-create) $(task-resume)
module /lib/ld.so.1 /hurd/exec $(exec-task=task-create)
**_Nota Bene:_** In your menu file there should be no extra white space after the back slashes.
### <a name="Native_install"> Native install </a>
Ah, reboot and select "GNU (kernel GNUmach 1.3)" from the Grub menu. At the prompt, setup TERM and run the native-install script.
# export TERM=mach
# ./native-install
When done the native install requests that you reboot once again and rerun native-install.
# reboot
...
# export TERM=mach
# ./native-install
Done, continue setting up your system.
----
Jeff Bailey has set up a system where you can install a Hurd system without having to use CDs. It's another type of cross-installation method which uses Debian package management tools to get the packages required as opposed to the one single big tarball.
As of 2005-03-22, the latest version of crosshurd is 1.7.11. It can be found at <http://packages.debian.org/crosshurd>.
-- [[Main/PeterMelville]] - 12 Jun 2004
|