Starting the Icecast Server

If icecast has been configured and installed correctly, you should now be ready to start the icecast server. Finish customizing the ~/conf/icecast.conf file to reflect your system's setup. Start the icecast server by changing to the ~/bin directory and executing the icecast executable from the command line. This command can either be started with stdin piped to the local window, which is the default, or by running the icecast server in the background.

Note

The former method works well while running in a "screened" session. In this manner the icecast administrator has access to the server process from any computer. Simply reattach to the icecast server's screened session and make any necessary adjustments, such as rehashing the configuration files. Consult the screen man pages for further infomration.

Start the icecast server as the default icecast user created during the initial installation. This can be "iceuser" or "icecast" or whatever else set by the administrator. The following output is typical for an icecast1 startup:

$ su - iceuser
$ icecast
Icecast Version 1.3.12 Initializing...
Icecast comes with NO WARRANTY, to the extent permitted by law.
You may redistribute copies of Icecast under the terms of the
GNU General Public License.
For more information about these matters, see the file named COPYING.
Starting thread engine...
[05/Oct/2004:15:48:22] Icecast Version 1.3.12 Starting..
[05/Oct/2004:15:48:22] Starting Admin Console Thread...
-> [05/Oct/2004:15:48:22] Starting main connection handler...
-> [05/Oct/2004:15:48:22] WARNING: Resolving the server name [10.52.38.229]
does not work!
-> [05/Oct/2004:15:48:22] Listening on host 10.52.38.229...
-> [05/Oct/2004:15:48:22] Listening on port 8000...
-> [05/Oct/2004:15:48:22] Using '10.52.38.229' as servername...
-> [05/Oct/2004:15:48:22] Server limits: 100 clients, 100 clients per
source, 5 sources, 5 admins
-> [05/Oct/2004:15:48:22] WWW Admin interface accessible at
http://10.52.38.229:8000/admin
-> [05/Oct/2004:15:48:22] Starting Calender Thread...
-> [05/Oct/2004:15:48:22] Starting UDP handler thread...
-> [05/Oct/2004:15:48:22] Starting relay connector thread...
>

As icecast runs connections made to it via streamers or other utilities are shown at the icecast prompt. However, an administrator can also send signals to the icecast server from this same prompt. Type help at the command prompt to bring up a list of the available signals. Here is a complete list of the commands that can be sent to the server:

Example 2. Available Commands from the Icecast Prompt

Available commands:
               alias    : Add an alias for a mount point
               allow    : Add hostmask for allowed host
                deny    : Add hostmask for denied host
                 acl    : List all access controls
              admins    : Show all connected admins
                 dir    : Add, delete or remove directory servers
                dump    : Dump a source to a specified file
                help    : Display this text
                kick    : Kick client, admin, or source
           listeners    : Show connected listeners
              modify    : Change the audiocast data for a source
                oper    : Obtain operator privileges
               pause    : Put a client or source on hold
                quit    : Leave remote admin console
              rehash    : Parse the config file
              select    : Select encoder for clients
             sources    : Show connected encoders
            shutdown    : Shutdown the server
                 set    : Set <var> to <arg>
               stats    : Show server statistics
                tail    : Start tailing the logfile
                tell    : Tell other admins
               touch    : Touch the directory server
             unpause    : Unpause a client or source
              untail    : Stop tailing the logfile
              uptime    : Show server uptime
                list    : List all current connections
               relay    : Pull or push a server relay
             threads    : Show all program threads
               locks    : Show status of all locks
              status    : Turn status info on/off (for you)
               debug    : Set debugging output level for this connection.
                 mem    : Another debug function, shows mem usage.
         streamtitle    : Set and/or lock streamtitle for a source.
           streamurl    : Set and/or lock streamurl for a source.
            describe    : Show detailed view on a connection.
                auth    : Show authorization groups, users, or mountpoints.
              scheme    : Change output format.
         server_info    : Display runtime information.
              resolv    : Resolv given ip or hostname.
                ping    : Connect to a icecast server, check it's alive.
                sock    : List or close sockets.
                 run    : Let interpreter run a file.
For slighly more detailed help on each command, try 'help <command>'

Some of the more common commands include shutdown for terminating the server and rehash for parsing the configuration file in the event the icecast.conf file is changed while the server is still running. This is useful when limiting or increasing the amount of available streams or throttling bandwidth. The command can be sent to the server without a shutdown or restart.