Why is the iPhone/iTunes so gay?

Seriously . . ..

I formatted my desktop computer a number of months ago.   Then a couple of weeks ago I brought my wife a sports iPod/iPhone arm band holder.  So I needed to load her 16GB up with music.  Something I haven’t done yet to date.  I had iTunes installed on the previous format to do firmware upgrades and upload some photos.

So format later and re-installation of iTunes.  I entered the apple id for my wife and went to do a sync.  Then it starts to explain that the device is connected to a different machine and the device needs to be wiped.  What the . . . doesn’t the apple id do anything.  That and it’s the same computer.

But that’s not the worst bit.  As I’ve got a file server which contains all my music I’ve tried importing all that music into iTunes but it never completes (ok, I’ve got a fair bit of music) so I copy the music I want onto the computer then have to import it into iTunes then sync it into the phone.  A process that takes 2~3 hours.  All of this could be done on my two year old Nokia E51 within 30 minutes.

One thing (of many) I hate about iTunes is you have to be limp wrested to use it.  Being I know a thing to two about computers, nothing (and I mean nothing) is where a normal people would expect things.  You plug you iPhone into your computer and it starts to automatically sync, the whole time your screaming at the screen because the option you need to change (or everything will be erased – outlook or iPhone) is hidden until you plug the iPhone in.

I’m happy to keep going but I won’t, after all.  Thanks to iPhone’s being such a hit everyone seams to think mac’s are the bee knees of computers and I’m going to need to support them now.  Looks like I need to waste my money on buying one.

HTC Desire Is Coming (27th May)

I’ve been in the market for a new mobile since December, when I ran out of contract. But ever since the Nexus One was released in US, I knew I had to wait until a android phone was released on the Telstra network here in Perth. Being Telstra, I figured I’d be waiting forever.

I have been following android for maybe a year. I really believe android will give iPhone a run for it’s money.

Well the wait is finally over. Telstra have announced that they are releasing the HTC Desire.

I am hanging out for it’s release what a great phone. I have been reading reviews of some of the differences between the Nexus and the HTC Desire.

Both feature the below

* 3.7″ (94mm) 480×800 WVGA, AMOLED capacitive touch screen with pinch-to-zoom capability
* Android™ 2.1 (Éclair)
* microSD™ memory card (SD 2.0 compatible) supports up to 32 GB
* 5 megapixel color camera with LED flash
* G-Sensor, digital compass, proximity sensor, ambient light sensor

Pros between Models

Nexus One

* Active noise cancelling mic (over standard style)
* Speech to text (where the HTC doesn’t – out of the box !?!)

HTC Desire

* Optic tracking (compared to a trackball)
* UMTS 850/2100 MHz & HSDPA
* HTC Sense
* ROM:112 MB & RAM:576 MB
* 1400 mAh Rechargeable Lithium-ion battery

To be completed . . . . .

RAID metadata on HDD

