Product SiteDocumentation Site

Fedora 17

Resource Management Guide

Managing system resources on Fedora 17

Edition 1

Martin Prpič

Red Hat Engineering Content Services

Rüdiger Landmann

Red Hat Engineering Content Services

Douglas Silas

Red Hat Engineering Content Services

Legal Notice

Copyright © 2012 Red Hat, Inc and others.
The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at The original authors of this document, and Red Hat, designate the Fedora Project as the "Attribution Party" for purposes of CC-BY-SA. In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, JBoss, MetaMatrix, Fedora, the Infinity Logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
For guidelines on the permitted uses of the Fedora trademarks, refer to
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
All other trademarks are the property of their respective owners.
Managing system resources on Fedora 17.

1. Document Conventions
1.1. Typographic Conventions
1.2. Pull-quote Conventions
1.3. Notes and Warnings
2. We Need Feedback!
1. Introduction to Control Groups (Cgroups)
1.1. How Control Groups Are Organized
1.2. Relationships Between Subsystems, Hierarchies, Control Groups and Tasks
1.3. Implications for Resource Management
2. Using Control Groups
2.1. The cgconfig Service
2.1.1. The /etc/cgconfig.conf File
2.2. Creating a Hierarchy and Attaching Subsystems
2.3. Attaching Subsystems to, and Detaching Them From, an Existing Hierarchy
2.4. Unmounting a Hierarchy
2.5. Creating Control Groups
2.6. Removing Control Groups
2.7. Setting Parameters
2.8. Moving a Process to a Control Group
2.8.1. The cgred Daemon
2.9. Starting a Process in a Control Group
2.9.1. Starting a Service in a Control Group
2.9.2. Process Behavior in the Root Control Group
2.10. Generating the /etc/cgconfig.conf File
2.10.1. Blacklisting Parameters
2.10.2. Whitelisting Parameters
2.11. Obtaining Information About Control Groups
2.11.1. Finding a Process
2.11.2. Finding a Subsystem
2.11.3. Finding Hierarchies
2.11.4. Finding Control Groups
2.11.5. Displaying Parameters of Control Groups
2.12. Unloading Control Groups
2.13. Additional Resources
3. Subsystems and Tunable Parameters
3.1. blkio
3.1.1. Proportional Weight Division Configuration Options
3.1.2. I/O Throttling Configuration Options
3.1.3. Common Configuration Option
3.1.4. Example Usage
3.2. cpu
3.3. cpuacct
3.4. cpuset
3.5. devices
3.6. freezer
3.7. memory
3.8. net_cls
3.9. net_prio
3.10. ns
3.11. Additional Resources
4. Use Case Scenarios
4.1. Prioritizing Database I/O
A. Revision History