FreeLink for the Kurobox Pro - Manual install

From NAS-Central Buffalo - The Linkstation Wiki
Revision as of 20:13, 17 February 2008 by Ramuk (Talk | contribs)

Jump to: navigation, search

400px-Ford_Design_3-speed_OD_Transmission_w._Hurst_Shifter.jpg

Contents

FreeLink (Debian) on the KuroPro

Rather than using the automatic install method [1] you can partition the hard drive yourself (foregoing Buffalo's partition scheme) and use a custom kernel too[2]. You will need Serial port[3] access to have control over the uboot settings [4].

Prerequisites:

  1. KuroboxPro (of course)
  2. Serial port access
    1. Use bottom Slot
    2. Use daughterboard
  3. FreeLink zip archive: http://downloads.nas-central.org/LSPro_ARM9/Distributions/Freelink/
  4. Custom Kernel: http://downloads.nas-central.org/Users/colchaodemola

Get it

  1. Download the FreeLink zip archive: http://downloads.nas-central.org/LSPro_ARM9/Distributions/Freelink/FreeLink_arm9-1.0rev2.zip
  2. Unzip it and find the hddrootfs.img file
  3. Rename it to have the .zip extension
  4. Unzip this file with the following password:
    IeY8omJwGlGkIbJm2FH_MV4fLsXE8ieu0gNYwE6Ty
  5. Rename the resultant file to hddrootfs.tar.gz and copy it over to the Samba Share[5].

Partition Hard Drive

XFS support is still poor (especially in a custom kernel). So we'll use EXT3, and use a sane partition scheme. There are detailed instructions on partitioning in EM Mode[6] or using Parted on an external workstation[7].

Sample Partition scheme

Partition Path Size Filesystem
p1 / 10GB EXT3
p2 swap 512MB SWAP
p3 /mnt/disk1 Remaining Space EXT3

Get a newer Kernel and modules

I used this kernel image, big thanks to Colchaodemola

rename it to the following:

  • uImage-2.6.16.57-arm5_oabi

Get the Modules:

Copy these over to the samba share too.

Extract everything over to the Hard Drive

Log into the Kurobox using the default settings[8] and go to the directory that you transferred your files over to (likely /mnt/mtd)

cd /mnt/mtd

Mount Hard Drive

mount /dev/sda1 /mnt/drive1

Move everything over

mv hddrootfs.tar.gz /mnt/drive1
mv uImage-2.6.16.57-arm5_oabi /mnt/drive1
mv 2.6.16.57-arm5_oabi_modules.tgz /mnt/drive1

Untar the rootfs

cd /mnt/drive1 
tar -xvzf hddrootfs.tar.gz

Untar the kernel Modules

cd /mnt/drive1 
tar -xvzf 2.6.16.57-arm5_oabi_modules.tgz

Move and link the kernel uimage

mkdir /mnt/drive1/boot
mv uImage-2.6.16.57-arm5_oabi /mnt/drive1/boot/
cd /mnt/drive1/boot
ln -s uImage-2.6.16.57-arm5_oabi uImage

Reboot and Change uboot settings

reboot

The final step is to modify your uboot environment to boot into the rootfs (freelink). Interrupt uboot over the serial console[9] and type the following to configure your Kurobox Pro to boot from the hard disk with the new kernel:

setenv bootcmd 'ide reset;ext2load ide 0:1 0x00100000 /boot/uImage;setenv bootargs console=ttyS0,115200 root=/dev/sda1 rw; bootm 0x00100000'
saveenv
boot


By the way, the command set to get it to boot from the flash (like it was originally) should you ever want to is:

setenv default_kernel_addr 0x00100000 
setenv bootargs_base console=ttyS0,115200 
setenv bootargs_root root=/dev/mtdblock2 rw 
setenv bootargs $(bootargs_base) $(bootargs_root) $(buffalo_ver) 
setenv uImage_block 0 
setenv uImage_offset 0x00020000 
setenv bootcmd 'nboot $(default_kernel_addr) $(uImage_block) $(uImage_offset); bootm $(default_kernel_addr)'

Post install

Login

Reboot and use ssh to login to your newly FreeLinked KuroBox Pro with an SSH session. In windows PuTTY is a good client

  • login:root
  • password: lspro

or

  • login:admin
  • password: admin

Change kernelmon script

  • You will now need to change a line in the the /usr/local/sbin/kernelmon script:
cat /proc/driver/kernevnt 

to

cat /proc/buffalo/kernevnt

Enable root login on serial console

  • If you use the console on the serial port, you need to change the permissions on /etc/securetty so it is not world-writable
chmod 0744 /etc/securetty
  • until you do this, root logins on the serial console will not be permitted.

Fix fstab

Remember to change the /etc/fstab to reflect the location of linux swap and the share. Also remove the ,acl from the xfs declaration. My /etc/fstab looks like this after update:

# /etc/fstab: static file system information.
# <file system> <mount point>   <type>  <options>               <dump>  <pass>
proc            /proc      proc    defaults                            0 0
none            /dev/pts   devpts  gid=5,mode=20                       0 0
tmpfs           /tmp       tmpfs   size=10M,mode=1777                  0 0
/dev/sda2       swap       swap    defaults                            0 0
/dev/sda3       /mnt/disk1 ext3    defaults,noatime,nodiratime         0 0
 

Mkswap

Format the swap partition

mkswap /dev/sda2

References

  1. FreeLink for the Kurobox Pro - Automatic Install
  2. GPL kernel recompilation progress - 2.6.12.6 & 2.6.16.16
  3. Serial Port Use daughterboard or Use bottom Slot
  4. Kurobox Pro u-boot environment variable settings
  5. KuroBoxPro: Accessing Partions from Samba
  6. Custom Partitions on the LS Pro
  7. Resizing the system partition with parted magic live cd
  8. KuroBoxPro: Default Settings
  9. KuroBoxPro: UBoot Linux Console Message - bootup