UPDATE: The workarounds discussed here are also appliable on the latest real 1.1.3 jailbreak phones.
Starting from firmware 1.1.3, some applications (particularly SpringBoard) no longer run as root, they run as user mobile, as showing below:
root@n000b /System/Library/LaunchDaemons # ps axu USER PID %CPU %MEM VSZ RSS TT STAT STARTED TIME COMMAND root 56 1.8 0.9 273812 1052 p2 Ss+ 4:45PM 0:00.44 -sh mobile 15 0.9 19.0 317500 22624 ?? Ss 4:38PM 0:20.32 /System/Library/CoreServices/SpringBoard.app/SpringBoa root 22 0.4 0.4 274000 432 ?? Ss 4:38PM 0:02.66 /usr/sbin/syslogd -bsd_out 1 root 13 0.0 1.1 277936 1320 ?? Ss 4:38PM 0:00.94 /System/Library/Frameworks/CoreTelephony.framework/Sup mobile 19 0.0 1.4 285780 1704 ?? Ss 4:38PM 0:00.55 /System/Library/Frameworks/IAP.framework/Support/iapd mobile 24 0.0 0.9 282288 1024 ?? Ss 4:38PM 0:00.22 /usr/libexec/ptpd -t usb root 25 0.0 0.5 273276 560 ?? Ss 4:38PM 0:01.80 /usr/sbin/sshd -4D mobile 26 0.0 1.6 290036 1920 ?? Ss 4:38PM 0:02.15 /usr/sbin/mediaserverd mobile 35 0.0 2.5 309536 2952 ?? S 4:38PM 0:01.12 /Applications/MobilePhone.app/MobilePhone --launchedFr root 38 0.0 0.6 273276 732 p0 Ss 4:38PM 0:01.13 /usr/sbin/sshd -4D -R mobile 60 0.0 0.3 272876 388 ?? S 4:45PM 0:00.14 /usr/libexec/afcd --lockdown -d /var/mobile/Media -u m mobile 12 0.0 1.1 277968 1312 ?? Ss 4:38PM 0:00.32 /usr/sbin/BTServer
This behavior change has caused alot of problems to the third party applicatoins, this article summarizes some of the issues and the possible workarounds.
NOTICE: You may not encounter these problems if you jailbreak in Nate’s method because Nate’s method changes mobile UID and GID to 0 hence applications are actually running as root. PS: This is a bad idea.
UPDATE: Don’t change mobile UID and GID to 0 permanantly, this may not comply to Apple’s future updates.
General Fix - It’s a Must
Please apply this fix first. In general, applications tend to save their data into two folders:
/var/root/Library /var/root/Library/Preferences
To reduce the possible issues, please make these two folders world-writable:
chmod 777 /var/root/Library chmod 777 /var/root/Library/Preferences
If the above folders do not exist, create them.
UPDATE: Sometimes your mobile folder may have wrong permissions, to be sure your mobile account has no such problems, do this:
chown -R mobile:mobile /var/mobile
This will save you from those weird problems (e.g. ‘MobileSafari doesn’t save cookies‘).
UPDATE: Seems like the following library is required by many applications (like iRadio), so better have it settled before weird problems appear:
mkdir -p /usr/local/arm-apple-darwin/lib ln -s /usr/lib/libgcc_s.1.dylib /usr/local/arm-apple-darwin/lib/.
This general rule will satisfy most of the applications. But some applications may need special fix to work properly. The following fixes are additions to this general fix.
Installer
Normally the jailbreak 1.1.3 has set the proper permission for Installer, but if for whatever reason your Installer can’t install any applications, it’s probably having the permission issue, try to fix it in a shell:
chmod 4755 /Applications/Installer.app/Installer
UPDATE: There’s Another Post which discusses some very common Installer related issues.
Term-vt100
After upgrading to 1.1.3, you may have noticed Term-vt100 no longer allows to login, it keeps asking for user and pass (5 attempts then die). This is because the /usr/bin/login needs to be SUID root but Installer didn’t set it.
If you still have SSH access, take the following steps to fix it:
chmod 4755 /usr/bin/login mkdir -p /usr/local/arm-apple-darwin/lib ln -s /usr/lib/libgcc_s.1.dylib /usr/local/arm-apple-darwin/lib/.
After the fix, when Term-vt100 asking for password, simply enter your root password (default to alpine) to login.
UPDATE: If you have problem entering commands (session aborted after 3 some characters), please replace your /bin/sh with the following one (it’s actually a bash, compiled with new toolchain and supports history):
UPDATE: BTW, this new bash also solves the ‘backspace acting like a space’ issue.
If you are totally locked out (no SSH, no Term-vt100), you still have iPHUC as a last resort, read on…
Can’t Login ?
I had experienced difficulties logging to iPhone, my SSH was not working and Term-vt100 didn’t work either, I used the following method to fix it:
1. Get the master.passwd with iPHUC:
setafc com.apple.afc2 cd /etc getfile master.passwd master.passwd exit
2. Now edit the master.passwd file, change the mobile UID and GID to 0 (was 501) as shown below:
mobile:/smx7MYTQIi2M:0:0::0:0:Mobile User:/var/mobile:/bin/sh
3. Put the modified master.passwd back onto iPhone using iPHUC:
setafc com.apple.afc2 cd /etc putfile master.passwd exit
4. Reboot iPhone, start Term-vt100 (it should work now), enter the following commands:
chmod 4755 /usr/bin/login mkdir -p /usr/local/arm-apple-darwin/lib ln -s /usr/lib/libgcc_s.1.dylib /usr/local/arm-apple-darwin/lib/.
5. Revert master.passwd back to the original (mobile UID and GID set to 501, don’t leave mobile running as root permanantly, it may not comply to Apple’s future updates) as shown below:
mobile:/smx7MYTQIi2M:501:501::0:0:Mobile User:/var/mobile:/bin/sh
and put it back onto iPhone (in /etc) using iPHUC (as introduced above) and reboot.
Now in Term-vt100, use the root password (it’s alpine if unchanged) to login.
BSD Subsystem ‘passwd’ Utility
The passwd utility in BSD Subsystem is known to cause inifite SpringBoard crash, so you can’t use it to change password. A workaround is to use a simple perl line to generate the password DES hash and edit the /etc/master.passwd manually.
To set a new password, execute the following perl line:
perl -e 'print crypt("PASSWORD", "XX")."\n"'
Where PASSWORD is your new password, XX are 2 random characters.
The command will generate the DES hash of your new password, use it to replace the password hash in your /etc/master.passwd. For example, to change the mobile’s password to ‘123456‘, you replace the hash in line:
mobile:/smx7MYTQIi2M:501:501::0:0:Mobile User:/var/mobile:/bin/sh
to new hash (generated by perl -e ‘print crypt(”123456″, “GO”).”\n”‘):
mobile:GOKK7/LS4S5hY:501:501::0:0:Mobile User:/var/mobile:/bin/sh
NOTE: DES only applies to the first 8 charcters of your password, so giving any longer than 8-character password is meanless.
iCosta
Check another article Install iCosta on 1.1.3.
iFlix
I’ve just tried iFlix 0.9.9b, it crashed when I wanted to save account info. I tried to find out why it crashed, so I tried to run it from shell as mobile:
/Applications/iFlix.app/iFlix
Then I got these error messages:
2008-02-19 17:08:10.542 iFlix[326:d03] *** -[NSCFArray getFileSystemRepresentation:maxLength:]: selector not recognized [self = 0x16d290] 2008-02-19 17:08:10.549 iFlix[326:d03] *** Uncaught exception:*** -[NSCFArray getFileSystemRepresentation:maxLength:]: selector not recognized [self = 0x16d290] Trace/BPT trap
UPDATE: Since NSCFArray in 1.1.3 doesn’t have a method named getFileSystemRepresentation, I’d assume it’s a software bug.
I don’t have a solution for 0.9.9b, if you want to use it, please use an older version.
UPDATE: Jim commented he had success by running iFlix from Term-vt100, but I can’t re-produce his success.
iRadio
iRadio needs root privilege to load in extra service, apply the following fix to make it work:
chmod 4755 /Applications/iRadio.app/iRadio mkdir -p /usr/local/lib ln -s /usr/lib/libstdc++.6.dylib /usr/local/lib/.
UPDATE: Further investigation shows it also requires the libgcc_s.1.dylib, I didn’t notice this because I’ve already have the library settled :)
mkdir -p /usr/local/arm-apple-darwin/lib ln -s /usr/lib/libgcc_s.1.dylib /usr/local/arm-apple-darwin/lib/.
MobileFinder
The MobileFinder’s file related functions will not work under 1.1.3 without fix, because the MobileFinder is now running as mobile, so it doesn’t have enough privileges to do things like copying/moving/removing, simply giving MobileFinder SUID root permission is not sufficient.
Before a new MobileFinder is released, a quick fix for the above issue is to SUID root for MobileFinder and some of the tools in /bin:
chmod 4755 /Applications/Finder.app/Finder chmod 4755 /bin/cat /bin/chmod /bin/chown /bin/cp /bin/ls chmod 4755 /bin/mkdir /bin/mv /bin/rm /bin/rmdir /bin/unlink
UPDATE: giving 4755 to /bin/mkdir might have side effect. Suppose an application calls /bin/mkdir to create a folder (although it shouldn’t be programmed in this way), then tries to write data into the folder, it’ll fail because the /bin/mkdir is SUID root hence the folder it creates is owned by root, not by mobile.
OpenSSH Not Allow mobile Login
If you can SSH with root but can’t do with mobile account, edit the /etc/sshd_config, looking for the following item:
UseLogin no
Change it to:
UseLogin yes
Then restart OpenSSH (or simply reboot iPhone):
launchctl remove com.openssh.sshd launchctl load /Library/LaunchDeamons/com.openssh.sshd.plist
You should now be able to SSH with mobile.
NOTICE: You can’t su to root because setting /usr/bin/su to SUID root does not work, reporting the following error in shell:
dyld: Library not loaded: libarmfp.dylib
Referenced from: /usr/bin/su
Reason: unsafe use of relative path libarmfp.dylib in /usr/bin/su with setuid binary
Trace/BPT trap
and this error in syslog:
Error: vmutils: failed to find non-NULL dyld_all_image_infos.infoArray structure
I assume this is a bug.
OpenSSH Respawned Too Quickly
This is not a 1.1.3-specific issue, this may happen to all versions of firmwares as long as you’ve installed the OpenSSH. The launchd keeps respawning sshd even though it has been started, the child will abort because it can’t bind to port 22, then launchd will again respawn it, and loop. This lags the iPhone and causes performance penalty.
To check if you have this issue, please enable syslog on iPhone following This Article, then check the /var/log/syslog. If the following lines appear, you have this issue:
Feb 2 21:30:03 localhost sshd[336]: error: Bind to port 22 on 0.0.0.0 failed: Address already in use. Feb 2 21:30:03 localhost sshd[336]: fatal: Cannot bind any address. Feb 2 13:30:03 localhost launchd[1]: 16/com.openssh.sshd: respawning too quickly! throttling Feb 2 13:30:03 localhost launchd[1]: 16/com.openssh.sshd: Throttling: Will restart in 10 seconds
This issue can be fixed by forcing the sshd running in the foreground. Locate the launch daemon file:
/Library/LaunchDaemons/com.openssh.sshd.plist
Look for the line <string>/usr/sbin/sshd</string>, add a line right below it:
<string>-4D</string>
Restart iPhone to make it active. The parameter -4D tells sshd running in foreground and using only IPv4 protocol. NOTE: you may also use:
<string>-D</string>
if you prefer.
ScreenShot
This application needs to modify /Library/LaunchDaemons/nl.robota.iphone.screenshot.plist, so it must have write permission to this file. However, the permission 666 is not working here because launchd will treat the file as a dubious config and will skip it.
To fix it, try changing the file owner to mobile:
chown mobile /Library/LaunchDaemons/nl.robota.iphone.screenshot.plist
UPDATE: There’s a catch here, your snapshots are not visible in Photos even if you choose saving to /var/mobile/Media/DCIM/100APPLE/, because the filename is not compliant, it must be IMG_nnnn.JPG to be recognizable by Photos, where nnnn is a 4-digit number, besides no thumbnails will be auto created.
SIP-VoIP
This application has hard-coded the config file path, your account will be saved in /Applications/SIP-VoIP.app/accounts.xml, which means you can’t even rename the folder name. To make it save your settings, do the following:
chmod 777 /Applications/SIP-VoIP.app
If you don’t like this world-writable method, you may also do this:
chown mobile /Applications/SIP-VoIP.app
weDict
weDict stores the dictionary index cache in /var/root/Library/weDict, if for some reason this folder was not created (which is my case), apply the following fix:
mkdir /var/mobile/Library/weDict chown mobile /var/mobile/Library/weDict ln -s /var/mobile/Library/weDict /var/root/Library/.
weTool
This application will access the follow folders:
/var/root/Library/AddressBook /var/root/Library/CallHistory /var/root/Library/SMS
In case the folders do not exist, it fails quietly. So the general fix isn’t sufficient yet.
To make it work, create two symbolic links (link to AddressBook has been setup by jailbreak) as shown below:
ln -s /var/mobile/Library/CallHistory /var/root/Library/. ln -s /var/mobile/Library/SMS /var/root/Library/.
The above symbolic links link the folder to your call history and sms folders stored in mobile account.

