Apache – /usr/local/apache
- bin- apache binaries are stored here: httpd, apachectl, apxs
- conf – configuration files – httpd.conf: php.conf
- cgi-bin
- domlogs – domain access and stat log files for all domains is stored here
- htdocs – default apache DocumentRoot location
- include – header files
- libexec – shared object (.so) files are stored here: libphp4.so,mod_rewrite.so
- logs – apache logs: access_log, error_log, suexec_log
- man – apache manual pages
- icons – icon/jpg/gif images
- modules – shared object (.so) files are store here: Apache-2.x+
- Init Script :/etc/rc.d/init.d/httpd or /usr/local/apache/bin/apachectl: apache start script
- cPanel script to restart apache – /scripts/restartsrv_httpd
- /opt – Apache modules built here
Exim
- Conf : /etc/exim.conf – exim main configuration file: Do not manually edit
- /etc/localdomains – list of domains allowed to relay/receive mail
- Log : /var/log/exim_mainlog – incoming/outgoing mail logs
- Log : /var/log/exim_rejectlog – exim rejected mails are reported here
- Log : /var/log/exim_paniclog – exim errors are logged here
- Mail queue: /var/spool/exim/input
- Cpanel script to restart exim – /scripts/restartsrv_exim
- Email forwarders and catchall address file – /etc/valiases/domainname.com
- Email filters file – /etc/vfilters/domainname.com
- POP user authentication file – /home/username/etc/domainname/passwd
- Catchall inbox – /home/username/mail/new
- POP user inbox – /home/username/mail/domainname/popusername/new
- POP user spambox – /home/username/mail/domainname/popusername/spam• Program : /usr/sbin/exim (suid – -rwsr-xr-x 1 root root )
- Init Script: /etc/rc.d/init.d/exim : /scripts/restartsrv_exim : service exim restart
- Check queue: exim -bpc
ProFTPD
- Program :/usr/sbin/proftpd
- Init Script :/etc/rc.d/init.d/proftpd : /scripts/restartsrv_ftpserver
- Conf: /etc/proftpd.conf
- Log: /var/log/messages, /var/log/xferlog
- Accounts file – /etc/proftpd/$username (all ftp accounts are stored here)
Pure-FTPD
- Program : /usr/sbin/pure-ftpd
- Init Script :/etc/rc.d/init.d/pure-ftpd : /scripts/restartsrv_ftpserver
- Conf: /etc/pure-ftpd.conf
- Accounts file: /etc/proftpd/$username (all ftp accounts are stored here)
- Anonymous ftp document root – /etc/pure-ftpd/ip-address
Frontpage Extensions
- Program – (Install): /usr/local/frontpage/version5.0/bin/owsadm.exe
- Uninstall and then install for re-installations
- FP files are found as _vti-bin, _vti-pvt, _vti-cnf, vti-log inside the public_html
- /scripts/setupfp5 domain.com
Mysql
- Program : /usr/sbin/mysqld :/usr/bin/mysqld_safe
- Init Script : /etc/rc.d/init.d/mysql : service mysql start/stop : /scripts/restartsrv_mysql
- Conf : /etc/my.cnf, /root/.my.cnf
- Data directory – /var/lib/mysql (location for all database storage)
- Database naming convention- username_dbname (eg: john_sales)(DBMapping)
- Log: Startup errors – /var/lib/mysql/hostname.tld.err
- Socket file – /var/lib/mysql/mysql.sock, /tmp/mysql.sock
PostgreSQL
- Program:
- Init Script:
- Conf: /var/lib/pgsql/data/postgresql.conf & pg_hba.conf
- Data Directory: /var/lib/pgsql/data
- Log: /var/lib/pgsql/
SSHD
- Program :/usr/local/sbin/sshd
- Init Script :/etc/rc.d/init.d/sshd – /scripts/restartsrv_sshd – service sshd restart
- Conf: /etc/ssh/sshd_config
- Log: /var/log/messages
Perl
- Program :/usr/bin/perl or /usr/local/bin/perl (one should symlink to the other)
- Directory :/usr/lib/perl5/5.8.x/ or /usr/local/lib/perl5
- Version: perl -v
- Check: /scripts/checkperlmodules : /scripts/perlmods -s
- Installer: /scripts/perlinstaller : perl -MCPAN -e shell
- Build: /home/.cpan :/home/.cpcpan
System PHP
- Program :/usr/local/bin/php, /usr/bin/php, /usr/local/php4/bin/php
- ini file: /usr/local/lib/php.ini – apache must be restarted after any change to this file
- PHP can be recompiled using /scripts/easyapache : /scripts/phpup using /var/cpanel/easy/apache/profile/
- Also in WHM you can go to Main » Software » EasyApache (Apache Update) to recompile.
Internal PHP
- Program : /usr/local/cpanel/3rdparty/bin/php : /var/cpanel/3rdparty/bin/php
- ini file: /usr/local/cpanel/3rdparty/etc/php.ini
- internal PHP can be recompiled using- /scripts/makecpphp using /var/cpanel/easy/apache/profile/makecpphp.profile.yaml
- /var/cpanel/3rdparty
Named(BIND)
- Program: /usr/sbin/named
- Init Script: /etc/rc.d/init.d/named
- Config: /etc/named.conf
- Zone files:/var/named/
- Log: /var/log/messages: /var/named/data/named.run
NSD (Alternate DNS option)(limited to 500 domains and 50 IPʼs)
- Program: /usr/sbin/nsd
- Init Script : /etc/rc.d/init.d/nsd • db records : /var/named
- Config: /etc/nsd/nsd.conf
- Log: /var/log/messages
Courier
- Program: /usr/lib/courier-imap/libexec/couriertcpd
- Init Script: /etc/init.d/courier : /scripts/restartsrv_courier
- Config: /usr/local/libexec/courier-imap
- Log: /var/log/maillog
Dovecot
- Program: /usr/sbin/dovecot
- Init Script: /etc/init.
- Config: /etc/dovecot.conf
- Log: /var/log/maillog
DBMapping
- Unordered List Item• Directory: /var/cpanel/databases
- Scripts:
- /usr/local/cpanel/bin/dbindex
- /usr/local/cpanel/bin/dbmaptool
- /usr/local/cpanel/bin/dbstoregrants
- /usr/local/cpanel/bin/setupdbmap
Tomcat
- Directory: /usr/local/jakarta/tomcat
- Conf: /usr/local/jakarta/tomcat/conf/server.xml
- Log:
- /usr/local/jakarta/tomcat/logs/catalina.out
- /usr/local/jakarta/tomcat/logs/catalina.err
- /usr/local/apache/logs/mod_jk.log
- Scripts:
- /scripts/addservlets –domain=
- /scripts/remservlets
Ruby
- Directory:
- /home/username/rails_apps
- /home/username/.gem/ruby
- Scripts: /scripts/installruby
Spamd
- Directory: /etc/mail/spamassassin
- Program: /usr/bin/spamd & /usr/bin/spamc & /usr/bin/spamassassin
- Scripts: /scripts/installspam
Clamd
- Conf: /etc/clamd.conf
- Scripts:
- clamscan
- freshclam
EasyApache
- /var/cpanel/easy/apache
- /var/cpanel/userdata
- /usr/local/apache/conf/
- /var/cpanel/templates/apache2
- /usr/local/cpanel/src/templates/apache2
- /home/cpeasyapache
- /opt
- /usr/local/cpanel/logs/easy/apache
cPanel installation directory structure – /usr/local/cpanel
- 3rdparty/ – tools like fantastico, mailman files are located here
- addons/ – AdvancedGuestBook, phpBB, etc.
- base/ – phpmyadmin, squirrelmail, skins, webmail, etc.
- bin/ – cpanel binaries
- cgi-sys/ – cgi files such as cgiemail, formmail.cgi, formmail.pl, etc.
- logs/ – cpanel access_log, error_log, license_log, stats_log
- whostmgr/ – whm related files
- base/frontend – cPanel related files – themes+ perl/ – internal Perl modules for compiled binaries
- etc/init – init files for cPanel services
WHM related files – /var/cpanel – whm files
- bandwidth/ – rrd files of domains
- username.accts – reseller accounts are listed in this files
- packages – list of hosting packages
- root.accts – list of root owned domains
- suspended – list of suspended accounts
- users/ – cpanel user file: theme, bwlimit, addon, parked, sub-domains all are listed in this files
- zonetemplates/ – dns zone template files are taken from here
Common CPanel scripts – /scripts/
- addns – add a dns zone
- addfpmail2 -Adds frontpage mail extensions to all domains
- addpop – add a pop account
- addservlets – Add JSP support to a domain (requires tomcat)
- adduser – Add a user to the system
- apachelimits – calculates memory limits for apache processes then adds result to httpd.conf
- bandminup – Updates Bandmin Application
- biglogcheck – looks for logs nearing 2 gigabytes in size
- bsdcryptoinstall – Installs crypto on FreeBSD
- bsdldconfig – Configures the proper lib directories in FreeBSD
- bsdpkgpingtest – Tests the connection speed for downloading FreeBSD packages
- buildbsdexpect – Install expect on FreeBSD
- buildeximconf – Rebuilds exim.conf
- build_maxemails_config – Sets limit on amount of emails one can send from domains.
- buildpostgrebsd-dev – Installs postgresql on FreeBSD.
- chpass – change cpanel passwords (does not change all passwords)
- checkperlmodules – Contains a list of standard CPAN modules to install on cPanel
- check_users_my_cnf – Check user accounts for ~/.my.cnf files that do not work and disable them. This script only returns output when it detects a bad .my.cnf.
- chcpass – For internal use only, do not use.
- chkmydns – Performs a simple configuration check of MyDNS
- cleandns – removes domains from named.conf that do not have a Zone.
- comparecdb $file1 $file2 – Compare the content of 2 CDB files.
- convert_roundcube_mysql2sqlite — Converts the Roundcube database from MySQL to SQLite
- courierup – used to update/reinstall courier
- cpaddonsup – Update cPanel’s addon.
- cpbackup – to backup accounts (if backups enabled) (–force)
- delpop – Removes POP account
- dnscluster – used to synchronize DNS zones with clustered servers (–help)
- dovecotup – Updates dovecot mail server
- dumpcdb – Displays the contents of a CDB file
- dumpstor – displays contents of .datastore storable files
- dumpgdbm – displays contents of .gdbm locale files
- easyapache – recompile/upgrade apache and/or php
- editquota – used to manually set a users quota limit
- ensure_vhost_includes – ensures users includes are added in httpd.conf
- eximup – used to update exim to latest version (overwrites any manual changes)
- export mydnsdbb – Exports zones from MyDNS for use with BIND and NSD
- fixcommonproblems – fixes mailbox permissions, mailman, cgi scripts, ndc and quotas
- fixfrontpageperm – fixes permission issues with Front Page
- fixmailinglistperms — Repairs permissions for all mailing list files and directories
- fixmailman – fixes common mailman issues fixndc – fixes rndc errors with named
- fixquotas – fixes quota problems
- fullhordereset – resets horde database to a fresh one (previous user data is lost)
- ftpup – used to update/install FTP server (pureftpd or proftpd) to latest version
- gather-update-logs — Sends update logs to cPanel for analysis
- generatemaildirsize – generates new maildirsize for any or all users *(–help)
- hook — Executes any hooks that would be called normally in the specified context
- imapup – Updates IMAP email server
- importmydnsdb — Imports zone information from BIND and NSD into MyDNS
- initquotas – initializes quotas
- installzendopt – installs zend optimizer – thru phpextensionmgr
- installruby — Installs Ruby
- installpostgres — Installs PostgreSQL
- killacct – terminate an account (backup account before termination)
- killdns – removes a DNS Zone
- killpkg – removes a package
- mailperm – fixes permission problems with mail directories
- makecpphp – rebuilds internal PHP from /var/cpanel/easy/apache/profile/makecpphp.profile.yaml
- mydnsup — Installs and updates MyDNS packages
- mysqlup – updates mysql to latest version specified in /var/cpanel/cpanel.config
- nsdup – Updates BIND services for name servers
- park – to park a domain (only adds DNS)
- pkgacct – used to create an account backup
- pre* – creates pre service scripts that run before a service is updated
- post* – creates post service scripts that run after a service is updated
- portsup – Updates Ports(FreeBSD systems only)
- phpup – used to update PHP only
- phpextensionmgr – Installs IonCube, Zend Optimizer, SuHosin & eAccelerator
- realchpass – Similar to chpass, changes cPanel password only (not FTP or MySQL)
- realperlinstaller – Automates the installation of Perl CPAN modules
- realrawchpass – For internal use only, do not use.
- rebuildcpusers – chowns /var/cpanel/users files
- rebuildnamedconf – rebuilds /etc/named.conf with zones from /var/named/*.db
- rebuildparkeddomains
- restartsrv_$servicename – restart script for services
- restartsrv_mydns — Restarts script from MyDNS
- restorepkg – restores an account from a backup file (pkgacct file)(must be in /home)
- runlogsnow – update logs of all users
- runstatsonce – Updates statistics for a user
- runweblogs – update stats for a particular user
- securetmp – secures /tmp partition with options nosuexec and nosuid
- setupftpserver – sets the FTP server to install (pureftpd or proftpd)
- setupmailserver – sets the mail service to install (courier or dovecot)
- setupnameserver – sets the DNS service to install (Bind or NSD)
- slurp_exim_mainlog — Imports exim mainlog data into the eximstats database
- suphpup – Updates SuPHP tool
- suspendacct – suspends an account
- try-later – Executes a user-defined check command at a specified interval
- unsuspendacct – unsuspends an account
- upcp – updates cpanel to the latest version (–force)
- upcp-running – Specifies whether a upcp command is running
- updatenow – updates the cpanel scripts
- updateuserdomains – updates /etc/userdomains entries from /var/cpanel/users
- update_php_timezonedb — Updates the timezone database used by PHP
- xfer_horde_sid_resolver.pl — Resolves key collision errors before importing Horde data during an account transfer
- wwwacct – to create new accounts (wwwacct domain.com user password)
Important cPanel/WHM files (& Config files)
- /usr/local/apache/conf/httpd.conf – apache configuration file
- /etc/exim.conf – mail server configuration file
- /etc/named.conf – name server (named) configuration file
- /etc/proftpd.conf – proftpd server configuration file
- /etc/pure-ftpd.conf – pure-ftpd server configuration fileetc/valiases/domainname (catchall and forwarders are set here)
- /etc/vfilters/domainname – email filters are set here
- /etc/userdomains – all domains are listed here addon, parked, subdomains, and the usernames
- /etc/localdomains – exim related file all domains should be listed here to be able to send/receive emails
- /etc/cpbackup-userskip.conf
- /etc/sysconfig/network – Networking Setup
- /etc/hosts
- /etc/resolv.conf – Networking Setup–> Resolver Configuration
- /etc/nameserverips – Networking Setup–> Nameserver IPs ( for resellers to give their nameservers )
- /var/cpanel/resellers – For addpkg, etc permissions for resellers.
- /etc/chkserv.d – Main » Service Configuration » Service Manager
- /etc/ipaddrpool – free IP addresses
- /etc/ips.dnsmaster – nameserver IP’s
- /etc/domainips – dedicate IPʼs set for specific domains
- /etc/wwwacct.conf – account creation defaults file in WHM (Basic cPanel/WHM Setup)
- /etc/cpupdate.conf – Update Config file
- /etc/cpbackup.conf – Configure Backup
- /etc/clamav.conf – clamav (antivirus configuration file )
- /etc/my.cnf – mysql configuration file
- /usr/local/lib/php.ini – php configuration file
- /etc/ips – IP addresses on the server (excluding shared IP’s) (IP Functions–>Show IP Address Usage )
- /var/run/chkservd – Main » Server Status » Service Status
- /var/log/dcpumon – top log process
- /root/cpanel3-skel – skeleton directory. Eg: public_ftp, public_html. (Account Functions)
- /var/spool/exim/input – Mail queue
- /var/spool/exim/msglog – email message logs
- /var/spool/cron – cronjobs are stored here for all users
- /var/cpanel/users – cpanel user file that defines account settings
- /var/cpanel/users.cache – user cache files that are read by cPanel
- /var/cpanel/cpanel.config – cpanel configuration file ( Tweak Settings )
- /var/cpanel/Counters – To get the counter of each users.
- /var/cpanel/bandwidth – To get bandwith usage of domains
- /var/cpanel/userdata – Defines parked, addon, subdomains as well as VirtualHost
- /var/cpanel/logs – transfer logs
- /var/cpanel/easy/apache – easyapache build files/profile
- /var/cpanel/userhomes – session home for cPanel, Horde, Roundcube, phpmyadmin
- /var/cpanel/serviceauth – chkservd service user/pass data
- /var/cpanel/updatelogs – upcp daily logs
- /var/cpanel/horde – version file, backups and logs stored here
- /var/cpanel/roundcube – version file, backups and logs stored here
- /var/cpanel/squirrelmail – version file stored here
- /var/cpanel/packages – default and custom packages created herevar/cpanel/databases – dbmapping files
- /var/cpanel/cpanelsync – DNS Clustering files
Sources: