Updated: 05/29/13
I had recently ran across a request from a customer asking me to install Icecast. I didn’t find any easy guides out there that had the entire process laid out. So, here is my contribution to the Internet. I hope one of you find this useful. With this guide, you can set it up in a mere 10 minutes.
What is Icecast?
Per the official website (http://www.icecast.org): Icecast is free server software for streaming multimedia. In particular, icecast streams audio to listeners over the Internet, and is compatible with Nullsoft’s Shoutcast.
Installation
We’re going to install Icecast via YUM. It’s quick, it’s easy, it’ll be manageable to maintain it. You’ll need to have root access to perform all these steps, so go ahead and log in as ‘root’.
The first thing to do is install the dependencies that are needed run icecast:
|
1 |
yum install curl-devel libtheora-devel libvorbis-devel libxslt-devel speex-devel |
Next, you need to grab the EPEL repo that matches your version of CentOS:
CentOS 6 (64 bit):
|
1 |
rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm |
CentOS 6 (32 bit):
|
1 |
rpm -ivh http://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm |
CentOS 5 (64 bit):
|
1 |
rpm -ivh http://dl.fedoraproject.org/pub/epel/5/x86_64/epel-release-5-4.noarch.rpm |
CentOS 5 (32 bit):
|
1 |
rpm -ivh http://dl.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm |
And now we install the Icecast:
|
1 |
yum install icecast |
Configuration
Any custom configuration changes you want to make (such as admin password), you would make them in the Icecast conf:
|
1 |
/etc/icecast.xml |
In the past, you had to change the user that Icecast runs as and you had to change the logging directory. Then you would have had to create that log directory and user. No more! By installing it with YUM, the user and logging folder are automatically created and setup. The user is ‘icecast’. The logging folder is: /var/log/icecast
Run Icecast
This is it, the moment you’ve been waiting for:
|
1 |
icecast -c /etc/icecast.xml -b |
Make sure port 8000 is opened in your firewall. Now you can test it by accessing: http://yourdomain.com:8000. You will see a screen like this:
Auto-run/Add to system start up
In the event that your server is ever rebooted, you’ll want to make sure that Icecast automatically starts too. Take that last command we had to run Icecast (listed above) and place it in your:
|
1 |
/etc/rc.local |
Note about this article
This article is one I had written and shared with the ServInt blog as part of the ‘Tech bench’ series. You can view it on the ServInt blog here. They are using my article with my permission.
Change Log:
05/29/13 | Completely revamped install method. Using YUM and EPEL repo as opposed to building the binary package. Now you can install Icecast on CentOS 5 & 6, on 32-bit & 64-bit!05/28/13 | Removed broken links to external sites’ install guides
06/22/11 | Updated guide to use the latest version of Icecast (2.3.2)















