- 1 Returning Bricked LS to Stock
- 2 Building Stock Filesystem from Scratch
- 3 Useful Information
- 4 Software
Returning Bricked LS to Stock
- rebuild manually the partition table and copy & untar the necessary files into appropriate partitions
- boot into EM-mode.
- use LSUpdater.exe to rebuild partitions
- right click at the double link icon, select the debug(D) menu
- deselect all options, execept "do not check version" & "rebuild partition table"
- and click "OK" -> "Update"
Building Stock Filesystem from Scratch
This approach will be used to get the LS running using a pre-built Debian filesystem.
Use one drive to boot the LS that can be partitioned however you want to.
- Create the partitions by hand on one drive
- Extract the stock firmware by hand
- Put a pre-built Debian filesystem in place by hand
- Pre-built armel Debian filesystem created using debootstrap. This is best done on the LS so that the filesystem can be chroot'd into.
- Stock firmware and filesystem from LSUpdater. All it's used for is the Buffalo kernel (uImage.buffalo).
- Use firmware 1.54-mod1 (already downloaded, check your phone):
- System running parted or equivalent partitioning tools (Ubuntu will do nicely)
- Passwords to be able to extract filesystem and kernel, etc. as follows:
- 1NIf_2yUOlRDpYZUVNqboRpMBoZwT4PzoUvOPUp6l [hddrootfs.img and uImage.img]
- aAhvlM1Yp7_2VSm6BhgkmTOrCN1JyE0C5Q6cB3oBB [u-boot]
- YvSInIQopeipx66t_DCdfEvfP47qeVPhNhAuSYmA4 [initrd.img]
- Really only need the password to extract the uImage.img as ther rest of the data is not required.
Partition the drive
Starting with just one disk, partition the drive, using GPT partition schema, as follows:
- sda1 1GB (ext3) /boot
- sda2 1GB (swap)
- sda3 10GB (ext3) /
- remainder of the disk is arbitrary (ext3)
Population of boot partition
- Create initrd.buffalo
- Take care the setup the linuxrc script correctly so that the correct partition is used during the boot process.
- Copy uImage.buffalo and initrd.buffalo
- Copy the following files into the boot partition (/dev/sda1). that is all that is required in the /boot partition. It should be possible to make it very small.
Population of the root partition
Untar the Debian filesystem into sda3. Be sure to use the numeric-owner switch. Confirm that /lib/modules is correct, that the network is setup correctly (/etc/network/interfaces) and that /etc/fstab has the correct partitions setup.
This should leave you with a GPT partitioned drive with stock uImage (kernel) and a custom initrd in the boot partition (to be mounted at /boot) and a custom armel Debian filesystem in the root partition (to be mounted at /).
Some information that could prove useful:
- Explanation of initrd.
This guide explains how to install transmission as a remote daemon that can be controlled by a client-side, rich, cross platform GUI.
Add the following line to /etc/apt/sources.list
deb-src http://ftp.us.debian.org/debian/ wheezy main
Then run the following commands:
apt-get update apt-get build-dep minidlna # Get build package dependencies apt-get -b source minidlna # Download and build at the same time: dpkg -i minidlna_1.0.21+dfsg-1_amd64.deb # Or whichever deb file was created
This blog has some good pointers by a guy running Squeeze on a Buffalo NAS.