Hacker News new | comments | show | ask | jobs | submit login

Unless you own a web host (that includes just hosting frineds/family) there is NO reason for cPanel (or other panels) except you not knowing how to run a server

There are plenty of reasons to use administrative tools. There are millions of people using them...including a significant number of experienced system administrators. Our userbase (Virtualmin, an Open Source competitor to cPanel, based on Webmin) is largely made up of experienced system administrators who've built web hosting systems for years. I've been a sysadmin for about 14 years now, and I find it tedious to manage virtual hosts, DNS records, databases, etc. manually, even though I'm entirely capable of doing so.

I'm not going to try to convince you that you should use a web hosting control panel, but I will point out that millions of people, almost certainly including at least a few people who have more experience than you, disagree with you.

I don't find it hard to manage vhosts, dns records and databases by hand. What I do:

each site gets it's own nginx config file, domain.name.conf (replace domain.name with real domain)

databases get prefixed with the domain name (replace . with _ )

Also, I'm working on a script to handle the DNS zones for me.

I didn't say it was hard. I said it was tedious.

Also, I'm working on a script to handle the DNS zones for me.

Yeah, we worked on one of those, too. We called it Webmin (literally, Webmin began as a simple tool for managing and delegating management of DNS records about 14 years ago). And, then we worked on a script to manage virtual hosts, mailboxes, databases, web applications, LDAP, DNS slaves, SVN and git, awstats and Webalizer, resource usage data collection and reporting, user management and delegation to untrusted users, virus and AV scanning, Greylisting, SPF record management, DKIM key management, automated backup and restoration of virtual hosts and all associated data, etc. We called that script (or huge pile of scripts as the case may be) Virtualmin.

Again, I encourage you to work in whatever way you are most comfortable and productive. I manage a few dozen websites, and find having tools to automate much of that process is valuable for me. Millions of users seem to agree that Webmin and/or Virtualmin removes tedium for them, as well. And, I'm sure the same can be said of cPanel users.

Incompetence is not the only reason someone would do something differently than you. Different requirements breed different solutions.

webmin uses more ram than nginx (my webserver) does on my VPS.

Webmin uses ~11MB on a 32 bit system. It used to require an additional ~11MB for the data gathering cron jobs, backup cron jobs, etc. but now it runs most of those tasks within the Webmin application service process and so only increases usage slightly during those tasks.

If that's too much, you don't need to use it. (You could shut it down when you're not using it, though it loses a lot of its utility when it can't communicate with your slave DNS servers, keep resource usage data, etc.)

Virtualmin is a more complicated beast, and can take quite a bit more memory, if caching is enabled, but that is optional, and when disabled it takes the same ~11MB as Webmin.

I do see your point, but I think the little more time setting things up manually is worth it in the end rather than using more memory (or needing a higher tier VPS)

I'm not going to argue that everyone should use Virtualmin or any other control panel, and I'm sure if I were trying to fit my websites into a 64MB system I wouldn't be using a control panel. But, I do want to mention that Virtualmin itself can be configured to use approximately 11MB of RAM (though it is an application server that can cache libraries and modules, and can be as much as ~130MB, with about 20MB resident, in a large system with all caching features enabled). The services being managed are, by far, the biggest consumers of resources.

You can no more build a full-featured virtual hosting stack with email (and spam/AV scanning), web, databases, mod_fcgid or fastcgi with suexec, DNS, etc. in 64MB without a control panel than you could with a control panel. Likewise, if you just want web service, you can build one with Virtualmin in X+11 MB of RAM (where X is the amount of RAM the system and web server require).

Of course, Virtualmin (or cPanel or Plesk) are not targeted to very small deployments. They're for shared hosting, which tends to be on a larger system where a few MB for the control panel is of negligible impact.

I just want it to be clear that "control panel == memory hog" is not really accurate. It's probably all the stuff that users expect from a control panel-equipped system that makes it require more memory. ClamAV, for instance, requires more than 200MB. MySQL for a single moderately popular website can consume 300MB. Apache can grow as big as your imagination, because there are so many modules people can enable. A thoroughly stripped Apache isn't all that big, but the average Apache process is a couple hundred MB.

I'm running nginx, PHP-FPM, MySQL, NSD, exim, UnrealIRCD, ZNC, and thttpd for CGIs on my 128mb VPS, and it uses around 50mb RAM. It only goes up to over 64mb used when my file/database backup script is running. The only thing I don't run on the VPS is incoming email. (I use Google Apps's free version)

Why don't you sysadmins just write scripts?

We do. We called our scripts "Webmin", "Virtualmin", "Cloudmin", and "Usermin". Pretty catchy name for them, I think.

And, then we shared them, so that others wouldn't have to reinvent the wheel and write the same scripts over and over again.

Yeah, but these are web apps, not command-line tools. I thought you guys would prefer command-line tools.

A few points:

Virtualmin and Cloudmin have CLI apps (imaginatively called "virtualmin" and "cloudmin", respectively) that can do everything the GUI can do (and a little bit more, since they can readily be wrapped up in pipes and for loops and can do things in batches very easily).

At some point, when the scripts are advanced enough, all you're doing is data entry. Data entry may be easier/faster in a web-based UI with dropdowns, radio buttons, multi-select boxes, etc. It is also easier to delegate to untrusted or partially trusted users when you can control every option they have available to them. Ever tried to limit someone to only being able to modify some DNS records, but not others, using sudo and filesystem permissions?

A primary reason Webmin is web-based is that a web browser is always available. An ssh client may not be. We do have plans to create a "webmin" CLI tool, at some point in the future, that does the same thing for Webmin that the virtualmin and cloudmin tools to...though that's a trickier business since Webmin isn't really like either of those tools, and is a lot more open-ended in its purpose and capabilities.

But, sure, command line tools are awesome, and Webmin doesn't prevent you from hitting the command line when you want to. I spend my time about 50/50 in Webmin/Virtualmin/Cloudmin and in vim via ssh.

Again, I'm not opposed to people doing their job any way they want. I'd just like to see an end to the FUD that only incompetent sysadmins use tools that make their jobs easier ("It has a GUI!? How dare they!"). I've spent my entire professional working life trying to make sysadmins jobs easier, so I want people to make informed decisions about the available tools, and I've almost never met a sysadmin that couldn't save some time or hassle by using one or more of the tools I work on. It's not the right tool for every job, and I don't recommend everybody install it on every server they ever see (though some sysadmins do), but it's got a lot of niches that it serves very well.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact