Nothing is more frustrating than finishing a Perfect World private server installation only to find that pwAdmin won’t start. In nearly every case we have seen, the root cause comes down to file permissions that are set incorrectly on the pwAdmin folder, its configuration files, or the underlying Tomcat deployment. The good news is that fixing these issues follows a predictable pattern once you understand what pwAdmin needs.
This guide walks through a complete file permission troubleshooting workflow so you can get pwAdmin loading in your browser again. We cover Java environment checks, the exact chmod values that work, Tomcat and Jakarta deployment verification, port 8080 diagnostics, and the common error messages you will encounter along the way.
By the end, you will have a repeatable diagnostic process that works whether you are running your server on Linux, inside a virtual machine, or on a Windows host. If you have ever typed the dreaded search query “how to fix pwAdmin won’t start,” this is the structured walkthrough that forum threads have been missing for years.
Table of Contents
What Is pwAdmin and Why Permissions Matter
pwAdmin is a web-based administration panel for Perfect World private servers, deployed on top of Tomcat or Jakarta-Tomcat. It lets you manage accounts, server processes, and configuration through a browser interface instead of editing raw database entries by hand.
For pwAdmin to function, the Tomcat process must be able to read configuration files and execute shell scripts stored inside the pwAdmin folder. When file permissions block either of those actions, the admin interface refuses to load. That is why pwAdmin file permission problems are the single most common cause of startup failures reported across RaGEZONE and other server administration forums.
The two permission values you will see referenced over and over are 0755 for directories and executable scripts, and 0644 for readable configuration files. Understanding the difference between these two values is the foundation of every fix in this guide.
Prerequisites: Java Environment Setup
Before touching any permissions, confirm that Java is installed and that the required environment variables point to it correctly. pwAdmin runs inside Tomcat, and Tomcat cannot start without a valid Java Runtime Environment.
Install either the full JDK or at minimum the JRE on your server. On most Linux distributions you can verify the installation by running java -version from a terminal. If that command returns a version string, Java itself is present. If you get a command-not-found error, install the JDK first and then continue with this guide.
Next, set the JAVA_HOME environment variable to point to your Java installation directory. Tomcat reads JAVA_HOME at startup to locate the Java binaries it depends on. On Linux, add a line like export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 to your shell profile or to the Tomcat startup script. Some setups also require JRE_HOME if Tomcat cannot infer it from JAVA_HOME.
Skipping the Java environment setup is the most common reason admins assume permissions are broken when the real problem is a missing environment variable. Always verify Java first before adjusting any file permissions.
How to Fix pwAdmin Won’t Start: Step-by-Step Permission Troubleshooting
The following four-step workflow resolves the majority of pwAdmin startup issues. Work through each step in order, because later steps depend on earlier ones being correct.
Step 1: Check and Set Folder Permissions
Start by opening a terminal on the server that hosts pwAdmin and navigating to the directory where the pwAdmin folder lives. The pwAdmin folder must have its permission set to 0755, which gives the owner full read, write, and execute access while allowing everyone else to read and traverse the directory.
Run the following command from the parent directory of the pwAdmin folder, replacing the path if necessary:
chmod -R 0755 /path/to/pwAdmin
The capital A in pwAdmin matters on case-sensitive file systems. If your folder is named pwadmin in lowercase, rename it to pwAdmin before proceeding. Forum user worwick reported back in 2010 that getting the capitalization wrong was enough to break the entire installation, and that advice still holds on modern Linux distributions.
After setting the folder permission, confirm it took effect by running ls -la in the parent directory. You should see drwxr-xr-x next to the pwAdmin folder name, which is the symbolic representation of 0755.
Step 2: Configure File-Specific Permissions
Folder permissions alone are not enough. Two specific files inside the pwAdmin folder need different permission values than the folder itself, and getting these wrong is what causes most “pwAdmin won’t start” reports.
Inside the pwAdmin folder, set pwadminconf.jsp and pwconf.conf to permission 0644. This value gives the owner read and write access while allowing everyone else read-only access, which is exactly what Tomcat needs to load the configuration without allowing untrusted writes.
Run these two commands from inside the pwAdmin folder:
chmod 0644 pwadminconf.jspchmod 0644 pwconf.conf
If your pwAdmin distribution includes shell scripts such as startup.sh, those scripts need the executable flag set. Apply 0755 to any .sh files using chmod 0755 startup.sh so Tomcat can actually run them. Forgetting the executable flag on startup scripts is a silent failure that produces no obvious error message in the browser.
Step 3: Verify Tomcat and Jakarta Deployment
pwAdmin does not run as a standalone application. It is deployed as a web application inside a Tomcat or Jakarta-Tomcat servlet container. If Tomcat itself is not running, pwAdmin cannot start regardless of how perfect your file permissions are.
Check whether Tomcat is running by executing ps aux | grep tomcat on Linux. If you see a Java process with Tomcat in the command line, the servlet container is active. If no process appears, start Tomcat using its startup script, typically located at /path/to/tomcat/bin/startup.sh.
Once Tomcat is running, look inside the Tomcat webapps directory to confirm the pwAdmin application is deployed there. The pwAdmin folder or a pwAdmin WAR file should exist inside webapps. If it is missing, redeploy pwAdmin by copying its folder into webapps and restarting Tomcat.
Check the Tomcat logs at /path/to/tomcat/logs/catalina.out for any deployment errors. Permission denied errors in catalina.out almost always point back to the file permission values covered in Steps 1 and 2.
Step 4: Troubleshoot Startup Errors and Logs
If pwAdmin still will not start after completing the first three steps, the answer is almost certainly in the logs. Open catalina.out and look for permission-related error messages, which usually contain phrases like “permission denied,” “cannot execute,” or “access denied.”
One common pitfall is running Tomcat as the root user at some point and then switching to a non-root user. Files created or edited by root will not be readable by the Tomcat service account, and you will see permission denied errors even though the chmod values look correct. Fix this by correcting ownership with chown -R tomcatuser:tomcatgroup /path/to/pwAdmin.
Another frequent issue is editing configuration files outside of the proper admin tools. As reported by users on the CubeCoders forum in 2024, manually editing config files as root can strip the correct ownership and break subsequent startups. Always edit pwAdmin configuration files using the same user account that runs the Tomcat process.
After making any ownership or permission changes, restart Tomcat completely. A partial restart will not pick up the new permission values, and many admins incorrectly assume their fix failed when they simply did not restart the servlet container cleanly.
Common Permission Error Messages and Solutions
Most pwAdmin permission failures fall into a small number of recognizable error messages. Here is how to interpret and fix each one.
If you see “permission denied” when accessing pwAdmin in your browser, the folder or its config files do not have the correct chmod values. Reapply 0755 to the folder and 0644 to pwadminconf.jsp and pwconf.conf as described in Steps 1 and 2.
If pwAdmin loads endlessly without ever displaying the login page, the issue is usually a Tomcat process that is hung or a script missing its executable flag. Check that all .sh files inside the pwAdmin folder have 0755 permissions and that Tomcat was restarted after the last configuration change.
If you see a blank white page, Tomcat started but could not read the pwAdmin configuration files. Confirm that pwconf.conf has 0644 permissions and that the Tomcat user has read access to it. A quick ls -la pwconf.conf from inside the pwAdmin folder will show you the current permission string.
If Tomcat logs show “cannot execute” or “command not found” errors related to Java, revisit the JAVA_HOME environment variable. Tomcat is trying to run Java but cannot locate the binary, which is an environment configuration problem rather than a file permission problem.
How to Check Port 8080 Accessibility
pwAdmin is served by Tomcat on port 8080 by default. Even with perfect file permissions, the admin panel will not load if something is blocking that port. Forum user partendo discovered back in 2011 that pwAdmin can appear broken when the real problem is network configuration rather than permissions.
Run netstat -na | grep :8080 on the server to confirm Tomcat is actively listening on the expected port. You should see a LISTEN entry for port 8080. If nothing appears, Tomcat either did not start or failed to bind to the port, often because another process is already using it.
From a remote machine, test connectivity with telnet your.server.ip 8080 or curl http://your.server.ip:8080. If the connection times out, check your firewall rules and confirm that the server IP address has not changed due to a DHCP renewal. Static IP configuration prevents the IP-mismatch issues that cause pwAdmin to mysteriously stop working after a reboot.
Also inspect your resolv.conf if DNS resolution is involved. Some virtualized environments reset resolv.conf on restart, which can break name resolution and make pwAdmin unreachable even though Tomcat is running fine.
Linux vs Windows Permission Differences for pwAdmin
Most pwAdmin documentation assumes a Linux host, but plenty of server administrators run their Perfect World servers on Windows. The permission model is different, but the underlying concepts map cleanly between the two operating systems.
On Linux, the chmod command controls read, write, and execute access using numeric values like 0755 and 0644. On Windows, the equivalent control is the file and folder security properties dialog, where you grant Read, Read and Execute, Write, and Modify permissions to specific user accounts.
If you are running pwAdmin on Windows, make sure the user account that runs the Tomcat service has Read and Execute permissions on the pwAdmin folder and all of its contents. Grant Modify permission on pwconf.conf and pwadminconf.jsp so the application can update configuration when needed. Right-click each file or folder, select Properties, then the Security tab, to adjust these settings.
The root-user problem on Linux translates to the Administrator-account problem on Windows. Avoid editing pwAdmin configuration files while logged in as Administrator if the Tomcat service runs under a different account. Files created by one Windows user may not be writable by another, which produces the same class of permission errors that Linux admins face after running scripts as root.
Why pwAdmin Stops Working After a Restart
One of the most confusing failure modes is pwAdmin working perfectly one day and then refusing to load after a server reboot. This happens often enough that forum threads about it stretch back over a decade, and the causes are surprisingly consistent.
The most common culprit is a DHCP-assigned IP address that changes on reboot. When the server IP changes, the Tomcat configuration that pointed at the old IP no longer resolves correctly, and pwAdmin becomes unreachable even though the service is technically running. Assign a static IP to prevent this.
File permissions can also revert after a restart if a startup script runs as root and recreates files with root ownership. The non-root Tomcat user then loses access to those files on the next boot cycle. Audit your startup scripts to ensure they run under the same user account that owns the Tomcat process.
Environment variables are another victim of reboots. If JAVA_HOME was set manually in a terminal session rather than in a persistent profile or startup script, it will be gone after a restart. Add environment variable exports to your shell profile or Tomcat service configuration so they survive reboots.
FAQs
How do I fix you do not have permission to open this file in pwAdmin?
Set the pwAdmin folder to permission 0755 using chmod -R 0755 /path/to/pwAdmin, then set pwadminconf.jsp and pwconf.conf to 0644. Restart Tomcat after making these changes.
What permissions does pwAdmin need to run?
pwAdmin needs its main folder set to 0755 for read, write, and execute access by the owner. Configuration files pwadminconf.jsp and pwconf.conf need 0644. Shell scripts like startup.sh need 0755 so Tomcat can execute them.
How do I set JAVA_HOME for pwAdmin?
Add a line like export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 to your shell profile or to the Tomcat startup script. Verify it is set by running echo $JAVA_HOME from a terminal. Tomcat requires JAVA_HOME to locate the Java binaries at startup.
Why is port 8080 not accessible for pwAdmin?
Port 8080 may be blocked by a firewall, already in use by another process, or Tomcat may not be running. Check with netstat -na | grep :8080 to confirm Tomcat is listening, then test remote connectivity with telnet or curl.
How to fix permission denied error on pwAdmin config files?
Run chmod 0644 on pwadminconf.jsp and pwconf.conf inside the pwAdmin folder. If the files were created by root, also fix ownership with chown to the user account that runs the Tomcat process, then restart Tomcat.
Conclusion
Fixing pwAdmin when it will not start comes down to a simple diagnostic order: verify Java and JAVA_HOME, set folder permissions to 0755, set config files to 0644, confirm Tomcat is running and deployed, and check port 8080 accessibility. Work through these steps in sequence and the vast majority of startup failures resolve quickly.
The most common mistakes we see are forgetting the executable flag on startup scripts, running processes as root and breaking ownership, and letting DHCP change the server IP after a reboot. Avoid those three pitfalls and your pwAdmin installation will stay reliable over the long term.
Now that you know how to fix pwAdmin won’t start with file permission troubleshooting, apply these steps to your server today. Save the chmod commands for future reference so you can repeat the fix in minutes if permissions ever drift again.