The official documentation is at: http://docs.alfresco.com
Out of Memory Errors
These can really stuff up the bootstrapping process. If you have not allocated enough memory to the JVM then the bootstrapping process will abort unpredictably.
You can diagnose this by grepping catalina.out for
java.lang.OutOfMemoryError: Java heap space
To fix this make sure the JVM is passed a command line argument of something like -Xmx1024m
Damaged Installation after Out of Memory Errors
Once you have fixed the OOM errors Alfresco may refuse to install or start if there is data left lying around after an aborted install.
For example the following errors may be found in catalina.out:
00:13:42,211 ERROR [repo.admin.ConfigurationChecker] CONTENT INTEGRITY ERROR: System content not found in content store.
00:13:42,211 ERROR [repo.admin.ConfigurationChecker] Ensure that the 'dir.root' property is pointing to the correct data location.
00:13:42,224 ERROR [web.context.ContextLoader] Context initialization failed
org.alfresco.error.AlfrescoRuntimeException: Ensure that the 'dir.root' property is pointing to the correct data location.
To clean up Alfresco try the following.
1. stop tomcat
2. delete everything in dir.root. This is where Alfresco stores content, indexes, etc. Its defined in custom-repository.properties
3. drop the database. Log into mysql as root or the alfresco user (defined by 'db.username' in custom-repository.properties)
mysql> drop database alfresco;
mysql> create database alfresco default character set utf8 collate utf8_bin;
4. set the following value in custom-repository.properties to make Alfresco recreate the indexes
5. start tomcat and monitor the logs.
If you are logged in as root and have followed the instructions for configuring Alfresco then you will have edited files and they will be owned by root. Alfresco may not be able to access them. This will give unpredictable errors in catalina.out that Alfresco cannot read files, or create them or whatever.
To fix this try chown-ing everything (once again)
chown -R alfresco:alfresco /opt/alfresco/tomcat
chown -R alfresco:alfresco /var/lib/alfresco
Note that the username and file locations may be different depending on which set of instructions you followed.