새로 시작된 시스템에서 free
약 1.5G가 RAM을 사용했다고보고합니다 (8G RAM, lightdm 및 플라즈마 데스크탑을 갖춘 Ubuntu 12.04, 하나의 콘솔 창이 시작됨). 내가 사용하는 앱을 사용하더라도 여전히 2G를 소비하지 않습니다. 그러나 시스템을 며칠 동안 실행하면 사용중인 앱 목록에 표시되지 않고 점점 더 많은 무료 RAM이 사라집니다. 사용 된 smem --pie=name
보고서는 20 % 미만 (사용 가능한 80 % 미만)이지만 다른 모든 것은 말합니다 다르게. free -m
예를 들어 약 7 일에 대한 보고서 :
total used free shared buffers cached
Mem: 7459 7013 446 0 178 997
-/+ buffers/cache: 5836 1623
Swap: 9536 296 9240
(이것은 버퍼 또는 캐시가 아님을 알 수 있습니다). 오늘은 결국 시스템이 완전히 중단되면서 Windows 관리자가 사라지고 앱이 "대기 중"(프레임 없음)과 "너무 많은 열린 파일"에 대해 알려주는 팝업으로 끝났습니다. Syslog 보고서 :
kernel: [856738.020829] VFS: file-max limit 752838 reached
그래서 닫을 수있는 응용 프로그램을 닫고 Ctrl-Alt-backspace를 사용하여 X를 죽였습니다. X는 failsafeX로 그 이후에 다시 시도했지만 더 이상 구성을 감지 할 수 없어서 실패했습니다. 그래서 Ctrl-Alt-F2를 사용하여 콘솔로 전환하고 생각할 수있는 모든 정보 (vmstat, free, smem proc/meminfo
,, lsof, ps aux
)를 캡처 한 후 마지막으로 재부팅했습니다. X는 다시 failsafeX를 만들었습니다. 이번에는 "백업 구성에서 복구"라고 말한 다음 콘솔로 전환 startx
하여 그래픽 환경을 성공적 으로 가져 왔습니다.
X를 죽인 후 X와 같이 X 자체를 실행하거나 X에서 실행되는 일부 사용자 프로세스와 관련이 있어야하지만이 문제를 일으키는 원인에 대한 실마리는 없습니다. free -m
출력은 다음과 같습니다.
total used free shared buffers cached
Mem: 7459 2677 4781 0 62 419
-/+ buffers/cache: 2195 5263
Swap: 9536 59 9477
(~ 3.5GB의 여유 공간)-새로 시작한 후의 출력과 비교 :
total used free shared buffers cached
Mem: 7459 1483 5975 0 63 730
-/+ buffers/cache: 689 6769
Swap: 9536 0 9536
에 의해 두 가지 더 유용한 출력이 제공됩니다 memstat -u
. 충돌 직전 :
User Count Swap USS PSS RSS
mail 1 0 200 207 616
whoopsie 1 764 740 817 2300
colord 1 3200 836 894 2156
root 62 70404 352996 382260 569920
izzy 80 177508 1465416 1519266 1851840
X를 죽인 후 :
User Count Swap USS PSS RSS
mail 1 0 184 188 356
izzy 1 1400 708 739 1080
whoopsie 1 848 668 826 1772
colord 1 3204 804 888 1728
root 62 54876 131708 149950 267860
다시 시작한 후 X로 돌아갑니다.
User Count Swap USS PSS RSS
mail 1 0 212 217 628
whoopsie 1 0 1536 1880 5096
colord 1 0 3740 4217 7936
root 54 0 148668 180911 345132
izzy 47 0 370928 437562 915056
편집 : 모니터링 시스템에서 두 개의 그래프를 추가했습니다. 흥미로운 점 : 메모리 소비가 "점프"할 때마다 CPU가 최고조에 달합니다. 방금이 사실을 발견했습니다 .X 자체를 가리키는 또 다른 표시기가 생각납니다. 종종 컴퓨터로 돌아와 화면 잠금을 해제 할 때 CPU에서 무거운 작업을하는 것을 발견했습니다. 로 확인 top
하면 항상로 나타났습니다 /usr/bin/X :0 -auth /var/run/lightdm/root/:0 -nolisten tcp vt7 -novtswitch -background none
.
이 긴 설명 후에 마침내 내 질문 :
- 가능한 원인은 무엇입니까?
- 관련 프로세스 / 애플리케이션을 어떻게 더 잘 식별 할 수 있습니까?
- 이 동작을 피하기 위해 어떤 조치를 취할 수 있습니까? X 일 내내 컴퓨터를 재부팅하지 않는 것이 좋습니까?
예전 머신에서 약 5 년 동안 8.04 (하드)를 실행했지만 비슷한 경험을 한 적이 없습니다 (커널 업데이트 등을 위해 재부팅하기 전에 항상 100 일 이상 가동 시간). 이제 12.04를 새로 설치 한 완전한 새 시스템입니다 . 중요한 경우 일부 사양 :
Radeon (tm) HD 그래픽이 탑재 된 AMD A4-3400 APU, 오픈 소스 ati / radeon 드라이버 (fglrx가 설치되어 있지 않음), 8GB RAM, WDC WD1002FAEX-0 hdd (1TB), Asus F1A75-V Evo 메인 보드. KDE4 / Plasma가 포함 된 Ubuntu 12.04 64 비트 앱은 일반적으로 Evolution, Firefox, konsole (내장 Midnight Commander, 약 4 개의 탭 포함) 및 LibreOffice를 포함하고 있으며 때때로 Calibre, Gimp 및 Moneyplex (현재 거의 20 년 동안 사용하고있는 뱅킹 소프트웨어, Hardy에서 잘 된 버전에서).
편집 :
오늘 나는 "악한 사람"중 하나를 발견했습니다 : KDE4s 플라즈마 데스크탑. 사용한 메모리는 다시 5GB까지였습니다 killall plasma-desktop && plasma-desktop
. 이것은 1.3GB RAM을 확보했습니다! ps
말한다 :
RSS SIZE VSZ
plasma usage before restart 120988 526472 1300816
plasma usage after restart 92352 495972 1263632
그렇다면 1.3GB는 어디에 있었습니까? 이 값들 사이의 차이는 합산하면 1.3GB가 아닌 96MB입니다.
그리고 여전히 3.7GB가 사용 중이므로 (2GB보다 작아야 함) 이는 한 부분 일 수 있습니다. 지난 6 일 동안 여러 도구를 사용하여 이것을 모니터링했습니다. 사용 된 메모리 (캐시 및 버퍼에 대해 이야기하지 않음)가 느리지 만 꾸준히 증가합니다. 책상에 아무것도 없는데도 ...
열린 파일로 프로세스를 모니터링하는 것과 관련하여 현재 다음 1 줄짜리 (쉘과 특히 bash를 좋아합니다)를 사용하여 최상위 5를 얻습니다.
echo "$(for pid in $(ls -a /proc|egrep '^([0-9])*$'|sort -n 2>/dev/null); do \
if [ -e /proc/$pid/fd ]; then FHC=$(ls -l /proc/$pid/fd|wc -l); \
if [ $FHC -gt 0 ]; then PNAME="$(cat /proc/$pid/comm)"; \
echo "$FHC files opened by $pid ($PNAME)"; fi; fi; done)"|sort -r -n|head -n5
가독성을 높이기 위해 4 줄로 명령하십시오. Skype가 인터넷 연결을 끊는 것을 좋아하지 않는다는 것 외에는 아직 아무것도 없습니다. 연결을 끊을 때마다 열린 파일이 약간 증가하지만 극적인 것은 없습니다. 다른 한편으로 그것은 플라즈마가 그것을 담당하는 것처럼 보입니다.
마지막에 파일 핸들이 떨어지는 것을 보시겠습니까? 그것은 플라즈마 재시작이었습니다.
free
. 다른 DE로 바꾸는 것은 실제로 생각한 것입니다. KDE3.5를 사용할 수 있다면 플라즈마로 끝나지 않았습니다. 플라즈마가 관련되어 있는지 확인하는 것은 일시적 일 수 있습니다.
sudo bash -c 'sync; echo 3 > /proc/sys/vm/drop_caches'
여분의 램을 청소 합니까 ? 다음을 사용하여 열린 프로그램 파일을 볼 수 있습니다.lsof