Debian Ports Installation

From Linux PARISC Wiki
Revision as of 15:10, 15 January 2014 by Deller (Talk | contribs)

Jump to: navigation, search

Installation of PA-RISC Linux

HPPA became an officially supported Debian architecture in release 3.0 (woody) and was dropped as of stable release 6.0 (squeeze). That's the reason that the latest available official installation CDs are available for Debian 5.0 (lenny) only.

The Debian ports project hosts a parisc version of debian unstable. Recommended installation of a new parisc machine is via the debian-ports respitory at

New installation of a PARISC machine via repository on

  • *NOTE:* On PA8800/PA8900 and some PA8700 CPUs you may see kernel messages like: INEQUIVALENT ALIASES 0x40288000 and 0x40289000 in file Just ignore this. Those messages are printed because the lifimag is based on older binaries which would need to be rebuilt.
  • use fdisk to partition your disk. Create a palo partition first (fdisk type f0, size >= 50 MB), then a /boot partition (needs to be in the first 2GB of a disk, ext2, fdisk type 83). A good size for the boot partition is 200-400 MB. Then create a root partition (any size) and a swap partition. Here is an example what "fdisk -l" could report (The Start and End sectors here are just examples. They can be different on your system) If you have multiple drives and would like to put your '/home', '/var', or other partition (including extra swap space) on a second internal drive, you may set them up accordingly with 'fdisk /dev/sdb' (or whatever drive is suitable):
   Device Boot      Start         End      Blocks   Id  System
/dev/sda1            2048      165887       81920   f0  Linux/PA-RISC boot
/dev/sda2          165888      247807       40960   83  Linux
/dev/sda3          247808   142854143    71303168   83  Linux
/dev/sda4       142854144   143374737      260297   82  Linux swap / Solaris
  • format the /boot, /root, /home, etc. and swap partitions. We give those partitions a name (BOOT/ROOT/HOME/(etc.)) to make it easier. You may also assign labels to your swap partitions to make sure the OS sees them properly and to make it easier to setup /etc/fstab (explained later), e.g. mkswap -L SWAP0 or SWAP1, etc.
mke2fs -L BOOT /dev/sda2
mke2fs -j -L ROOT /dev/sda3
mke2fs -j -L HOME /dev/sdb1 ...and so on.
mkswap /dev/sda4 or mkswap -L SWAP0
  • Now, bring up your network. If you have a dhcp server you can run dhclient
dhclient eth0
  • Mount the newly designed /root, /boot, /home, and other necessary filesystems to /mnt/destroot, /mnt/destroot/boot, /mnt/destroot/home, etc.:
mount LABEL=ROOT /mnt/destroot/
mkdir /mnt/destroot/boot then mkdir /mnt/destroot/home and any other filesystems that need to be mounted at the next boot.
mount LABEL=BOOT /mnt/destroot/boot/ mount LABEL=HOME /mnt/destroot/home/, etc.
  • IMPORTANT!: If you are behind a proxy server, you will need to create a /root/.wgetrc file and export the proxy setting on the command line. Here is an example:
export http_proxy=http://proxy:8080
echo "http_proxy=$http_proxy" > /root/.wgetrc
echo "use_proxy = on" >> /root/.wgetrc
  • Now run debootstrap. This may take some time... (10-20 minutes depending on your connection speed):
debootstrap --arch=hppa --no-check-gpg  unstable  /mnt/destroot
  • copy over the palo package from the boot image to the new filesystem and create 'palo.conf'
cp /palo*deb /mnt/destroot
touch /mnt/destroot/etc/palo.conf
  • IMPORTANT!: If you work on a serial console, please remember to un-comment the following line in /etc/inittab or you won't see a login prompt on the serial console (kill -HUP 1 activates the change):
echo "T0:23:respawn:/sbin/getty -L ttyS0 9600 vt100" >> /mnt/destroot/etc/inittab
  • IMPORTANT!: Remember to set your new root password and add LABEL=BOOT as /boot partition and also set your hostname.
echo "LABEL=ROOT     /      ext3 defaults 1 1" >> /mnt/destroot/etc/fstab
echo "LABEL=BOOT     /boot  ext2 defaults 1 1" >> /mnt/destroot/etc/fstab
echo "LABEL=HOME     /home  ext3 defaults 0 2" >> /mnt/destroot/etc/fstab
echo "LABEL=SWAP0     none  swap sw,pri=3 0 0" >> /mnt/destroot/etc/fstab
..and so forth for other necessary partitions.

(You may also use 'nano' to edit /mnt/destroot/etc/fstab directly if desired)

chroot /mnt/destroot
passwd root
<enter your new password for the 'root' user>
Type 'exit' to get out of the chroot.

echo "your hostname" >> /mnt/destroot/etc/hostname
  • You are now finished with the initial initialization of the filesystem.
  • You may now run the blkid command to take a look at your partitions.
  • Now reboot again from the CD/TFTP and choose to interact with IPL.
