나는 cgroups
내 리눅스 박스에서 작업하는 것을 고려하고 있는데 그것은 고통스럽습니다.
리소스 관리는 건강한 데스크탑 환경에 매우 중요하기 때문에 이것이 훨씬 쉬울 것이라고 생각하여 이를 사용하려고 하지만 많은 문제에 부딪혔습니다.
/etc/cgconfig.conf
다음과 같은 파일이 있습니다 .
group "chromium_slack" {
perm {
admin {
uid = "nate";
gid = "nate";
}
task {
uid = "nate";
gid = "nate";
}
}
cpu {
shares="50";
}
memory {
swappiness="60";
limit_in_bytes="256000000";
}
}
cgconfig
다음과 같이 서비스를 시작 하면 :
sudo systemctl start cgconfig.service
내가 받는 서비스 상태는 Cgroup, requested group parameter does not exist
다음과 같습니다.
× cgconfig.service - Control Group configuration service
Loaded: loaded (/usr/lib/systemd/system/cgconfig.service; enabled; preset: disabled)
Active: failed (Result: exit-code) since Thu 2022-12-15 15:17:16 EST; 11min ago
Process: 9559 ExecStart=/usr/bin/cgconfigparser -l /etc/cgconfig.conf -s 1664 (code=exited, status=95)
Main PID: 9559 (code=exited, status=95)
CPU: 8ms
Dec 15 15:17:16 nx systemd[1]: Starting Control Group configuration service...
Dec 15 15:17:16 nx cgconfigparser[9559]: /usr/bin/cgconfigparser; error loading /etc/cgconfig.conf: Cgroup, requested group parameter does not exist
Dec 15 15:17:16 nx systemd[1]: cgconfig.service: Main process exited, code=exited, status=95/n/a
Dec 15 15:17:16 nx systemd[1]: cgconfig.service: Failed with result 'exit-code'.
Dec 15 15:17:16 nx systemd[1]: Failed to start Control Group configuration service.
cgcreate
하지만 다음과 같이 수동으로 모든 작업을 수행 하려고 하면 다음과 같습니다.
sudo cgcreate -a $USER -g memory,cpu:chromium_slack
sudo echo 256M > /sys/fs/cgroup/chromium_slack/memory.limit_in_bytes
오류 가 발생합니다 permission denied: /sys/fs/cgroup/chromium_slack/memory.limit_in_bytes
.
그래서 제 질문은... 도대체 어떻게 작동하게 만들 수 있을까요?
답변1
루트 셸 내에서 리디렉션을 실행해야 합니다.
sudo su - -c 'echo 256M > /sys/fs/cgroup/chromium_slack/memory.limit_in_bytes'