During a reformat of my server I found that two of my hard drives had metadata on them. This data made the new operating system (Fedora 12) think that they were in a raid preventing them from being loaded as they were missing thier .ddf1_disks information file being that they weren’t in a raid. On the old OS I could confirm this fault by running
# /sbin/dmraid -ay -vvv -d
WARN: locking /var/lock/dmraid/.lock
NOTICE: /dev/sdf: asr discovering
NOTICE: /dev/sdf: ddf1 discovering
NOTICE: /dev/sdf: hpt37x discovering
NOTICE: /dev/sdf: hpt45x discovering
NOTICE: /dev/sdf: isw discovering
NOTICE: /dev/sdf: jmicron discovering
NOTICE: /dev/sdf: lsi discovering
NOTICE: /dev/sdf: nvidia discovering
NOTICE: /dev/sdf: pdc discovering
NOTICE: /dev/sdf: sil discovering
NOTICE: /dev/sdf: via discovering
NOTICE: /dev/sde: asr discovering
NOTICE: /dev/sde: ddf1 discovering
NOTICE: /dev/sde: hpt37x discovering
NOTICE: /dev/sde: hpt45x discovering
NOTICE: /dev/sde: isw discovering
NOTICE: /dev/sde: jmicron discovering
NOTICE: /dev/sde: lsi discovering
NOTICE: /dev/sde: nvidia discovering
NOTICE: /dev/sde: pdc discovering
NOTICE: /dev/sde: sil discovering
NOTICE: /dev/sde: via discovering
NOTICE: /dev/sdd: asr discovering
NOTICE: /dev/sdd: ddf1 discovering
NOTICE: /dev/sdd: hpt37x discovering
NOTICE: /dev/sdd: hpt45x discovering
NOTICE: /dev/sdd: isw discovering
NOTICE: /dev/sdd: jmicron discovering
NOTICE: /dev/sdd: lsi discovering
NOTICE: /dev/sdd: nvidia discovering
NOTICE: /dev/sdd: pdc discovering
NOTICE: /dev/sdd: sil discovering
NOTICE: /dev/sdd: via discovering
NOTICE: /dev/sdc: asr discovering
NOTICE: /dev/sdc: ddf1 discovering
NOTICE: /dev/sdc: ddf1 metadata discovered
NOTICE: /dev/sdc: hpt37x discovering
NOTICE: /dev/sdc: hpt45x discovering
NOTICE: /dev/sdc: isw discovering
NOTICE: /dev/sdc: jmicron discovering
NOTICE: /dev/sdc: lsi discovering
NOTICE: /dev/sdc: nvidia discovering
NOTICE: /dev/sdc: pdc discovering
NOTICE: /dev/sdc: sil discovering
NOTICE: /dev/sdc: via discovering
NOTICE: /dev/sdb: asr discovering
NOTICE: /dev/sdb: ddf1 discovering
NOTICE: /dev/sdb: ddf1 metadata discovered
NOTICE: /dev/sdb: hpt37x discovering
NOTICE: /dev/sdb: hpt45x discovering
NOTICE: /dev/sdb: isw discovering
NOTICE: /dev/sdb: jmicron discovering
NOTICE: /dev/sdb: lsi discovering
NOTICE: /dev/sdb: nvidia discovering
NOTICE: /dev/sdb: pdc discovering
NOTICE: /dev/sdb: sil discovering
NOTICE: /dev/sdb: via discovering
NOTICE: /dev/sda: asr discovering
NOTICE: /dev/sda: ddf1 discovering
NOTICE: /dev/sda: hpt37x discovering
NOTICE: /dev/sda: hpt45x discovering
NOTICE: /dev/sda: isw discovering
NOTICE: /dev/sda: jmicron discovering
NOTICE: /dev/sda: lsi discovering
NOTICE: /dev/sda: nvidia discovering
NOTICE: /dev/sda: pdc discovering
NOTICE: /dev/sda: sil discovering
NOTICE: /dev/sda: via discovering
DEBUG: _find_set: searching .ddf1_disks
DEBUG: _find_set: not found .ddf1_disks
ERROR: ddf1: cannot find virtual drive record on /dev/sdc
NOTICE: added /dev/sdc to RAID set ".ddf1_disks"
DEBUG: _find_set: searching .ddf1_disks
DEBUG: _find_set: found .ddf1_disks
ERROR: ddf1: cannot find virtual drive record on /dev/sdb
NOTICE: added /dev/sdb to RAID set ".ddf1_disks"
DEBUG: set status of set ".ddf1_disks" to 16
INFO: Activating GROUP RAID set ".ddf1_disks"
WARN: unlocking /var/lock/dmraid/.lock
DEBUG: freeing devices of RAID set ".ddf1_disks"
DEBUG: freeing device ".ddf1_disks", path "/dev/sdc"
DEBUG: freeing device ".ddf1_disks", path "/dev/sdb"

I did find a command that would delete this raid setup but it failed to run because of the same fault

# /sbin/dmraid -E -r /dev/sdb
Do you really want to erase "ddf1" ondisk metadata on /dev/sdb ? [y/n] :y
ERROR: ddf1: seeking device "/dev/sdb" to 256055225090048
ERROR: writing metadata to /dev/sdb, offset 500107861504 sectors, size 0 bytes returned 0
ERROR: erasing ondisk metadata on /dev/sdb

Which brought me to low level formating the first 50MB of the drive. WARNING this erases everything on the drive. You will lose data please backup or move your data. The other thing to note is the /dev/sd? if you have multiple hard drives like me the wrong letter here can kill all data on the drive.  Check yours by using df -h

# umount /dev/sdb1
# dd if=/dev/zero of=/dev/sdb bs=1M

It’s only the beginning and end we need to blank but I’ve been googling and trying for half a day and can’t find it. In that time it could have blanked the whole thing. After that you need to fdisk it

# /sbin/fdisk /dev/sdb
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel with disk identifier 0xa99048f4.
Changes will remain in memory only, until you decide to write them.
After that, of course, the previous content won't be recoverable.

The number of cylinders for this disk is set to 60801.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
(e.g., DOS FDISK, OS/2 FDISK)
Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)

Command (m for help): p

Disk /dev/sdb: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0xa99048f4

Device Boot Start End Blocks Id System

Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-60801, default 1):
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-60801, default 60801):
Using default value 60801

Command (m for help): p

Disk /dev/sdb: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0xa99048f4

Device Boot Start End Blocks Id System
/dev/sdb1 1 60801 488384001 83 Linux

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.

And create the filesystem

# /sbin/mkfs.ext3 /dev/sdb1
mke2fs 1.40.4 (31-Dec-2007)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
61063168 inodes, 122096000 blocks
6104800 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=0
3727 block groups
32768 blocks per group, 32768 fragments per group
16384 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968,
102400000

Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 29 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.

Don’t forget the label for easier mounting and remount

# /sbin/e2label /dev/sdb1 LABEL=switch
# mount LABEL=switch /media/switch/

From that it stopped listing that drive as a raid, Yay!

