I used this step many times today and it always worked, so i’m going to share it with you.
if your iphone stuck booting at apple logo and doesnt detected by system, then the guide for you
0) remove folder /Users/<user name/Library/iTunes/Device Support
1) close itunes
2) run pwnagetool
3) press DFU button in pwnage tool
4) pwnagetool asks you to power on iphone, but you hold Power and Home for ten sec, then release power and hold only home for another 10 secs, then release home
5) pwnage tool detected your iphone powered up
6) pwnagetool asks to to power off iphone, but you hold Power and Home for 6 secs, then release both power and home
7) pwnagetool detected iphone was powered off, now jsut follow pwnagetool insruction to enter dfu mode
8) enter dfu mode with pwnagetool hints
9) close pwnagetool
10) open itunes, itunes can crash on start – rerun itunes, if itunes stuck crashed – reboot pc (but do not unplug the phone), after reboot just run itunes
11) option-restore iphone with custom ipsw.
also, iphoneos 3.0 has own version of libs like libxml2, libxslt, and if u install those libs from repo you will have to restore, but many apps depends on those libs, what to do ?
for libxml2 – dload deb pkg, copy it to iphone into /var/root folder , ssh into iphone and do this commands
cp libxml2.2.dylib libxml2.2.dylib_old
dpkg -i /var/root/libxml2_2.6.32-5_iphoneos-arm.deb
cp libxml2.2.dylib_old libxml2.2.dylib
ln -s libxml2.2.dylib libxml2.dylib
cydia bans such pkgs like libxml2 to appear on list, but apps still depends on it and dont want to install
after running those commands, you can install appbackup from cydia
Warning, icy 1.4.1 doesnt ban those pkg and can install them, killing iphoneos this way.
This time jailbreak came very dirty, installing any app from repo can kill OS.