Saya tahu bahwa nilai kebaikan diwarisi dari nilai kebaikan dari proses induk, tetapi bisakah saya secara global mengubah nilai kebaikan standar untuk pengguna tertentu (saya sendiri).
Dalam hal ini saya memiliki server kenyamanan kecil dalam pikiran, yang diakses secara eksklusif melalui ssh
. Jadi, saya pikir saya bisa mengubah shell default saya dari /bin/bash
ke /etc/bash5
sementara /etc/bash5
adalah script ini:
#!/bin/sh
nice -n 5 /bin/bash
#file privileges: root:root 755
Ini mengejutkan saya sebagai hack and error yang rentan. Pasti ada cara yang lebih baik.
Saya sebagian besar tertarik pada solusi umum, yang juga berlaku untuk sistem desktop / laptop.
Sunting: Saya mencoba limits.conf
perubahan yang disarankan , tetapi tidak berfungsi seperti yang diharapkan:
root@server# addgroup nice
root@server# adduser myself nice
root@server# echo '@nice soft nice 5' >> /etc/security/limits.conf
Lalu, dari mesin klien saya, kataku
myself@client$ ssh server
myself@server$ sleep 1h &
myself@server$ htop
Sekarang, sleep
proses memiliki nilai kebaikan awal0
, tetapi jika saya mengubah nilainya F8
menjadi 19 dan kemudian mencoba menguranginya lagi dengan F7
berhenti di5
.
Edit2: Solusi
Alih-alih menggunakan nice
item dalam limits.conf
, Anda sebenarnya harus menggunakan priority
meskipun itu kontra-intuitif.
@nice soft priority 5
bash5
pendekatan saya , saya berikan ini. Tapi itu masih rusak jika saya katakan ssh myserver -- somecommand
bukan?
limits.conf
. Untuk apa output Anda ps -o pid,nice,cmd
?
nice
.
renice -n 5
Anda~/.profile
?