iceccd - Man Page

Icecream daemon


iceccd [-b env-basedir] [--cache-limit MB] [-d] [-l log-file] [-m max-processes] [-N hostname] [-n node-name] [--nice level] [--no-remote] [-s scheduler-host] [-u user] [-v[v[v]]]


The Icecream daemon has to run on all nodes being part of the Icecream compile cluster. It receives compile jobs and executes them in a chroot environment. The compile clients send their compile environment the first time they send a job to a particular daemon, so that the environment of the daemon does not have to match the one of the client.

The daemon also has to run on clients sending compile jobs to the Icecream network. If a node should be able to send compile jobs, but never receive any, start the daemon with the option -m 0.

All Icecream daemons need to have contact to the Icecream scheduler which controls the distribution of data between compile nodes. Normally the daemon will automatically find the right scheduler. If this is not the case you can explicitly specify the name of the Icecream network and the host running the scheduler.


-b,  --env-basedir env-basedir

Base directory for storing compile environments sent to the daemon by the compile clients.

--cache-limit MB

Maximum size in Mega Bytes of cache used to store compile environments of compile clients.

-d,  --daemonize

Detach daemon from shell.

-h,  --help

Print help message and exit.

-l,  --log-file log-file

Name of file where log output is written to.

-m,  --max-processes max-processes

Maximum number of compile jobs started in parallel on machine running the daemon.

-N hostname

The name of the icecream host on the network.

-n,  --name,  --netname net-name

The name of the icecream network the daemon should connect to. There has to be a scheduler running for the network under the same network name.

--nice level

The level of niceness to use. Default is 5.


Prevents jobs from other nodes being scheduled on this one.

-s,  --scheduler-host scheduler-host

Name of host running the scheduler for the network the daemon should connect to. This option might help if the scheduler cannot broadcast its presence to the clients due to firewall settings or similar reasons, when this is enabled scheduler should use --persistent-client-connection.

-u,  --user-uid user

Specify the system user used by the daemon, which must be different than ‘root’. If not specified, the daemon defaults to the ‘icecc’ system user if available, or ‘nobody’ if not.

-v,  -vv,  -vvv

Control verbosity of daemon. The more v the more verbose.

See Also

icecream(7), icecc-scheduler(1), icemon(1)


Cornelius Schumacher

Referenced By

icecc(1), icecc-create-env(1), icecc-scheduler(1), icecream(7), icemon(1), icerun(1).

April 21th, 2005