On a Site's Status Report, Drupal Complains About a Missing Profile

Drupal Version

Issue

You are seeing a red error message in Drupal stating that a Drupal profile is missing from the file system.  Common examples are "gt_profile" and "gt_install", but the issue could happen with any profile.

Much like with the more common missing theme or module file issue, it is possible that a previous Drupal site administrator deleted the directory for the Drupal profile used to install your Drupal site from the filesystem.  S/he may have thought that the profile was not needed after site installation, but Drupal does actually expect it to be there, and will throw error messages on some of the administration pages if those files are missing.  More often than not, the issue is just that someone simply forget to copy a custom profile directory over when applying a Drupal core update.

Compounding the issue is that Drupal behaves a bit poorly when it can't find the assigned custom profile directory, and partially disables the profile in the database.  This prevents you from correcting the problem by just replacing the missing files (which is the simple solution for missing modules and themes).

Solution

If you have a copy of the missing profile, copy the files back into the right place in the filesystem, then try running the following against your Drupal database (be sure to make a database backup first) from your preferred MySQL administration tool (e.g. phpMyAdmin), replacing 'XXXX' with the path under the 'profiles' directory to your custom profile:

UPDATE `system` SET status=1 WHERE filename like 'profiles/XXXX';

If you do not have a copy of the missing profile, you can reset the site to the default profile:

UPDATE `system` SET status=1 WHERE filename like 'profiles/standard/standard.profile';
REPLACE `variable` SET `value`='s:8:"standard";' WHERE `name`='install_profile';

If you still see error messages about your old custom profile, try running the following SQL command, replacing 'XXXX' with the path under the 'profiles' directory to your custom profile:

DELETE FROM `system` WHERE filename like 'profiles/XXXX';