지정된 사용자 (limits.conf)의 기본 기본 값을 설정하십시오.


12

누군가 사용자 의 기본값 nice을 표시 하는 방법을 알려주시겠습니까 top? 나는 /etc/security/limits.conf가 장소라는 것을 알았습니다.

username_of_a_guy  -  nice  19
username_of_a_guy  soft  nice  19
username_of_a_guy  hard  nice  19

작동하지 않습니다 (그렇지 않으면 안됩니까?).

그 이후로 재부팅했습니다.

주셔서 감사합니다 아주 많이 도움이 사전에. 데비안 불안정 (최신)을 사용하고 있습니다.

문맥:

우리 회사에는 로컬 네트워크가 있습니다. 모든 사람이 자신의 컴퓨터를 가지고 있고 다른 사람이 좋아하는 경우 다른 사람의 컴퓨터에서 계정을 만들 수 있습니다. 경험의 원칙은 단순히 다른 컴퓨터에서 작업하는 경우 프로세스를 훌륭하게 처리한다는 것입니다 ( nice 19).

주어진 사용자의 기본 nice 값을 한 번에 19로 설정하고 싶습니다.


답변:


13

올바른 형식은 다음과 같습니다.

@users      -       priority        10
username    -       priority        19

이것은 프로덕션에서 사용하는 설정의 예입니다 (실제 사용자 / 그룹과 함께).

nice설정은 최소 좋은 값 (즉, 최대 우선 순위) 사람이 아니라 자신의 기본 우선 순위에 자신의 과정을 설정할 수 있습니다 결정하는 것입니다.


2
우선, 답변 주셔서 감사합니다 (@mattdm 감사합니다). 이 방법이 효과가있는 것 같습니다. 그러나 "nice"과 "priority"의 차이점에 대해 여전히 혼란스러워합니다. 둘 다 "top"으로 표시되지만 nice로 인용 된 값은 우선 순위를 설정해야합니다. 나에게는 조금 이상해 보인다. 또한, 우선 순위가 클수록 (20 대신 39) 더 좋은 프로세스를 의미합니까? 감사합니다.
— Alex

4
'NI'우선 순위는 한계 priority설정에 의해 설정되는 것 입니다. 이것은 로그인 할 때 해당 사용자 / 그룹에 대한 프로세스의 기본 우선 순위입니다.이 값은 -20과 20 사이로 만 설정할 수 있습니다. 맨 위의 'PR'값은 실제 스케줄러 우선 순위이며 이는 몇 가지에 의해 결정됩니다. 커널의 스케줄러에 의한 요소.
— jsbillings 2016 년

1
또한 우선 순위가 높을수록 CPU주기를 예약 할 가능성이 줄어 듭니다.
— jsbillings 2016 년

1
이 명확성에 감사드립니다. BTW, 나는 내보다 다른 상황에서 더 나을 수있는 다른 방법 ( and또는 관련 cgroup)을 시도하지 않았습니다 (지속적인 검사 또는 많은 사용자의 관리가 필요합니다-내 경우에는 너무 많습니다).
— Alex

흠 ... 이것은 우분투 컴퓨터에서 한 사용자에게는 효과가 있었지만 다른 사용자에게는 효과가 없었습니다. 이유를 알아낼 수 있다면 다시 올게요. ;-)
— Ken Sharp

3

시스템에서도 작동하지 않는 것을 확인할 수 있습니다. 문서는 "커널 2.6.11 이상"이라고 말하고 저는 커널 2.6.38-rc6과 함께 Fedora rawhide를 사용하고 있습니다. 스케줄러에 의존하고 2.6.23에 도입 된 CFQ ( "완전히 공정한 스케줄러")와 작동하지 않는지 궁금합니다.

그러나 잘 작동하는 것은 검색이 불가능하기 때문에 끔찍한 이름 and, 즉 auto-nice 데몬입니다. http://and.sourceforge.net/을 참조하십시오 . 이것은 Fedora에서와 함께 사용할 수 yum install and있지만 불행히도 EPEL에는없는 것 같습니다. 그리고 그것은 데비안에도 있습니다 : apt-get install and.

그러나 최신 배포판을 사용하는 경우 더 나은 방법이 있습니다. libcgroup 의 도구를 사용하여 커널 수준 cgroup 제한 CPU 공유 를 설정하고 해당 사용자 프로세스를이 cgroup으로 자동 "분류"할 수 있습니다. 이를 통해 I / O의 우선 순위를 정하고 메모리 사용량 (디스크 캐시 공유 포함)을 제한 할 수도 있습니다.


cgroups를 사용하는 것이 다른 사람들이 컴퓨터의 모든 CPU 사이클을 사용하지 못하도록 제한하는 훌륭한 방법이라는 데 동의합니다. 안타깝게도 지원하는 시스템 (RHEL5)에는이를 지원하는 커널이 없으므로 우선 순위를 조정해야합니다. RHEL6으로 업데이트하면 상당히 복잡한 cgroup 설정이있을 것입니다.
— jsbillings
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.