renice zmienia priorytet planowania (tzw. wartość nice) procesów, które już działają. W przeciwieństwie do nice, które ustawia priorytet w momencie startu programu, renice sięga do żywych PID-ów i mówi planiście systemowemu, jak chętnie ma im przydzielać czas procesora. Skala jest odwrotna do intuicji: od -20 (najwyższy priorytet, proces najbardziej „egoistyczny”) do 19 (najniższy, najbardziej „uprzejmy” wobec innych). Im wyższa liczba, tym proces grzeczniej oddaje CPU sąsiadom.
Składnia i najważniejsze opcje
Podstawowa forma: renice [-n] priorytet [-p PID] [-u użytkownik] [-g grupa]
-n priorytet— wartość nice do ustawienia. Uwaga: w wersji z util-linux (typowy Linux)-nustawia wartość bezwzględną, a nie względną.-p PID— kolejne argumenty traktuje jako identyfikatory procesów (to zachowanie domyślne, więc często możesz pominąć-p).-u użytkownik— argumenty to nazwy użytkowników lub UID-y; zmienia priorytet wszystkim ich procesom.-g grupa— argumenty to identyfikatory grup procesów (PGID).--help— krótka ściąga ze składnią.--version— wersja narzędzia.
Przykłady użycia
renice -n 10 -p 1234— ustawia procesowi o PID 1234 wartość nice na 10, czyli każe mu ustępować innym (mniej priorytetu).renice -n -5 -p 1234— podbija priorytet procesu 1234; wymaga uprawnień roota, bo zwykły użytkownik nie może obniżać wartości nice.sudo renice -n 15 -u backup— wszystkim procesom użytkownikabackupnadaje niski priorytet, żeby nocny backup nie dławił reszty systemu.renice -n 19 $(pgrep ffmpeg)— wycisza wszystkie procesyffmpeg, podstawiając ich PID-y bezpośrednio jako argumenty.sudo renice -n 0 -p 1234— przywraca procesowi neutralny, domyślny priorytet.
Częste błędy i pułapki
Najczęstsza wpadka to mylenie kierunku skali — wyższa liczba to niższy priorytet, nie odwrotnie. Druga klasyka: zwykły użytkownik może tylko podnosić wartość nice (czynić proces „milszym”) i te zmiany są nieodwracalne bez uprawnień roota. Chcesz podbić priorytet (ujemne wartości)? Potrzebujesz sudo.
Uważaj też na różnice między systemami. Na Linuksie (util-linux) -n ustawia wartość bezwzględną, ale klasyczna składnia POSIX/BSD traktuje argument jako przyrost względem obecnej wartości — ten sam zapis na macOS czy starszym uniksie da inny efekt. Na produkcji najpierw sprawdź man renice konkretnej maszyny. I nie licz, że renice -20 zamieni leniwy skrypt w rakietę — jeśli proces czeka na dysk lub sieć, priorytet CPU mu nie pomoże.