The issue with Control Panels, beyond updates (or lack thereof) or cost, is bloat which translates in to larger resource requirements as a result of required software and services.
Using cPanel as an example, the absolute minimum amount of RAM for it to truly function properly and allow you to host a few database-driven websites would be 2-3GB's of RAM. So many try to run it on a 512MB or 1GB Droplet and while it'll run, you'll more than likely run out or short on RAM quick.
The 2-3GB's of RAM is not a requirement from cPanel, though the requirements for cPanel to run that are listed on cPanel's website are for cPanel alone, not specifically for Apache, MySQL, PHP, Dovecot, Ensim, SpamAssassin etc. Just running those few services will shred 512MB-1GB.
When it comes to open source control panels, many of them are finicky and not very well optimized (not to mention that many do not follow standard or up to date security practices), which can lead to even higher resource usage as a result (if the end-result doesn't lead to a compromise).
When it comes to the Command Line Interface (CLI), creating files and directories is one of the easier things that you can do, and if you're worried about remembering commands, there's an option for you to make them memorable.
For example, to create a directory via the CLI, you'd run:
If you wanted to create an entire directory path structure, you can add the
-p options, which tells the command to create each parent in the path. For example:
mkdir -p /home/domains/yourdomain.ext/htdocs/public_html
The above command will start at
/home/ and create each directory following the provided path. You would then be able to change directory (i.e.
Your now inside
That said, I mentioned making this easier and you can do that using Bash Aliases. This file may not exist by default on all OS distro's, though you can create it quickly by logging in as
root and running:
If it doesn't exist, it does now :-).
.bash_aliases file allows you to add aliases and functions that can be called from the CLI using your defined alias or function name -- you can define as many as you want. As an example, I'll create an alias for our
mkdir command as well as an easier way to edit the
.bash_aliases file so that we're not having to remember where it is or how to call it.
If you'll head over to:
I've created a quick example file (which you can copy & paste in to your own
Simply copy the above and run
and then paste the contents. Save and then run:
which ensures that the commands are available via the CLI without you having to logout and log back in.
You'll then be able to run:
To create new directories.
You can also use:
To automatically open the
.bash_aliases file without having remember where it is and:
.bash_aliases file anytime you make modifications to it.