I have a similar problem as the one [described in this question](https://android.stackexchange.com/q/11001/14562 "Android lock screen password not being recognized"), but that question doesn't solve my problem. Summarized here:

I recently installed CyanogenMod 10 on my Galaxy Nexus. I enabled encryption. The first time I rebooted the phone, I was able to get past the lock screen with no trouble. I tried to change the screen lock PIN, but the settings app wouldn't accept my PIN.

Later, the screen locked due to the timeout being reached, and I wasn't able to unlock it. My password kept being rejected, and the "Forgot password" button that I read should come up never appeared. I rebooted my phone, and though I can easily decrypt it, I can't unlock it.

[This answer](https://android.stackexchange.com/a/11003/14562 "Answer to: Android lock screen password not being recognized") suggested going through `adb` to fiddle with an SQLite database. However, I can't seem to access `/data` on my phone. I get the following error when I try to do an `ls`:

```
opendir failed, Permission denied

```

I tried to use `su`, but again, I got a `Permission denied` error. The phone is most definitely rooted, as I regularly use several root-only apps.

I really don't want to have to wipe the phone. Is there any other way to unlock this phone?

Edit
====

After posting this question, I came across [this answer](https://android.stackexchange.com/a/35848/14562 "Answer to: Cannot unlock tablet as have no internet connection?"). I was able to get my phone unlocked by exploiting the phone hole mentioned (involving calling the phone and mashing the keys repeatedly--though instead of hitting the non-existent home key I swiped up Google Now). I deleted the password using the SQL mentioned in the answer I cited earlier. However, upon rebooting the phone, I'm back in an non-unlockable state.

In other words, I can exploit a hole to unlock my phone, but I can't reset the PIN, and I have to make sure to turn my screen on before 30 minutes elapses and avoid rebooting, or I'm toast.