reboot now
Interact with IPL (Y, N, or Cancel)?> y
  • Press "0" to change the "0/vmlinux" line, and replace this line by "0/vmlinux64" to boot the 64bit kernel or "0/vmlinux32 on 32 bit machines.
0/vmlinux64 (64 Bit) or 0/vmlinux32 (32 Bit)
  • Press "1" to change the "initrd=0/ramdisk" line, replace this line by "root=/dev/sda3" (look at the output of blkid above):
  • and then press "b" to boot this configuration.
  • The machine should now have booted into the shell on /dev/sda3. Login as 'root' with your new password. You can use tools like blkid, mount and such to see if everything is correct.
  • Install the most recent 32- or 64-bit Linux kernel and install the palo bootloader (See networking bug workaround below):
  • First of all: make sure the boot partition is mounted correctly
mount LABEL=BOOT /boot
  • Networking bug Work-around: Due to a minor bug, networking doesn't start automatically, and the RSA keys for are not available. Here is the current solution:
Type 'dhclient eth0' to re-start the network

then: gpg --recv-keys 1C466F272FF7A9F4 --keyserver

(It will error out the first time, so just run the above command again and it will import keys.)

then: gpg --export --armor 2FF7A9F4 | apt-key add -

Now you can successfully run - 'apt-get update' and 'apt-get install openssh-server'
  • Install 'palo'
dpkg -i /palo*deb
  • and select your new kernel...
apt-get install linux-image-parisc64-smp   # for a 64bit SMP kernel
apt-get install linux-image-parisc         # for a 32bit UP kernel
  • Don't forget to set up your symlinks in /boot
cd /boot
ln -s initrd* initrd.img
ln -s vmlinux* vmlinux
  • Now you can run the palo configuration:
palo --init-partitioned=/dev/sda -k/boot/vmlinux -r/boot/initrd.img --commandline="2/vmlinux initrd=2/initrd.img root=LABEL=ROOT rootfstype=ext3  HOME=/ panic_timeout=60 panic=-1"
  • Reboot now and HPPA Linux should now load from the hard drive.
  • At this time you can install a couple handy utilities to make sure your network always starts on boot, and your hotplug devices load properly (external USB drives, etc.)
First run: nano /etc/network/interfaces and add the following lines:

auto lo
iface lo inet loopback (This brings up the local loopback network 'lo' on system boot)

iface eth0 inet dhcp   (This will bring up eth0 when the system is booted.. (don't add 'allow-hotplug eth0', as this will interfere with 'ifplugd' later).

Do this for any additional interfaces leaving a blank line between each one.
  • Re-start your network:
dhclient eth0
  • Now for ifupdown-extra and ifplugd
apt-get install ifupdown-extra ifplugd
Run: dpkg-reconfigure ifplugd
Use 'auto' (no quotes) as the "static interfaces to be watched by ifplugd". Select 'OK' to go to the next screen.
Use 'all' (no quotes) as the "hotplugged interfaces to be watched by ifplugd". Select 'OK' to go to the next screen.
In the 'arguments to ifplugd' screen you can stick to the defaults unless there is a problem with the daemon.
Select 'OK' to go to the next screen for 'suspend behavior' Select 'suspend' to compensate for any broken net drivers.
Select 'OK' to finish

Type: 'service networking stop' and then 'service networking start' (no quotes) to reload all daemons.

 You can check interface and connectivity status by typing: 'network-test' (no quotes)
  • For more detailed networking info, look HERE.
  • ...and that's it! ifplugd has the added advantage of automatically detecting external USB drives at boot time also.
  • Now add more packages and have fun!

--Dave Land (talk) 13:48, 14 January 2014 (UTC)

Old installation medias (Debian Lenny)

If you have an older parisc system (not a c8000!) you may use the Debian Lenny installation medias to upgrade.

  • The debian-5010-hppa-netinst.iso or the debian-5010-hppa-xfce+lxde-CD-1.iso may work.
  • Install Debian Linux. It's recommended to just install a minimalistic set of packages at this stage, since everything will be updated later to debian-unstable anyway. Furthermore every installed package may prevent your from easily upgrading.
  • After installation you should upgrade to debian-unstable via the debian-ports repository:
  • modify your /etc/apt/sources.list file to have this content:
deb unstable main
# for unstable sources if you want to compile yourself:
deb-src unstable main contrib non-free  
  • now instruct apt to pull the latest package list:
apt-get update
  • packages in the debian-ports repository are signed. You will need to install the debian-ports archive signing key once (details see:
gpg --recv-keys 1C466F272FF7A9F4
gpg --export --armor 2FF7A9F4 | apt-key add -
  • make sure you run a recent Linux kernel, at least 2.6.32. If possible upgrade to at least kernel 3.9 which seems to be the most stable release.
  • run the usual command to upgrade your packages:
apt-get upgrade
  • if you run issues during upgrading packages, e.g. by strange dependency problems, it's often helpful to just uninstall some packages
  • finally you should be able to update most packages to a more recent (unstable) version. If you miss some packages, please drop us an email on the mailing list [1].
Personal tools