tuned is a service that applies a consistent set of system settings, a profile, suited to the use of the machine. Rather than adjusting dozens of kernel, CPU and disk parameters by hand, you choose a profile (throughput-performance for a server, powersave to save energy, virtual-guest for a VM) and tuned takes care of the rest. This guide shows how to list the profiles, see the active one, let tuned recommend the right one, change it and verify it is applied. For intermediate administrators, mainly on RHEL and derivatives. The RHCSA objectives (EX200, RHEL 10) name it explicitly: "Manage tuning profiles", under Operate running systems. Outputs come from an AlmaLinux 10 test (tuned 2.27), packages and paths also checked on Debian 13 (2.25.1) and Ubuntu 24.04 (2.21.0).
What you will learn
- What a tuned profile is and where the profiles live.
- Install and enable the tuned service.
- List the profiles and identify the active profile.
- Let
tunedrecommend a profile according to the role of the machine. - Change the profile and verify it is applied.
What is a tuned profile
A profile groups settings aimed at one goal: maximise throughput, minimise latency, save energy. Each profile adjusts parameters such as the CPU frequency governor, disk caching or sysctl values, without you having to know them.
The profiles shipped by the distribution live under /usr/lib/tuned/profiles/; your own profiles, under /etc/tuned/profiles/. This layout comes with recent versions of tuned: on Ubuntu 24.04 (tuned 2.21.0), each profile still sits directly under /usr/lib/tuned/<name>/, and a custom profile under /etc/tuned/<name>/. A custom profile with the same name as a system profile replaces it, which lets you start from an existing profile and adjust it.
Each profile is a readable tuned.conf file. The one of throughput-performance, for example, sets vm.swappiness=10, and virtual-guest, which includes it, raises the value to 30 (read in the files): an active profile therefore often explains a sysctl value that does not match the kernel default.
Install and enable tuned
On RHEL and derivatives, tuned is often already present. Elsewhere, install it, then enable the service.
sudo dnf install tunedsudo apt updatesudo apt install tunedsudo systemctl enable --now tunedsystemctl is-active tunedThe output must show active. All the administration then goes through a single command, tuned-adm, which talks to the daemon.
List the profiles and see the active one
tuned-adm list shows the available profiles with a description, and flags the active profile at the bottom. The list depends on the distribution: RHEL 10 ships about fifteen profiles in the tuned package and puts the others (mssql, oracle, postgresql, cpu-partitioning...) in tuned-profiles-* packages, whereas Debian and Ubuntu ship more than thirty at once:
tuned-adm listAvailable profiles:- balanced - General non-specialized tuned profile- powersave - Optimize for low power consumption- throughput-performance - Broadly applicable tuning ... common server workloads- latency-performance - Optimize for deterministic performance ...- virtual-guest - Optimize for running inside a virtual guest- virtual-host - Optimize for running KVM guests...Current active profile: virtual-guestTo get only the current profile, use tuned-adm active, which prints a single line.
Which profile for which use
The profile names are explicit, but here are the common choices in production. They all appear in tuned-adm list on AlmaLinux 10 and Ubuntu 24.04; the Debian 13 package (tuned 2.25.1) does not ship virtual-host (measured):
| Use of the machine | Suitable profile |
|---|---|
| Application server, database, general server use | throughput-performance |
| Latency-sensitive load (real time, VoIP, trading) | latency-performance or network-latency |
| Virtual guest machine | virtual-guest |
| KVM virtualisation host | virtual-host |
| Workstation, laptop | balanced, or powersave on battery |
| Intensive computing (HPC) | hpc-compute |
When in doubt, balanced is the all-purpose default profile. A wrong choice breaks nothing: the worst risk is a suboptimal machine, never unstable, and a simple tuned-adm profile puts it right.
Let tuned recommend a profile
If you hesitate, tuned-adm recommend suggests the profile suited to the detected role of the machine. On a VM, it logically advises virtual-guest:
tuned-adm recommendvirtual-guestIt is also what tuned applies by default at the first start, through the auto_profile mode.
Change the profile
To apply a profile, pass its name to tuned-adm profile. The change is immediate and persists after reboot:
sudo tuned-adm profile throughput-performancetuned-adm activeCurrent active profile: throughput-performanceTo disable every tuned setting and go back to the default values of the system, use tuned-adm off.
Verify that a profile is applied
tuned-adm verify compares the settings in force with those expected by the active profile, and says whether they match:
sudo tuned-adm verifyPut it into practice
A performance profile is not judged on paper. On a disposable VM, this lab makes you install tuned, compare the suggestion of tuned-adm recommend with the active profile, then apply a new profile and check it with tuned-adm verify.
Key points
- A tuned profile applies a consistent block of settings for a given use, without setting each parameter by hand.
- All the administration goes through
tuned-adm:list,active,recommend,profile <name>,verify,off. - Choose according to use:
throughput-performance(server),latency-performance(real time),powersave(energy),virtual-guest(VM). tuned-adm recommendsuggests the profile suited to the role of the machine.- A profile change persists after reboot;
verifycan fail legitimately in a VM.
Knowledge check
Check that the essentials of this guide stuck. The questions cover only what has just been explained here.
Knowledge check
Check what you have learned with this interactive quiz
How it works
- The timer starts when you click Start
- Multiple choice, true/false and short answer questions
- You can move between questions
- Detailed results are shown at the end
Starts the quiz and the timer
Review
(0/0)Score by domain
A domain groups several guides and gets several questions, so its score is more reliable than a per-topic score, which often rests on a single question.
Summary
Strengths
No topic passed at 80% on at least two questions yet.
Weak areas
No topic below the pass mark.
Recommended next
Hints before you try again?
Continue the course: Linux reboot and shutdown: shutdown, systemctl
A new full quiz with random questions
Work again only on the questions you missed