Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save brianjking/3531d29d6bf8f1ae98fb to your computer and use it in GitHub Desktop.
Save brianjking/3531d29d6bf8f1ae98fb to your computer and use it in GitHub Desktop.
Common paths in cPanel and WHM, Useful for regular use. Source: http://www.webhostingbuzz.com/wiki/common-paths-cpanel-and-whm/ Note: I don't take any credits for this article (All credits go to the author who published it), I've just converted into markdown format for regular reference (Personal preference).

Common paths in cPanel and WHM


For those users who use cPanel/WHM on their virtual or dedicated servers the following article describes common system paths and utilities.

Paths of Base Modules


PHP /usr/bin/php

MySQL /var/lib/mysql

Sendmail /usr/bin/sendmail

ImageMagick /usr/local/bin/convert or /usr/bin/convert

Tomcat /usr/local/jakarta/tomcat

Perl /usr/bin/perl

Ruby /usr/lib/ruby/

Ruby Gems /usr/lib/ruby/gems

FFMPEG /usr/bin/ffmpeg

Mplayer /usr/bin/mplayer

LAME /usr/local/bin/lame

FLV Tool /usr/local/bin/flvtool2

 

User Directories


Document Root /home/username

WWW Directory /home/username/public_html

CGI Directory /home/username/public_html/cgi-bin

 

cPanel / WHM Core Directories and Files


/usr/local/cpanel/bin Houses only scripts and binaries which provide installation and configuration of many cPanel services.

/var/cpanel Houses proprietary configuration data for cPanel, including:

  • Primary cPanel configuration
  • User configurations
  • Reseller configurations
  • Accounting, conversion, and update logs
  • Bandwidth data
  • Customized service templates

 

/var/cpanel/cpanel.config The primary cPanel configuration file. Each variable within influences the way cPanel behaves, variables are line delimited, with variables separated by an equal sign. If this file does not exist cPanel falls back to defaults.

/var/cpanel/resellers Lists each reseller with a comma-delimited list of WHM resources that reseller has access to.

/var/cpanel/accounting.log Contains a list of accounting functions performed through WHM, including account removal and creation.

/var/cpanel/bandwidth Files contain a list of bandwidth history for each account, each named after their respective user. History files are stored in human-readable format, while actual bandwidth data are stored in round robin databases.

/var/cpanel/features File name is inherited from the feature list name. Contains a line delimited list of feature variables and a zero or one value. Variables control what cPanel resources are available to users.

/var/cpanel/packages Contains a list of packages named after the packages they represent. If a package belongs to reseller file name is prefixed with reseller username. Each of these values determines the value created in cPanel user file.

/var/cpanel/users Contains a list of cPanel user configuration files named after the user they pertain to. Variables define account resources, themes, domains, etc.

Other /var/cpanel Directories

LOGS This directory contains logs from account copies/transfers.

UPDATELOGS Contains the output of each cPanel update executed on the server.

MAINIPS Named after the respective reseller users they represent, each contains only the IP address which should be used as resellers main shared IP.

ZONETEMPLATES Contains customized DNS zone templates created in WHM.

/scripts This directory houses a large number of scripts which serve as building blocks for many cPanel/WHM features. These scripts can be used to:

  • Update cPanel and many of its services
  • Customize account creation routines
  • Perform backups of cPanel accounts
  • Install and update cPanel managed services

 

cPanel Maintenance Scripts


By default cPanel applies nightly updates at 2:13AM server time via the root crontab. /scripts/upcp dispatches these updates using the following key components:

  • /scripts/updatenow – synchronizes /scripts directory
  • /scripts/sysup – updates cPanel managed rpms
  • /scripts/rpmup – updates all other system updates

Updates are logged to timestamped files in /var/cpanel/updatelogs. Update configuration is stored in /etc/cpupdate.conf

Account Management Scripts

/scripts/wwwacct (account creation) /scripts/killacct (account termination) /scripts/suspendacct (account suspension) /scripts/unsuspendacct (account resuming) /scripts/addpop (create pop account) /scripts/updateuserdomains Updates the user:owner and user:domain tables stored in: /etc/userdomains /etc/trueuserdomains /etc/trueuserowners These tables are used to enumerate and keep track of accounts and their owners.

Package Management

/scripts/ensurerpm Takes argument list of rpms, which are then passed to the underlying package manager.

/scripts/ensurepkg The equivalent of ensurerpm for FreeBSD. Updates specified packages from ports.

/scripts/realperlinstaller Takes argument list of perl modules to install via CPAN. Each of the aforementioned scripts can accept an argument of ‘–force’ to force package installations.

/scripts/mysqlup Can be called to apply MySQL updates independent of upcp.

/scripts/cleanupmysqlprivs Will clean up the default MySQL privilege tables, by installing a more restrictive privilege schema.

/scripts/mysqlconnectioncheck Will verify that mysql is accessible with password stored in /root/.my.cnf and force a reset with a random 16 character string if inaccessible.

/scripts/eximup Can be called to apply exim updates independent of upcp.

/scripts/buildeximconf Will rebuild exim.conf, and merge local, distribution, and cPanel configurations.

/scripts/rebuildnamedconf Rebuild named.conf based on existing zone files

/scripts/easyapache Download, extract, and execute apache build script

/scripts/rebuildhttpdconf Rebuilds httpd.conf based on DNS entries found in each cPanel user configuration

Other cPanel Scripts

/scripts/restartsrv_{servicename} The majority of cPanel managed service can be scripts named appropriately.

/scripts/makecpphp Will rebuild the PHP interpreter used internally by cpsrvd.

/usr/local/cpanel/bin/checkperlmodules Will scan for and install any Perl modules required by cPanel.

/scripts/fullhordereset Updates horde and resets the horde mysql user password.

/scripts/fixquotas

Will attempt to rebuild quota database per information stored in /etc/quota.conf

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment