Wie kann die CPU-Auslastung beim Tarieren einer großen Datei auf einer bereitgestellten NTFS-Partition begrenzt werden?
Ich habe derzeit tar -cvf
einen 600-GB-Ordner im Hintergrund ohne Komprimierung.
Mir ist aufgefallen, dass mein Ubuntu während dieses Vorgangs so weit zurückbleibt, dass es praktisch unbrauchbar wird. Wenn top
ich das sehe
60% meiner CPU erhalten einen mount.ntfs
Befehl und 15% meiner CPU von der tar
.
Wie kann ich die CPU-Auslastung dieser beiden auf 30% und 10% begrenzen, damit ich mein System gleichzeitig verwenden kann?
Antworten
Die Verlangsamung wird eher durch die Festplattenauslastung als durch die CPU-Auslastung verursacht. tar
liest und schreibt massiv für das 600G-Verzeichnis. Siehe auch verwandten Beitrag .
Da der tar
Prozess bereits ausgeführt wird, müssen Sie seine PID abrufen , indem Sie pidof tar
oder verwenden ps aux | grep tar
und seine E / A-Priorität auf Klasse 3 umstellen.
-c, --Klassenname oder Nummer der Planungsklasse, 0: keine, 1: Echtzeit, 2: Best-Effort, 3: Leerlauf
ionice -c3 -p <pid>
Dadurch dauert die Archivierung auch länger, da die Festplatte nur verwendet wird, wenn sie nicht von anderen Programmen verwendet wird.