SakuraOS Wiki
All pages ↓

Tuning defaults

Linux's defaults have to suit servers, phones and desktops alike. SakuraOS changes a few of them for a desktop, where a responsive screen matters more than maximum throughput. All of them are ordinary configuration files you can change.

Memory and disk writes

From /etc/sysctl.d/99-sakura.conf:

SettingValueEffect
vm.dirty_bytes256 MBAt most this much unwritten data is held in memory, so writing it out never freezes the system for seconds. Linux's default is a percentage of memory, which is many gigabytes on a large machine.
vm.dirty_background_bytes64 MBStarts writing out quietly well before that limit.
vm.dirty_writeback_centisecs15 sHow often data is written out. Less often means fewer disk wake-ups on a laptop.
vm.vfs_cache_pressure50Keeps the list of recently used folders and files in memory longer.
vm.watermark_boost_factor0Turns off a memory-reclaim behavior that causes stutters on desktops.
vm.compaction_proactiveness0Stops the kernel reorganizing memory in the background.
vm.page_lock_unfairness1Shortens the worst-case wait when several programs need the same memory page.
kernel.nmi_watchdog0Turns off a debugging timer that runs on every processor core.
net.core.netdev_max_backlog4096A longer queue for incoming network traffic on fast connections.
kernel.kptr_restrict2Hides kernel memory addresses from programs. A security setting, not a speed one.

Disk scheduling

Each drive gets an I/O scheduler that suits it, set by /etc/udev/rules.d/60-sakura-ioscheduler.rules:

DriveSchedulerWhy
Hard diskbfqMoving the disk's head is slow, so it pays to order requests carefully.
SATA or USB SSD, SD cardmq-deadlineLight ordering with a limit on how long any request waits.
NVMe SSDnoneThe drive schedules its own requests better than the kernel can.

Compressed swap

Instead of a swap file on disk, SakuraOS uses zram: a compressed area in memory, half the size of your RAM up to 8 GB, compressed with zstd. When memory runs short, pages are compressed rather than written to disk, which is much faster and does not wear out an SSD. It lets a computer with little memory keep more programs open before something has to close.

Because compressed memory is so much faster than disk, vm.swappiness is set to 180 in /etc/sysctl.d/99-sakura-zram.conf, so the kernel uses it readily.

Changing them

The cleanest way to change a setting is to add your own file rather than editing SakuraOS's. Files in /etc/sysctl.d are read in alphabetical order and later ones win, so a file named zz-local.conf overrides everything above:

# make swapping less eager
echo "vm.swappiness = 60" | sudo tee /etc/sysctl.d/zz-local.conf
sudo sysctl --system

To undo it, delete your file and run sudo sysctl --system again, or restart.

The zram size lives in /etc/systemd/zram-generator.conf and the disk schedulers in /etc/udev/rules.d/60-sakura-ioscheduler.rules. If you edit those directly, your version is kept through updates. Changes to them take effect after a restart.

The kernel's own scheduling comes from the kernel build, not from these files. See Kernel.

Last checked against the SakuraOS release of 3 October 2026. If your system behaves differently from this page, the page is wrong: please report it.