Plug notes

From Amahi Wiki
Jump to: navigation, search
  • 2 stop bits to get the bootloader to recognize keyboard and stop autobooting
  • speed: 115200 /dev/ttyUSB1
  • root/fedoraarm default password
  • rpms installed for development: rsync, git, vim-enhanced, sudo, make, rpm-build, tar, httpd-devel, boot-devel, gcc-c++
  • passenger: need rubygems-1.3.5-4.fc12.noarch.rpm with macro changes
  • rpms installed for amahi: httpd, ruby, samba,
  • build hdactl, hda-platform, install (with --nodeps)

RPMs not available from the mirrors:

  • hda-greyhole
  • cadaver
  • rubygem-gd2 - actually - is this one necessary?
  • ruby-RMagick

Other:

  • VPN does not work (had to turn it off in servers). This could be due to the kernel not having all that it needs for TUN/TAP?:
     Cannot allocate TUN/TAP dev dynamically
  • Greyhole not working - hda-greyhole needed
  • crontab does not appear to be working
  • had to add with noatime in / to prevent flash burnout
  • should control monit - it keeps on pounding the flash with messages in /var/log/monit
  • would like to add swap to flash based drives
  • mt-daapd and amahi-transmission are dying

Getting the plug booting Fedora 12

Here are the steps to make the plug boot from USB

  • General directions
  • get the rootfs-f12.tar.bz2 from
    http://ftp.linux.org.uk/pub/linux/arm/fedora/rootfs/
  • Connect the JTAG module and connect the USB side to a terminal emulator
  • Putty for windows (Serial)
  • gtkterm for linux (use 2 stop bits!)
  • Reset the device from the JTAG module
  • At the terminal, press enter a couple of seconds after boot to prevent it booting to the flash
  • There are some commands to make it permanently boot off USB:
         setenv mainlineLinux yes
         setenv arcNumber 2097
         setenv bootargs_root 'root=/dev/sda1 rootdelay=15'
         setenv bootcmd_usb 'usb start; ext2load usb 0:1  0x6400000 /boot/uImage-2.6.30-sheevaplug'
         setenv bootcmd 'setenv bootargs $(console) $(bootargs_root); run bootcmd_usb; bootm 0x6400000'
         saveenv
         reset

Amahi Install

After booting from it,

  • Configure a profile for the system in http://www.amahi.org. Pay attention to the IP of the HDA you configure. Let's call it PLUG_FIXED_IP.
  • Boot the system with the latest rootfs (amahi-marvell-0.2.tar.bz2). You can use the create-clean-f12-disk.sh script to put that file system
  • Until we optimize things, it will take 4 or 5 minutes to boot the first time.
  • The first time it boots, it will try to use DHCP. In my case, I configured a static IP so that when it boots with DHCP I know what IP it has. This may be different than the static you configured above.
  • Access the installer

http://IP_OR_NAME_OF_THE_PLUG_IN_DHCP:2000/

  • Wait patiently if it does not respond. This does require internet connectivity
  • The installer takes about 1 minute to install with that :)
  • Input the install code for that system
  • When asked to, click the big red button to reboot
  • The reboot will take a minute or two
  • Access it with the configured IP: http://IP_OR_NAME_OF_THE_PLUG/
  • First login: admin/amahi. I will ask you to reset the password the first time

With about 1/8th of the rpms on a typical x86 install, you will experience a lot of failures with apps (VPN does not work, apps will be missing deps, etc. etc.).

In order to install the rootfs onto a flash or disk, this script needs to be used:

    create-clean-f12-disk.sh

This script is very dangerous (it can destroy the machine it is run on if not used properly). You will need to change the partition destination.

  • report bugs!

Reporting issues

These are mostly what matter for debugging:

  • /root/hda-install.log
  • egrep -v 'POST|GET|progress' /tmp/amahi-ruby-install.log

Misc Notes

  • restarting rpm db in chrooted environment:
         rm /var/lib/rpm/__db*
         rpm --rebuilddb -vv