# /sbin/dmraid -ay -vvv -d
WARN: locking /var/lock/dmraid/.lock
NOTICE: /dev/sdf: asr discovering
NOTICE: /dev/sdf: ddf1 discovering
NOTICE: /dev/sdf: hpt37x discovering
NOTICE: /dev/sdf: hpt45x discovering
NOTICE: /dev/sdf: isw discovering
NOTICE: /dev/sdf: jmicron discovering
NOTICE: /dev/sdf: lsi discovering
NOTICE: /dev/sdf: nvidia discovering
NOTICE: /dev/sdf: pdc discovering
NOTICE: /dev/sdf: sil discovering
NOTICE: /dev/sdf: via discovering
NOTICE: /dev/sde: asr discovering
NOTICE: /dev/sde: ddf1 discovering
NOTICE: /dev/sde: hpt37x discovering
NOTICE: /dev/sde: hpt45x discovering
NOTICE: /dev/sde: isw discovering
NOTICE: /dev/sde: jmicron discovering
NOTICE: /dev/sde: lsi discovering
NOTICE: /dev/sde: nvidia discovering
NOTICE: /dev/sde: pdc discovering
NOTICE: /dev/sde: sil discovering
NOTICE: /dev/sde: via discovering
NOTICE: /dev/sdd: asr discovering
NOTICE: /dev/sdd: ddf1 discovering
NOTICE: /dev/sdd: hpt37x discovering
NOTICE: /dev/sdd: hpt45x discovering
NOTICE: /dev/sdd: isw discovering
NOTICE: /dev/sdd: jmicron discovering
NOTICE: /dev/sdd: lsi discovering
NOTICE: /dev/sdd: nvidia discovering
NOTICE: /dev/sdd: pdc discovering
NOTICE: /dev/sdd: sil discovering
NOTICE: /dev/sdd: via discovering
NOTICE: /dev/sdc: asr discovering
NOTICE: /dev/sdc: ddf1 discovering
NOTICE: /dev/sdc: ddf1 metadata discovered
NOTICE: /dev/sdc: hpt37x discovering
NOTICE: /dev/sdc: hpt45x discovering
NOTICE: /dev/sdc: isw discovering
NOTICE: /dev/sdc: jmicron discovering
NOTICE: /dev/sdc: lsi discovering
NOTICE: /dev/sdc: nvidia discovering
NOTICE: /dev/sdc: pdc discovering
NOTICE: /dev/sdc: sil discovering
NOTICE: /dev/sdc: via discovering
NOTICE: /dev/sdb: asr discovering
NOTICE: /dev/sdb: ddf1 discovering
NOTICE: /dev/sdb: hpt37x discovering
NOTICE: /dev/sdb: hpt45x discovering
NOTICE: /dev/sdb: isw discovering
NOTICE: /dev/sdb: jmicron discovering
NOTICE: /dev/sdb: lsi discovering
NOTICE: /dev/sdb: nvidia discovering
NOTICE: /dev/sdb: pdc discovering
NOTICE: /dev/sdb: sil discovering
NOTICE: /dev/sdb: via discovering
NOTICE: /dev/sda: asr discovering
NOTICE: /dev/sda: ddf1 discovering
NOTICE: /dev/sda: hpt37x discovering
NOTICE: /dev/sda: hpt45x discovering
NOTICE: /dev/sda: isw discovering
NOTICE: /dev/sda: jmicron discovering
NOTICE: /dev/sda: lsi discovering
NOTICE: /dev/sda: nvidia discovering
NOTICE: /dev/sda: pdc discovering
NOTICE: /dev/sda: sil discovering
NOTICE: /dev/sda: via discovering
DEBUG: _find_set: searching .ddf1_disks
DEBUG: _find_set: not found .ddf1_disks
ERROR: ddf1: cannot find virtual drive record on /dev/sdc
NOTICE: added /dev/sdc to RAID set ".ddf1_disks"
DEBUG: set status of set ".ddf1_disks" to 16
INFO: Activating GROUP RAID set ".ddf1_disks"
WARN: unlocking /var/lock/dmraid/.lock
DEBUG: freeing devices of RAID set ".ddf1_disks"
DEBUG: freeing device ".ddf1_disks", path "/dev/sdc"

On to the second drive, hope this has been a help to you too. As it could me two days of googling to get all of this.

Difference between Vbox & VMWare

Well I’ve been running Virtual Box for a month now, and being that I’ve used VMWare for 3 years prior.  I feel I’ve experience both well enough to give a over view of both.  I have used them in both windows and linux (Fedora) host environments so I’m planning on giving pro’s and con’s in both environments.

VBox (first pro’s then con’s)

  • GUI very easy to understand and use
  • Shared folders
  • Very easy to install on both Windows and Linux (simple driver rebuild after kernel updates)
  • Seamless mode (very impressive a must try)

  • Hard to run as service
  • Seamless Mode not working well on windows 7 hosts or guests

VMWare (first pro’s then con’s)

  • Runs as a service
  • Web interface for console admin on any machine (on 2.X)
  • Easy to install on windows

  • Impossible to install of Linux (when not in supported list) and keep running (when kernel changes are made)

What would I recommend? VBox for all linux’s users, end of story, it’s just too hard to install and keep it working.  Although having a web interface would be awesome for that headless server.  As for windows if it’s a server VMWare but for a workstation VBox.