This is an outdated version of the HTCondor Manual. You can find current documentation at http://htcondor.org/manual.
next up previous contents index
Next: 6.2 Microsoft Windows Up: 6. Platform-Specific Information Previous: 6. Platform-Specific Information   Contents   Index

Subsections


6.1 Linux

This section provides information specific to the Linux port of Condor. Linux is a difficult platform to support. It changes very frequently, and Condor has some extremely system-dependent code (for example, the checkpointing library).

Condor is sensitive to changes in the following elements of the system:

The Condor Team tries to provide support for various releases of the distribution of Linux. Red Hat is probably the most popular Linux distribution, and it provides a common set of versions for the above system components at which Condor can aim support. Condor will often work with Linux distributions other than Red Hat (for example, Debian or SuSE) that have the same versions of the above components. However, we do not usually test Condor on other Linux distributions and we do not provide any guarantees about this.

New releases of Red Hat usually change the versions of some or all of the above system-level components. A version of Condor that works with one release of Red Hat might not work with newer releases. The following sections describe the details of Condor's support for the currently available versions of Red Hat Linux on x86 architecture machines.


6.1.1 Linux Kernel-specific Information

Distributions that rely on the Linux 2.4.x and all Linux 2.6.x kernels through version 2.6.10 do not modify the atime of the input device file. This leads to difficulty when Condor is run using one of these kernels. The problem manifests itself in that Condor cannot properly detect keyboard or mouse activity. Therefore, using the activity in policy setting cannot signal that Condor should stop running a job on a machine.

Condor version 6.6.8 implements a workaround for PS/2 devices. A better fix is the Linux 2.6.10 kernel patch linked to from the directions posted at http://www.cs.wisc.edu/condor/kernel.patch.html. This patch works better for PS/2 devices, and may also work for USB devices. A future version of Condor will implement better recognition of USB devices, such that the kernel patch will also definitively work for USB devices.

Condor additionally has problems running on some older Xen kernels, which interact badly with assumptions made by the condor_procd daemon. See the FAQ entry in section 7.7 for details.


6.1.2 Address Space Randomization

Modern versions of Red Hat and Fedora do address space randomization, which randomizes the memory layout of a process to reduce the possibility of security exploits. This makes it impossible for standard universe jobs to resume execution using a checkpoint. When starting or resuming a standard universe job, Condor disables the randomization.

To run a binary compiled with condor_compile in standalone mode, either initially or in resumption mode, manually disable the address space randomization by modifying the command line. For a 32-bit architecture, assuming a Condor-linked binary called myapp, invoke the standalone executable with:

  setarch i386 -L -R ./myapp
For a 64-bit architecture, the resumption command will be:
  setarch x86_64 -L -R ./myapp
Some applications will also need the -B option.

The command to resume execution using the checkpoint must also disable address space randomization, as the 32-bit architecture example:

  setarch i386 -L -R myapp -_condor_restart myapp.ckpt


next up previous contents index
Next: 6.2 Microsoft Windows Up: 6. Platform-Specific Information Previous: 6. Platform-Specific Information   Contents   Index
condor-admin@cs.wisc.edu