Pogoplug POGO-E02 Debian / Openmediavault install notes
I had multiple problems trying to install Debian (and OpenMediaVault) on my pogoplug and couldn't find all of the answers in one place, so this is my attempt to try and consolidate all of my steps that I took to accomplish this.
I realize that some, if not most of these commands are not needed for the more veteran people, but this is geared towards the noobs...so bare with me.
Preparing the drive
I'm using an 8gb Sandisk Cruzer Professional usb drive, but I'll create partitions that would fit on a 4gb drive because I'll plan to use USB Image Tool to create "device" backups that I can compress (hopefully without data loss) and restore on other available USB drives if needed. Before I plugged it into the pogoplug, I put into a Win7 machine and started up diskpart to completely "clean" and erase the drive before use.
Note: Realize what you're doing here, DON'T select the wrong drive to clean, or you'll be sorry!
Start, Run, diskpart
list disk
select disk # (# = your usb drive)
clean
exit
the usb drive is now completely erased and empty
Installing Debian Squeeze
Main project page is here
http://projects.doozan.com/debian/
Now, SSH to the pogoplug. Default login is root and default password is ceadmin
just in case, kill all pogoplug call-home software with:
plug in the usb drive into the usb port closest to the network port.
We need to create partitions on the usb drive for debian.
Create the primary Debian install partition
n = new
p = primary
1 = 1st partition
1 = 1st cylinder
+2500M (your choice, I choose to create 2500Mb partition for Debain install)
Create the swap file partition
n = new
p = primary
2 = 2nd partition
enter = choose default (continuing from the end of the 1st partition)
+1000M = (your choice, I choose to create a 1000M partition for swap)
change partition type for primary
t = type
1 = 1st partition
83 = Linux
change partition type for swap
t = type
2 = 2nd partition
82 = Linux swap
Set 1st partition to active for booting
a = boot flag
1 = 1st partition
print partition tables to verify
writes changes and exit Fdisk
w
Continue following Jeff's install for Debian Squeeze
make sure you are in the /tmp folder, this is the only folder with read write access.
wget http://projects.doozan.com/debian/dockstar.debian-squeeze.sh
chmod +x dockstar.debian-squeeze.sh
export PATH=$PATH:/usr/sbin:/sbin
./dockstar.debian-squeeze.sh
After the install script finishes, it will ask if you want to Reboot now?
Choose NO
For whatever reason the install script doesn't seem to properly create the boot images needed to work properly so we have to manually create them.
We need to mount the 1st partition (where Debian was installed) to the /tmp/debian folder.
mount /dev/sda1 /tmp/debian
Now we need to change directory to the /tmp/debian/usr/bin folder because that's where the executables files are.
Now issue these two commands to manually create the images needed to boot properly
./mkimage -A arm -O linux -T kernel -C none -a 0x00008000 -e 0x00008000 -n Linux-2.6.32-5-kirkwood -d ../../boot/vmlinuz-2.6.32-5-kirkwood ../../boot/uImage
./mkimage -A arm -O linux -T ramdisk -C gzip -a 0x00000000 -e 0x00000000 -n initramfs-2.6.32-5-kirkwood -d ../../boot/initrd.img-2.6.32-5-kirkwood ../../boot/uInitrd
You should have seen the Linux-2.6-32-5-kirkwood image created after the first command, and initramfs-2.6.32-5-kirkwood image created after the second command.
We now should un-mount the usb drive before restarting
Setting up NetConsole
http://forum.doozan.com/read.php?3,14,14
Before rebooting the pogoplug, you might want to setup Netconsole to review the boot-up process in case trouleshooting is needed.
This is not required at all, but optional.
Configuring the pogoplug for your network with Netconsole
on the pogoplug, change to the /usr/sbin directory where the fw_setenv and fw_printevn files reside
From Jeff's post, you'll see we need to add 5 lines or variables, but substitute the "serverip" with your netconsole "server" or station to view the pogoplug boot process, and the "ipaddr" with the IP address that you'll assign to the pogoplug. Don't use an IP address that is currently in use or part of a DHCP pool for the pogoplug.
My netconsole "server" IP will be 192.168.0.25, and I choose 192.168.0.90 for the pogoplug, so one line at a time, I entered the following.
fw_setenv serverip 192.168.0.25
fw_setenv ipaddr 192.168.0.90
fw_setenv if_netconsole 'ping $serverip'
fw_setenv start_netconsole 'setenv ncip $serverip; setenv bootdelay 10; setenv stdin nc; setenv stdout nc; setenv stderr nc; version;'
fw_setenv preboot 'run if_netconsole start_netconsole'
I'm using Windows so I downloaded the windows port.
http://www.rodneybeede.com/Com…_Windows_using_MinGW.html
I downloaded and extracted the file to a folder I created in the root of my system drive, just for quicker access from a command prompt.
If your using Vista or Win 7, be sure to right click Command Prompt and choose "Run as administrator"
change directory to where you extracted the files
issue this command within the command prompt window
nc -l -u -p 6666
Expand the command prompt to cover the full height of your desktop
Now on the pogoplug, we'll finally issue the reboot command.
reboot
Watch the netconsole window for the boot process.
Finally, if the last line reads "Starting kernel..." then Debian squeeze sucessfully booted!
*See attached picture*
In my experience, the pogoplug plug booting and running Debian never uses the same IP address as before, so check you DHCP server to see what IP address was taken. Also, don’t worry about the status LED being orange, that’s normal for this version of kernel on the pogoplug.
SSH to the new IP address.
default login is root
default passwor is root
Note, if you can't SSH to it ( but know that Debian booted) then you may have to clear old SSHhostkeys from your computer.
after logging in, check your kernel with
Now at this point you're done with Debian Squeeze, and can install just about any packages you want to; but if you want to continue with installing Openmediavault read on....
This is another area where I had many, many problems actually getting OMV to install and work, and again I could not find all of the answers in the same place.
I know this is a little verbose for some, but this works for me...
I'll be jumping straight to the current version of OMV which in currently the .4.x branch
Update everything...
apt-get update
apt-get upgrade
since this updates the kernel, I'll reboot here.
SSH back to the pogoplug
Since the OMV .4.x branch has some dependencies we'll install those first, along with some other things...
apt-get update
apt-get install nano
apt-get install sudo
apt-get install lm-sensors
apt-get install xmlstarlet
wget http://ftp.us.debian.org/debian/pool/main/x/xmlstarlet/xmlstarlet_1.4.2-1_armel.deb
dpkg -i xmlstarlet_1.4.2-1_armel.deb
apt-get install postfix
(during postfix installation I choose "no configuration")
there are some things that we need to configure before and after installing OpenMediaVault to avoid errors during the install process, which I believe may apply to any existing Debian system?
Anyway, during the OMV install, collectd will fail if it can't resolve the host name, so we need to add the current pogoplug IP address and host name to the /etc/hosts file
currently my pogoplug is using IP 192.168.0.31 with a host name of debian, so I'll added a line of:
192.168.0.31 debian to the /etc/hosts file
add line:
192.168.0.31 debian
after the "local host" entry
Ctrl+O
enter, to save changes
Ctrl+X, to exit
Also, since the default "user" account that OMV expects is admin which currently doesn't exist, we need to create it...
*note* whatever password that you give user "admin" this will also be the password for admin when logging into OMV web-interface after installation!
Now we will reboot before installing OMV
SSH back to the pogoplug
Now we'll add the OMV repository and perform the install
We need to create /etc/apt/sources.list.d/openmediavault.list file
nano /etc/apt/sources.list.d/openmediavault.list
in the blank file, add...
deb http://packages.openmediavault.org/public fedaykin main
save and exit
apt-get update
apt-get install openmediavault-keyring
apt-get update
apt-get install openmediavault
Configuring mdadm
MD arrays needed for root file system, entered = none
ProFTPd run from inetd
Samba Server, input whatever your workgroup name is, or default
after OMV finishes installing, we need to cleanup and configure some more things.
we installed sudo earlier, but need to add user 'admin'
at the end of the file, add...
save and exit
we also need to add user 'admin' to the openmediavault group
adduser admin openmediavault
next, we need to give group openmediavalut permission to the /etc/shawdow file, for web authentication to work.
first verify current permissions
if it reads
-rw-r----- 1 root root, then we need to change it.
chown root:openmediavault /etc/shadow
verify the change with...
should include openmediavault now
since we've changed some permissions around, we are going to re-initialize omv and restart apache
pull up a web brower at the pogoplug IP address
login = admin
password = (the password you gave user admin during creation earlier)
once logged in to OMV, first enable SSH, then let's set or change the system time, time zone, and configure Primary DNS under network, DNS Server tab
after verifying that SSH is enabled, we'll reboot the system
I don't believe that I've left anything out, but you should be all done now.
I didn't solve any of these problems, but just couldn't all the solutions in the same place, so anyone trying to install debian squeeze or OpenMediaVault on a Pogoplug POGO-E02 I hope this can be your guide.