renice

Zmienia priorytet już działających procesów.

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) -n ustawia 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żytkownika backup nadaje niski priorytet, żeby nocny backup nie dławił reszty systemu.
  • renice -n 19 $(pgrep ffmpeg) — wycisza wszystkie procesy ffmpeg, 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.

Powiązane komendy: nice, ps, top, htop, ionice, chrt.