New in-progress site. All was well a few days ago; today, for several hours now, the ID 1 user appears to have lost many key permissions.
Symptoms:
* Many key admin pages (Themes, Modules, Content, etc.) don't show up on /admin, and can't be reached directly (attempt to reach admin/build/modules/, for example, just goes to admin/build/).
* User can't edit content (pages show no "edit" link, and node/9/edit just leads to node/9), even though user earlier created that content!
* User can't even edit own account info (again, no "edit" link, and user/1/edit just leads to user/1).
In short, the user appears to have the very limited permissions of a lower-level user. Yet I'm clearly logged in as user/1 – and in fact, I don't believe any other user accounts have been created yet (can't check on that; /users "could not be found").
Logging out and in again fixes nothing. Can't reach admin/content/node-settings/rebuild (rebuild permissions). There are no Drupal or module upgrades waiting for update.php (which I tried anyway, with no effect). I cleared all cache tables, to no effect. Other sites running on same database server and web server (same Drupal installation) are unaffected.
I can reach admin/reports/dblog. A little earlier today, this showed a huge number of "Duplicate entry..." entries, though I wasn't creating anything new that might cause such an error. (Site won't let me access further details of the error entries.) After hundreds of such entries, those messages have stopped.
Other than that, /admin/reports/status shows nothing unusual. Cron is running OK too.
Is there any common problem that could be causing this? Any diagnostic sleuths out there have an idea as to what I should check out?
Thank you very much!
PS: I imagine similar troubles are addressed many times in the forums; I'm not having luck finding anything. Keywords "user 1", "permissions", etc. turn up too much unrelated stuff...
Comments
Which version of Drupal are
Which version of Drupal are you using, and what is the exact error message you have seen (one example will do if they are all very similar, though you may find one or 2 very different messages)?
I suspect the {menu_router} is missing many admin entries and needs rebuilding. If you can reach the site config -> performance then hit the Clear cached data button. If you can't reach that they we'll have to set the menu_rebuild_needed flag manually to force a rebuild.
gpk
----
www.alexoria.co.uk
No error messages
Thanks for the reply, gpk!
First: My bad for forgetting to give Drupal version. It's 6.15. That's where the site started, and it worked fine in development until today. I made no changes to the Drupal setup between the last successful session and today's screwiness. Other sites running on the same installation (multisites) have no problems. So I imagine the problem is somewhere within this site's DB.
Re errors: The thing is, there are no error messages, other than the earlier "Duplicate error..." messages in admin/reports/dblog. (Can't view the details of those messages... but they've completely stopped anyway.)
No error messages, just what appears to be a lack of permissions, in that the site won't allow editing of nodes or user account info (won't even provide "edit" links), won't allow access to many admin features (again, won't even provide links on the /admin page). Attempts to go to those pages directly, via URL, just return the node in question, or a higher-level admin page (like /admin, or /admin/build/), etc.
I don't know that the core problem is actually a "permissions" one; that's just how the symptoms come across, as if my ID 1 were some low-level role with few permissions. (Exactly what role, I can't say; I can't get at the admin pages for roles and permissions.)
Anyway, I unfortunately can't get at the Performance page either. How does the manual menu_rebuild_needed flag-setting operation work?
Thanks again!
You need to directly edit
You need to directly edit your database with phpMyAdmin or somesuch.
[Optional: if you want you could first examine the table {menu_router} ... this should contain entries for all the paths that Drupal recognizes, including all the admin paths etc. ... you will probably find that many of these are missing]
In the table {variable} add a new row with name = menu_rebuild_needed and value = i:1;
(that's a digit one between the colon and semicolon).
Then delete the row in the table {cache} for "variables" and then view any page on your site.
gpk
----
www.alexoria.co.uk
We scared the problem into fixing itself?
Well, isn't this how it always goes:
I decided to take your kindly-offered fix, jump into phpMyAdmin, and give it a try...
...when suddenly the site starts working normally again. I didn't do a thing. Maybe it was some issue over on the ISP side of things??? Whatever the cause, I can now edit pages and account info, access admin pages, etc.
Nice to see that the Drupal gremlins are enjoying their fun! But I'm ready for them: If that same issue crops up even once more, I'm going to give your fix a try. It's on standby, like a baseball bat under the bed.
Thanks again for the generous help!
Probably something else
Probably something else triggered that menu rebuild. Saved you having to do it by hand!
Glad to hear it's working anyway.
gpk
----
www.alexoria.co.uk
It worked!
Looks like you did help me after all. After several days of normal operation, the site suddenly started acting funny again, disallowing access to (and not providing links to) many admin pages. And as before, this happened without warning, without my having touched anything on the site.
So I tried your fix, and it immediately set things right. Thanks once more!!!
Thanks
Thank You!
I ran into this problem also and you fix saved me.
THANKS!