Insync CPU Auslastung unter Linux reduzieren

Insync ist ein alternativer, kommerzieller Client für Google Drive, OneDrive und Dropbox, den ich hier bereits vorgestellt habe. Ein kleines Problem stellt für mich die hohe CPU-Last beim Start der Anwendung dar, da Insync sofort mit der Synchronisierung beginnt.

Insync bietet von Haus aus keine Möglichkeit, die CPU-Auslastung zu reduzieren. Insofern habe ich ein Skript geschrieben, welches mittels CPUlimit die Insync-Prozesse auf 25% CPU-Auslastung begrenzt.

Als Erstes installieren wir CPUlimit mit einem Paketmanager unserer Wahl über das Terminal, in meinem Fall unter Ubuntu Linux mittels:

sudo apt install cpulimit -y

Insync liegt unter /usr/bin/insync und dort hinterlegen wir ein Skript mit folgendem Inhalt:

sudo gedit limit_insync.sh &
#!/bin/bash

# Starten von Insync im Hintergrund
insync start &

# 3 Sekunden warten, um sicherzustellen, dass Insync vollständig gestartet ist
sleep 3

# Holen der Prozess-IDs (PIDs) 
insync_pids=$(pgrep -f "/usr/lib/insync/insync")

echo "Die PIDs von Insync-Prozessen sind: $insync_pids"

# Begrenzen der CPU-Auslastung für jeden Insync-Prozess
for pid in $insync_pids
do
    cpulimit -l 25 -p $pid &
done

# Warten auf das Ende des Hauptprozesses
wait

Nun machen wir das Skript ausführbar:

sudo chmod +x limit_insync.sh

Dann die Super-Taste drücken und Startprogramme suchen und öffnen.

Hier den Eintrag von Insync bearbeiten und bei Befehl insync start auf limit_insync.sh ändern.

Mit dem nächsten Start beziehungsweise der nächsten Anmeldung sollte CPUlimit ein Auge auf Insync haben. Was sich über die Systemüberwachung, top oder htop überprüfen lässt.