After 5 years or suffering I found out how to make Linux not grind to screeching halt every time a write is being performed to Raspberry Pi SD card:
Put
#!/bin/bash
echo 128 > /sys/block/mmcblk0/queue/max_sectors_kb
echo bfq > /sys/block/mmcblk0/queue/scheduler
into /usr/local/bin/set_scheds.sh . Put
[Unit]
Description=Set Schedulers
After=sysinit.target
[Service]
Type=oneshot
ExecStart=/usr/local/bin/set_scheds.sh
RemainAfterExit=yes
[Install]
WantedBy=multi-user.target
into /etc/systemd/system/set_scheds.service . Do:
chmod a+x /usr/local/bin/set_scheds.sh
sudo systemctl daemon-reload
sudo systemctl enable set_scheds.service
sudo systemctl start set_scheds.service
I asked a friend full time employed as Linux kernel developer. He didn't know. He didn't know the max_sectors_kb is actually a parameter of the I/O scheduler. I discovered it accidentally. The doc is bad.
IMO horrible UX.
#linux #badux #ux #unusable #raspberrypi #rpi #frustrating #friction #complexity #complicated










