FreeLink for the Kurobox Pro - Manual install
|
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:
- KuroboxPro (of course)
- SATA Hard Drive (bigger is better) installed[5]
- Serial port access
- FreeLink zip archive: http://downloads.nas-central.org/LSPro_ARM9/Distributions/Freelink/
- Custom Kernel: http://downloads.nas-central.org/Users/colchaodemola
Get it
- Download the FreeLink zip archive: http://downloads.nas-central.org/LSPro_ARM9/Distributions/Freelink/FreeLink_arm9-1.0rev2.zip
- Unzip it and find the hddrootfs.img file
- Rename it to have the .zip extension
- Unzip this file with the following password:
IeY8omJwGlGkIbJm2FH_MV4fLsXE8ieu0gNYwE6Ty
- Rename the resultant file to hddrootfs.tar.gz and copy it over to the Samba Share[6].
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[7] or using Parted on an external workstation[8].
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[9] 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[10] 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
- ↑ FreeLink for the Kurobox Pro - Automatic Install
- ↑ GPL kernel recompilation progress - 2.6.12.6 & 2.6.16.16
- ↑ Serial Port Use daughterboard or Use bottom Slot
- ↑ Kurobox Pro u-boot environment variable settings
- ↑
- ↑ KuroBoxPro: Accessing Partions from Samba
- ↑ Custom Partitions on the LS Pro
- ↑ Resizing the system partition with parted magic live cd
- ↑ KuroBoxPro: Default Settings
- ↑ KuroBoxPro: UBoot Linux Console Message - bootup