systemd-readahead-replay.service, systemd-readahead-collect.service, systemd-readahead-done.service, systemd-readahead-done.timer, systemd-readahead — Disk read ahead logic
/usr/lib/systemd/systemd-readahead/systemd-readahead [OPTIONS...] COMMAND [DIRECTORY | FILE]
is a service that collects disk usage patterns at boot
is a service that replays this access data collected
at the subsequent boot. Since disks tend to be
magnitudes slower than RAM, this is intended to improve
boot speeds by pre-loading early at boot all data on
disk that is known to be read for the complete boot
is executed a short while after boot completed and signals
to end data collection. On this signal, this service
will then sort the collected disk accesses and store
information about them in
are activated at boot so that access patterns from the
preceding boot are replayed and new data collected
for the subsequent boot. However, on read-only media
where the collected data cannot be stored, it might
be a good idea to disable
On rotating media, when replaying disk accesses
at early boot,
will order read requests by their location on disk. On
non-rotating media, they will be ordered by their
original access timestamp. If the file system supports
will also defragment and rearrange files on disk to
optimize subsequent boot times.
the following options:
Maximum number of files to read ahead. Only valid for thes collect command.
Maximum size of files in bytes to read ahead. Only valid for the collect and replay commands.
Maximum time in microseconds to spend collecting data. Only valid for the collect command.
The following commands are understood by
Collect read-ahead data on early boot. When terminating, it will write out a pack file to the indicated directory containing the read-ahead data.
Perform read-ahead on the specified directory tree.
Dumps the content of the read-ahead pack file to the terminal. For each file, the output lists approximately how much will be read ahead by the replay command.