106 Comments
Thanks again. Now TodoLits works!!!
Vnotes doesn’t work in 1.1.3
Any ideas?
Thxs.
You say that OpenSSH may be respawning to quickly, causing a performance penalty. Is this an issue only some people will have, or is it common for everyone using OpenSSH? If it is only happening to some users, is there a way to check if the issue is present on my phone?
Refresh to see the new contents.
Hey George
Mobile Finder only change contents in folder “mobile” the other folders (root, Applications etc) can not be changed, lack any command?
Thanks for help.
hi george
after i upgraded dev team official 1.1.3-3 google map can locate my location, dunno why i thought 1.1.3 baseband needed ?? however hybrid map is still not working ? anyidea ? i live in Hong Kong
many thx
Jorge,
MobileFinder itself also needs to be SUID root:
Terry,
No idea on map location.
Hi george, i have problem understanding how to enable syslogd on the iphone can u please elaborate the first step, sorry for asking noob question
Redirect Syslogd Output to a File:
1. Create usual /etc/syslog.conf e.g.
*.* /var/log/syslog
Uh, isn’t that clear enough? You create a file named syslog.conf in /etc/ folder, and the file has one line *.* /var/log/syslog. The word e.g. means if you are a Unix geek you know how to deal with the config file, otherwise that single line is enough.
Just a quick note to say THANKS for the excellent write ups. I was able to load the Dev Team 1.1.3-3 in about 10 minutes (uploaded dmg file). I’ve also fixed up a couple of those problem apps. Thanks again.
Hi George, on Official 1.1.3-3 the CameraPro application saves images on other directory not CameraRoll, is possible to create a virtual link… how to? Thanks.
Thannks!! i fix the term-vt100 problem!!
How about a fix for iPhysics? Installing new games does not seem to work.
Thanks in advance! :)
Thanks for a lot of very sensible advice.
One note, two questions.
Note: Terminal has now been updated to 2.0.7 which changes it to run as mobile. No more password is required, it’s running very well for me. (1.1.3-3 Official JB)
Here’s the download link: http://mobileterminal.googlecode.com/files/Terminal-207.zip
Question 1: I can turn off OpenSSH 4.6p1-1 with UIctl or NetServices, but once it’s off I can only get it to restart by rebooting the phone. (Symptom: UIctl and NetServices both SHOW it’s on, but it doesn’t actually work). Any ideas?
Question 2: Any ideas on how to change the SSH password, or are we stuck until BSD Subsystem 2.0 gets updated?
OK, I lied. I have a third question.
Now that Terminal is running as mobile, a lot of the power is gone. I tried to su root, but when I enter the password alpine, it says “wrong password”. Looks like the same old problem in reverse to me. Any idea how to switch users?
David, if you follow the instructions in the article to fix the Term-vt100, you should have no problem login as root.
Hi,
MobileFinder doesn’t work fine on my 1.1.3 Dev T. JB, it doesn’t save Settings, any solution?
Thanks.
George:
Yes, I know how to make vt100 work as root, but it requires a password each time unless you +s login and sh which seems unwise. With Terminal 2.0.7, there’s no password required, but for some reason su is broken. I think it’s because since you’re running as mobile, it’s a catch-22– you can’t see the directories needed to properly execute su.
Any ideas on the other two, more pressing questions?
Thanks.
Why do you think login SUID root unwise? It is the way the login works, it needs to check the master.passwd. Without this SUID root, it simply can’t allow anyone to login. Besides, you may of course login with mobile even on prior 2.07, just type an enter, and a login: prompt will appear, you can enter mobile and its pass to login, unfortunately, there’s a library related issue which seems forbids to set su SUID root, so you can’t su to root from mobile.
BTW, to check what’s wrong with the openssh, you need to check your syslog. To change password, there’s a fix floating around on the web, you may also use a perl script to generate the DES hashed password and put it into master.passwd.
Thanks for the great write-up; the changes for Mobile Finder (Finder) solved most of my issues, but Finder is not saving changes to Finder settings (e.g. show hidden files, application launch, etc.) After making changes, they go back to the default settings.
rkisling, I didn’t have problem saving MobileFinder settings, it works after those SUID root changes.
Hello everyone that reed this post, I have a problem, I have an OTB 1.1.3 upgraded to 1.1.3 Dev Team and it cant make calls, it can receive calls but cant do, it says the error ” Call failed” some body help me please !!!
Thanks George. Looking at the syslog was indeed helpful, and I discovered that Netservices could turn SSH back on if I simply did:
chmod +s /Applications/NetServices.app/NetServices
And yes, your point about login SUID root is well-taken, I’m moving back to vt100
As for the password change, I’ve seen a few claims that for things that allow a password change, but nothing confirmed. Every thread I’ve found ends with: “now I’m in an endless reboot cycle”.
I assume that the DES salt has changed under 1.1.3, is that correct?
This is the last issue I have with 1.1.3, sure would love to solve it!
David, I’ve added a short perl command line to generate the DES hash, please refresh to check it.
Thanks George. Apparently I’m an idiot, because I can’t make this work. I copied your perl to a text file, replaced “PASSWORD” with “anewword” and then pasted the modified line into terminal (I didn’t change the salt). Terminal output: “XX.YkB0Pp0ykI”
I copied that into the master.passwd file where it said “smx7MYTQIi2M” for both root and mobile, then replaced the file in /etc/ with the new file. After that, I couldn’t get the phone to accept any password. Of course I kept a backup of the original, so I restored it and things worked fine again. Sorry to be so thick, but what am I doing wrong?
Thanks; I’ll give it another try.
David, I would assume that your file was edited under Windows which resulted in a wrong master.passwd. If it wasn’t in such a case, then I have no idea what could be wrong.
George,
Nope, this was done under Mac OS X 10.4.11. I have to admit, I don’t understand at all how the salt can be random pair. How can the decryption work without a known entitiy?
It works because the first 2 characters of the hash are exactly the salt :) e.g. as for mobile’s password, you get the salt /s, and you may crypt it with:
and you’ll get the same result: /smx7MYTQIi2M.
BTW, the slash (/) is also part of the default password hash, are you sure you replaced the right hash?
Hi,
I accidentally deleted ‘master.passwd’ and now the iphone only boots into recovery mode.
Any way to copy the file back to iphone while in recovery mode using iphuc or some other tool?
any insights would be greatly appreciated!
thanks!
Nope, iPHUC can’t upload files while iPhone’s in recovery mode.
Well, this was a big help in getting iradio running, but now the ipod function is broken! When I open iPod, it says I have no music, when the sync function from itunes says all is well. Any idea how to fix?
Greg, I don’t think it breaks iPod, can you revert it and see if iPod works ? Afaik, the scenario you encountered is probably because: iTunes syncs to root, while iPod accesses in mobile. BTW, iTunes syncing issue is a known issue which has been discussed in another article.
George, you’re a genius!
You hit the nail on the head with my password issue, I had missed overwriting the slash (/) with the new password. Thanks VERY much for taking the time to explain this so clearly to me. The funny thing is, I could have just overwritten the password with the one from my old 1.1.2 backup. They’re exactly the same (not the whole file, just the password). I thought of trying that, but never got around to it.
Thanks again for your help.
Being that my name is also George, I’ll use G2 to avoid confusion!
I’ve updated to 1.1.3 three times following fresh installs of 1.1.1. Each time I’ve done so, I’ve had a similar problem. What’s perplexing is that this problem has affected some apps every time I’ve upgraded and others only sometimes.
The problem: for apps that store account information or other details (e.g. iFlix or SIP-VoIP), I have have to enter my information every time I open the program. Similarly, during one of the past upgrades, I was able to create one note in the Notes app then, each time I reopened the app, that note could not be deleted or modified and I was unable to create any new notes. Currently, I’m only having the problem with iFlix and VoIP. I realize this isn’t a ground shaking problem, but my OCD is causing me to waste way too much time trying to figure this out! Any help you can offer would be appreciated. Thanks.
G2, I would suggest you checking the syslog following This Article and see what’s happending during your using Notes.
Hi George,
Thanks for the reply, I was having password issues with the SSH, and attempted to reset per your instructions. It seemed to enable apps that weren’t working such as iradio and inetflix, but did make the ipod function disappear. I think it has something to do with the files not being in the place the ipod app expects to see them. And yes, I did manage to get everything back by downgrading and getting everything jailbroken again. It looks like I will have to do without some 3rd party apps until I can figure this out. Any idea why the open ssh would change it’s own password, and why it’s not accessible from the iphone? I mean how hard could it be to get the password.
Greg, OpenSSH didn’t touch your password, and it will never do so, besides my phone works perfectly now, the issues you have encountered might be related to an unsuccessful upgrade (just my guess). I’ve done several times upgrading using dev team’s 1.1.3-3 and all succeeded, the problems I listed here are all solved.
Thanks George. I followed the instructions in the article and then checked out the output in the var/log folder which is (oddly?) named syslo (not syslog, which is what I expected). My Notes app is working fine since my last upgrade. It’s iFlix, SIP-VoIP, and MobileToDoList that won’t save any information that I input. I tried iFlix and VoIP and found that the dynamic text dat file wasn’t allowing modifications, so I modded them to 755, but it didn’t seem to help. Beyond that, I have to admit I have no idea what I’m really looking for. Forgive my ignorance. Do you have any more advice?
G2, the syslo must be caused by a typo, check your /etc/syslog.conf :) I don’t use iFlix, SIP-VoIP, but I do use MobileToDoList sometimes, I’ll check if it has the ‘unable to save’ problem you mentioned.
BTW, did you apply the General Fix before the other fixes? It’s the first step to fix possible issues.
G2, according to my test, the MobileToDoList should work withou problem if you take the General Fix, it’s a MUST for most applications.
I performed the General Fix before posting. To be honest, I just checked MobileToDoList again, and you’re right - it does work. Thanks for bringing my attention to that. I’m not a big fan of the other ToDo program! iFlix and VoIP are still not working correctly, however. Really - thanks VERY much for your help.
G2, for iFlix to work, please try the following steps carefully:
The above steps worked for me. The point is to run it once with root account. Please tell me if it works.
P.S. Don’t know what SIP-VoIP is, didn’t find it in Installer.
Using WinSCP, I logged in as root. I opened a console and executed iFlix. iFlix runs but then I get the console error message that says that the host has not answered for more than 15 seconds and asks if I want to abort. After waiting a while I aborted and restarted (the home button would not allow me to return to springboard). I’m not sure if it stems from the fact that I am unable to close iFlix using the console, but it has the same problem when I reboot.
So iFlix can run but you can’t login, is that right? I thought you meant you can’t start iFlix. You should be able to quit iFlix from console if it’s started from console, just press Ctrl-C, and yes you can’t quit it by pressing Home if it’s not started by SpringBoard.
I don’t have iFlix account, where can I register one if its free?
No. iFlix and VoIP both run, and I can even use them as they are intended (no problem with logging in to either), but they don’t save my login information. VoIP gives me the initial startup screen pop-up every time I open the app. Sorry for the confusion.
G2, the iFlix saves its account info in /var/root/Library/Preferences/com.biosfire.iFlix.Accounts, make sure you have 777 permission on /var/root/Library/Preferences, I think your jailbreak should have settled it correctly but according to your description, seems like you have permission problem on that Preferences folder. Check it.
I have a private/var/preferences folder and it’s permissions are set to 777.
I have a private/var/root/Library folder, but it did not contain a Preferences folder, so I created one and set it’s permissions to 777. Success!
This did not fix VoIP, though. Of course I realize that, if VoIP doesn’t use that folder then creating it won’t fix the problem. Is there another folder that I can create? Just curious - how did you determine the file that iFlix used to save settings?
Hehe, I quickly reversed iFlix to find out where it stores the account settings :) For VoIP, where is the package I can download, I might give it a try later.
Brilliant! It has to be the name. You must live on a mountaintop in Nepal or something. I’m not sure how to reverse an app, but I’m definitely impressed and grateful. You can get SIP-VoIP from the Touchmods repository: http://touchmods.net/rep.xml. Much thanks.
G2, for SIP-VoIP, you need to make the application folder world-writable, ie:
Enjoy.
That’s what it was! I initially made sure that folder 755 permissions, which was apparently insufficient. Thanks so much, George. I really appreciate your help.
iRadio still crashes
hi George,
first of all, thank you for investing you time to help all of us.
but i’ve got a BIG prob with your term-vt100 fix.
I just did everything like you told above, and i get stuck at “Can’t Login? - Step 4″
I changed the master.passwd file with (win xp) editor to … 0:0:: … and restarted my phone.
terminal now does still NOT work. it shows up 3 lines ending with [process completed]
and i’m not able to type in ANY command.
hope you can help me, because i can’t SSH into my phone anymore, finder can’t change things and terminal is also out of work …. i’m not able to myke my phone do anything …
i also tried to replace the /bin/sh with the backup i made before the “bash” via iPHUC but even after i replaced the sh with the original one, SSH and terminal don’t seem to work.
the next thing i tried is reinstalling BSD Subsystem 2.0 via Installer … allways “Error - Package download failed!”
ok so i wanted to reinstall term-vt100 … uninstalled it, wanted to install again -> “Error - Package download failed!”
At the end of all i have NO working SSH client, NO working terminal and can’t install things with installer anymore.
What the fuck does the “Bash” for term-vt100 change? its just one fucking file wich is replaced … o.O
hope you can help me!
ok, now installation of term-vt100 worked again. My current situation:
* iphone 1.1.3, official tmob customer (germany), official dev JB
* original master.passwd file AGAIN
* original /bin/sh file AGAIN (replaced the bash sh file via iPHUC with the original sh file)
* SSH (scp or sftp) allways denied
* term vt-100 asking for pw ( after entering alpine it says something like “Login: /bin/sh: permission denied -> [process completed]” and i’m not able to type anything
* not able to reinstall BSD Subsystem 2.0
Please help me guys
hanson, I guess you messed the file during your editing, the files must be in Unix-format text files, which means the end-of-line should be LF (0×0A, Unix), not CR LF (0×0D 0×0A, Windows).
The theory behind Can’t Login? is to change mobile UID temporarily to 0 so that you can login as root hence having no permission problem, if it’s changed correctly, it should work. But if you messed the master.passwd file and turned it into a Windows text file, you can’t get a valid shell after the login so you simply can’t login.
I would suggest you giving Vim for Windows a try, it will retain your file format, if it’s Windows style, it’s still Windows style after edit, if it’s Unix style, it’s still Unix style after edit.
BTW, if there were no M$ around, we should have no such EOL problem. *BSD, OSX, Linux, BeOS, AIX, HP-UX, etc all use LF as EOL, only M$ doesn’t, sigh.
No WiFi
I was wondering if you could help. I had an unlocked 1.1.2 (originally purchased with 1.0.1) phone. I tried the upgrade to 1.1.3 using the installer. It didn’t complete. Ever since my phones Wi Fi button is greyed out. I reflashed to 1.0.2 including downgrading modem and have since tried every version in between but I cannot get WiFi to come back. Also the Bluetooth can be turned on but the address remains all zeros. Any ideas?
I did the same to another phone and it works perfectly on 1.1.3.
Thank you in advance and also for all your hard work on this stuff. You’re the best.
Jeremiah
Just wondering why not just move say the “WeDict” folder from mobile to root instead of creating a link? The reason I asked is becasue some apps create cache etc, with the links, it actually created 2 cache files, one in root and another duplicate in mobile. You can tell I’m running low on space here :) Thanks!
Larry, it’s just my habit, I suppose there’ll be newer version of apps that directly access mobile account, in which case, I just need to copy newer apps over the old one, and it’ll work immediately without moving data files from root to mobile.
hi there, these are just what I’ve been looking for! Thank you.
I made a rookie mistake that I’m hoping someone might be able to help me with, please.
I came here looking for the fix for weTool and did a few other fixes at the same time. And in the heat of the moment, and frustration at having to repeat things a few times due to spelling errors in the typing, I accidentally typed something completely wrong
being : chown -a /var/mobile/Library/CallHistory /var/root/Library/.
and I’m a little worried that it might create problems, cos I don’t understand the code.
Afterward, I types the correct code as above but with the correct ln instead of chown and it told me that the file exists, and weTool still isn’t working
Please please could someone help?
Robbie, there will be no side effect executing ‘chown -a …’ because the parameter is invalid and the command will never be really executed. In your case, can u enter the following command and post the result here?
oh man, well, now i really can’t remember. maybe it was chown -R, because it did accept it and i got a fright.
I don’t know how much of it you want, so i’m just putting the list of apps that came up.
MMSApp
Preferences
Ringtones
SMS –> /var/mobile/Library/SMS
Summerboard
VoiceDial
Wallpaper
weDict
The weTool is just opening and then shutting quietly back to the springboard. After running your general command it helped with Customize and Cookies in Safari. but after i screwed up that command, and then typed the correct command (ln -s /var/mobile/Library/CallHistory /var/root/Library/.) it said presicely
ln:/var/root/Library/./CallHistory: File exists
hope that helps. Thankyou for your help… you’re a legend.
R
From your ‘ls -al’ output, I think there’re at least 2 symbolic links you need to create:
BTW, there is no CallHistory in your list, so I assume you had a typo or something.
MobileScrobbler 1.4.1-1 wont install from installer. Crashes with a “Main Script Execution Failure”. I installed manually using the guide in last.fm’s website and now the app open and hangs at a white screen. BTW while installing manually it would not let me install the PrefBundle, saying it denies me permission.
Any idea why?
iradio still having problems with 1.1.3 otb jailbroken with ziphone2.2. Any fix on this. Please I need my iradio back!!!
No problem on my phone activated by ziphone.
I edited the sshd_config to have useLogin yes, but when I try to login as ‘mobile’, winscp gives me ‘Error skipping startup message. your shell is probably incompatible with the application (BASH is recommended)’ I can login as root fine tho. Any idea? Thanks!!
Get that sh.zip at section Term-vt100 and replace your current /bin/sh.
I did already :( What else could be wrong? Thanks!
It should run, otherwise you’ll need to enable log to file and check the log by yourself.
BTW, did you restart openssh service (or reboot) after the sshd_config modification? You need to do so once.
Tried rebooting and everything.. Will try to enable the log and check, thanks!!
If you guys got iradio to work is there anything else you did other than the fix above??
From what I can see on my phone, I have the following fixes:
/usr/local/arm-apple-darwin/lib/libgcc_s.1.dylib -> /usr/lib/libgcc_s.1.dylib
/var/root/Library permission 777
/var/root/Library/Preferences permision 777
/Applications/iRadio.app/iRadio permission 4755
/usr/local/lib/libstdc++.6.dylib -> /usr/lib/libstdc++.6.dylib
BTW, iRadio owner is root, otherwise 4755 permission is meanless.
ok, i had the same issue as David up above (when replacing the hashed alpine pw with my own, i didn’t realize the “/” was part of the pw :P
so
now i’m totally locked out of my own phone, as root and mobile.
have looked around a little for some perl script that could ‘decode’ my new hash, but all this crypto is just beyond me.
will i have to re ziphone?
or totally full itunes restore? grrrr
fe, when that happened to me, I was able to replace the master.passwd file via USB using iFuntastic. It said it wasn’t 1.1.3 compatible, but it worked fine for me. iBrickr also worked.
hi David, ahh, i forgot all about that iFuntastic app, it’s been a while,
so, my only copy of that file (if i have it) will be from 1.1.1 (last time i backed everything up)
any idea if that file is similar/compatible/exists?
is a virgin copy of that master.passwd identical from device to device? i might be able to grab one from my wife’s phone.
There’s a 1.1.2 compatible version, 490r001 that I found by Googling, maybe there’s something newer, but I didn’t locate it. The file is the same on all 1.1.3 phones to my knowledge.
one last question David, pulling up iFuntastic gives me a whole slew of warnings about my version of ‘MobileDevice’ being too new (2.1.0) and seems to require me to downgrade iTunes to 7.4.2 to get back down to MobileDevice 1.0.1
Wondering what version of iTunes you ran while getting iFun to hook inot the 113 firmware phone?
fe-
I’m running the latest version of iTunes. In order to get iFuntastic to work, you need to just temporarily replace the MobileDevice.framework located in System/Library/PrivateFrameworks/ with the version from iTunes 7.4.2. I found a copy by searching on MobileDevice_7_4_2.framework or with my copy of iFuntastic, I don’t recall. Anyway, I made sure iTunes wasn’t running, saved a backup copy of the installed version, copied the old framework file in, and then ran iFuntastic. When it runs the first time, iFuntastic stores its own copy of that, so you can restore the original and all will be well. Don’t forget to do that, or I suspect iTunes will be very unhappy. Hope that was clear enough.
Shagster,
I’ve finally figured out why the iRadio works for me didn’t work for you, it requires libgcc_s.1.dylib. I didn’t notice it because I have it done days ago right after I jailbreak 1.1.3. So basically, it requires two libraries:
Enjoy!
well, the iFuntastic route seemed a little too particular for my tastes, so i opted for a fresh itunes restore (to 113), which did end up restoring the phone’s root and mobile pw to alpine, and just ran ZiPhone once again, no sweat, and this time was careful to paste over that first / in master.passwd
simple, clean, easy.
thanks david for your time.
I just updated to iFlix 0.9.9b and now when I open it, it doesn’t have my account info. I try to enter it and when I click save, iFlix crashes. I’ve tried all the fixes listed here so far, but nothings worked. Any other ideas on how to get it working? I’m on firmware 1.3.3.
Hi, I followed all the the instructions and all worked fine. but after that I ran the syncfix.sh script and synced with itues before rebooting my phone. Since I ran the syncfix script my phone is rellay messed up - the message EDIT HOME SCREEN keeps popping up!! I cant shut the phone down or do anything anymore. Any advice is greatly appreciated I dont know what to do to stop this annoying message., thanks
update to my last, found out from the developer that iFlix 0.9.9b has a flaw that prevents it from saving. He’s working on a fix for it. Until then I just thought of a work around that should’ve been obvious after reading this blog…. open the terminal app on the iPhone and run /Applications/iFlix.app/iFlix and iFlix will run without issues.
@jspade - did you reset the ssh password using the passwd command? I made that mistake and it causes summerboard to crash and keep coming up with the ‘edit home screen’. I had to do a restore to get it back in working order. Luckily thanks to ziphone, jailbreaking is now soooooo easy, so it was no big deal.
Thanks Jim for your reply - unfortunately I was so desperate that I didnt wait for your feedback. I put the phone in restore mode and updated with itunes. now the phone is back to zero and I dont know if it was a mistake to use itunes to restore. I dont get a carrier anymore. do you have a link to a good instruction. independence was able to unlock and jailbreak. it also added the code for the sim unlock but still no edge and no carrier! I am so frustrated by now I wonna by a new iphone.. any help highly appreciated
@Jim, I can’t repeat your workaround.
Hey,
With the MobileFinder commands, chown is actually in /usr/bin/chown. Just a heads up.
Didn’t check the latest Finder, maybe it has its own chown. But chown is traditionally part of BSD Subsystem, it’s not a 3rd party application, besides, usually, /bin is search before /usr/bin, so it doesn’t matter if there’s also a copy in /usr/bin, /bin/chown will be used anyway.
Your fixes are great. My iRadio now works, but the fix for weTool isn’t working for me. I love weTool and really want to get it working on my July 1 iPhone jailbroken 1.1.3 with iNdependence. Anyone have more thoughts about how to go about it?
I’m still staying away from Customize.
James
I read up on this page and got mine working on 113. It took a while but mine is working great. And my iradio is pumping.
Any word on wallpaper.app on 113 for saving to the wallpaper and camara rool directory???
Thanks
@James, check if you have all those 3 folders in /var/mobile/Library and 3 symlinks in /var/root/Library.
@shagster40, sorry no idea, I didn’t use it, sounds like a permission issue though.
I’m back with another question. If you have the time and inclination to answer, I’d be much obliged.
When I attempt to change the time zone, the setting doesn’t save (nor does the displayed time). So, after I change the time zone from Chicago to Honolulu and I navigate away from the general settings, I go back to the time and date settings page and it still says Chicago. Any ideas as to which file contains the settings for this? I suspect I can just realign the permissions and this will work, but I’m not sure which file to fix.
There is a better way to fix the MobileFinder WITHOUT setting SUID to all the /bin files.
Type following commands into commandline:
cd /Applications
chown -R root:wheel Finder.app
chmod +s Finder.app/Finder
now everything should work properly!
hanson
I issued this:
chmod 4755 /usr/bin/login
mkdir -p /usr/local/arm-apple-darwin/lib
ln -s /usr/lib/libgcc_s.1.dylib /usr/local/arm-apple-darwin/lib/.
But now the Springboard crash and crash again! I can’t use my iPod! Do you have any ideas? Please HELP!
A friend of mine gave me passwd and master.passwd from his iPod, loaded into my with scp and now works! Fine… one night without closin’ eye! The problem was the user mobile wasn’t able to login and execute springboard…
Download the file from following link and move the downloaded file to applications folder.
http://software.filefactory.com/Mac/iRadio_1-0b4/Download.html
Re-start the Iphone after moving the file and run the following scripts.
/usr/local/arm-apple-darwin/lib/libgcc_s.1.dylib -> /usr/lib/libgcc_s.1.dylib
/var/root/Library permission 777
/var/root/Library/Preferences permision 777
/Applications/iRadio.app/iRadio permission 4755
/usr/local/lib/libstdc++.6.dylib -> /usr/lib/libstdc++.6.dylib
IRadio easy installation on Iphone.
Fix for “package download failed”
Hi George, do you know if it’s possible to change folders and file autorization to modify it under mobile account (to add dylib in /System/Library/LaunchDaemons/com.apple.SpringBoard.plist) via a system command (popen) or bash file (.sh) ?
Thanks, Rikk.
Nice website!!
During the process somehow the file libgcc_s.1.dylib vanished. Does anyone know how I can put it back? My iPhone doesn’t boot up anymore but I still can manage to ftp to it and see that there’s no libgcc_s.1.dylib. Please help
Hello
nice site
Hello! Excellent site! Searched a long ago
Hey George,
I have a problem with my mobile finder. Whenever I move a file from /var/root/downloads to put it in /var/mobile/downloads, i go there but it just puts it back into /var/root/downloads. Got any advice on how to stop that?