| HOME / 정보공유 / AIX 명령어 모음

filemon
filemon filemon 명령 목적 파일 시스템의 성능을 모니터하고 논리적 파일, 가상 메모리 세그먼트, 논리적 볼륨(LV) 및 물리적 볼륨(PV)을 위해 I/O 활동을 보고합니다. 구문
filemon [ -d ] [ -i Trace_File -n Gennames_File] [ -o File] [ -O Levels] [ -P ] [ -T n] [ -u ] [ -v ]
설명
filemon 명령은 파일 시스템 및 I/O 시스템 이벤트의 추적을 모니터하며, 그 기간 동안 해당 파일과 I/O 액세스 성능에 대해 보고합니다.
정규 모드에서, filemon 명령은 하나 이상의 응용프로그램 또는 시스템 명령이 실행 및 모니터되는 동안 백그라운드에서 수행됩니다. filemon 명령은 자동으로 프로그램의 파일 시스템 및 I/O 이벤트의 추적을 실시간으로 시작 및 모니터합니다. 디폴트로, 추적은 즉시 시작됩니다. 선택적으로, 추적은 사용자가 trcon 명령을 발행할 때까지 지연될 수 있습니다. 원하는 대로 모니터링을 시작하거나 중단하도록 하기 위해 filemon 명령이 수행 중인 동안에 trcoff 및 trcon 명령을 발행할 수 있습니다. 추적이 trcstop 명령에 의해 정지되면, filemon 명령은 I/O 활동 보고서를 작성한 후 종료합니다.
filemon 명령은 추적 기능에 의해 전에 기록되었던 추적 파일도 처리할 수 있습니다. 파일 및 I/O 활동 보고서는 추적 파일에 기록된 이벤트를 기초로 합니다.
응용프로그램에 좀더 완전한 파일 시스템 성능에 대한 이해를 제공하기 위해, filemon 명령은 파일 및 I/O 활동을 다음 네 개의 레벨에서 모니터합니다.
논리적 파일 시스템 filemon 명령은 논리적 파일에서 논리적 I/O 조작을 모니터합니다. 모니터되는 조작은 모든 read, write, open, 및 lseek 시스템 호출을 포함하며, 이러한 호출은 파일이 이미 메모리에 버퍼되어 있는지의 여부에 따라 실제 물리적 I/O를 일으킬 수도 있고 일으키지 않을 수도 있습니다. I/O 통계는 파일 단위로 보존됩니다.
가상 메모리 시스템 filemon 명령은 디스크상의 세그먼트와 그 이미지 사이의 물리적 I/O 조작(즉, 페이징)을 모니터합니다. I/O 통계는 세그먼트 단위로 보존됩니다.
논리적 볼륨(LV) filemon 명령은 논리적 볼륨에서 I/O 조작을 모니터합니다. I/O 통계는 논리적 볼륨 단위로 보존됩니다.
물리적 볼륨(PV) filemon 명령은 물리적 볼륨에서의 I/O 조작을 모니터합니다. 이 레벨에서, 물리적 자원 이용도가 확보됩니다. I/O 통계는 물리적 볼륨 단위로 보존됩니다.
명령행 플래그가 지정한 대로, 네 개 레벨의 임의의 조합을 모니터할 수 있습니다. 디폴트로, filemon 명령은 가상 메모리, 논리적 볼륨 및 물리적 볼륨 레벨에서만 I/O 조작을 모니터합니다. 이 레벨은 모두 실제 디스크 I/O 요구에 관련됩니다.
filemon 명령은 보고서를 표준 양식 또는 지정된 파일에 기록합니다. 보고서는 모니터되고 있는 각 레벨에 대한 I/O 활동의 요약으로 시작되며 모니터되고 있는 각 레벨에 대한 상세한 I/O 활동 통계로 끝납니다. 요약 및 상세 보고서의 내용은 Reports 섹션에 설명되어 있습니다.
주: filemon 명령에 의해 작성되는 보고서는 꽤 길 수 있습니다. 결과적으로, -o 옵션을 사용하여 이 보고서를 출력 파일에 써야 합니다. 응용프로그램이 물리적 장치를 열어 바로 액세스하는 경우, 완전한 512 바이트 블록의 읽기 및 쓰기 사항만이 보고서에 반영됩니다. 장치 명령을 발행하고 장치 상태를 읽기 위해 장치 드라이버가 사용하는 "축약형" 읽기 및 쓰기 사항은 무시됩니다. CD-ROM에는 하드 디스크에서 같은 동심원을 가진 "트랙" 또는 "실린더"가 없습니다(하나의 나선형 트랙이 있습니다). 결과적으로, 실린더를 기초로 하여 CD-ROM에 대한 탐색 거리 통계를 보고하는 것은 불가능합니다.
-u 플래그는 추적 디먼이 시작되기 전에 열린 파일에 대한 보고서를 작성하는 데 사용됩니다. 이 데이터 중 일부는 유용하지만 대부분은 디먼 및 다른 관련되지 않은 활동에 관련된 것입니다. 이 백그라운드 정보는 특히 대형 시스템에서는 더욱 그러합니다. /unix 파일과 수행 중인 커널이 동일하지 않으면, 커널 주소가 틀린 주소이며 이로 인해 filemon 명령이 종료됩니다. 쉘 스크립트 내에서 filemon 명령을 사용할 때, filemon 출력 파일의 내용을 열람하기 전에 약간의 지연을 허용합니다. filemon 명령이 이 보고서를 작성하는 데는 수 초가 걸립니다.
시스템 추적 기능
filemon 명령은 시스템 추적 기능을 사용하여 원시 입출력 성능 데이터를 얻습니다. 현재, 추적 기능은 하나의 출력 열만을 지원합니다. 따라서, 한 번에 하나의 filemon 또는 추적 프로세스만이 활동할 수 있습니다. 다른 filemon 또는 추적 프로세스가 이미 수행 중이면, filemon 명령은 메세지에 응답합니다.
/dev/systrace: Device busy
I/O 집중 응용프로그램을 모니터하는 동안에, filemon 명령은 추적 이벤트가 작성되는 만큼 신속하게 실시간으로 대처하지 못하는 경향이 있습니다. 이런 경우, 다음과 같은 오류 메세지가 표시됩니다.
Trace kernel buffers overflowed, N missed entries
위의 메세지는 stderr에 표시되며 추적 버퍼가 다 채워져서 잃은 추적 이벤트의 수를 표시합니다. filemon 명령은 I/O 활동의 모니터링을 계속하지만, 보고서의 정확도는 예측할 수 없는 정도로 떨어집니다. 오버플로우를 방지하는 한 가지 방법은 모니터하는 파일 및 I/O 서브시스템의 수를 줄이는 것입니다. 작성되는 추적 이벤트의 수는 모니터되는 레벨 수에 비례합니다. 또한, -T 옵션을 사용하여 오버플로우되기 전에 추적 버퍼의 크기를 대량의 추적 이벤트를 수용할 만큼 늘릴 수 있습니다. 추적 버퍼의 크기를 늘리면 고정 메모리 크기가 늘어나므로, I/O 및 페이지 동작에 영향을 미칩니다.
메모리 제한 환경(메모리에 대한 수요가 공급을 초과하는 환경)에서, -P 옵션을 사용하여 실시간 filemon 프로세스의 텍스트 및 데이터 페이지를 메모리에 고정시켜 페이지가 스왑 아웃되지않도록 할 수 있습니다. -P 옵션을 사용하지 않으면, filemon 프로세스가 스왑 아웃되어 filemon 명령 프로세스가 추적 이벤트를 충분히 빨리 처리할 수 없는 지점까지 지연될 수 있습니다. 이런 상황에서는 위에서 설명한 대로 추적 버퍼가 오버플로우됩니다. 물론, 이 프로세스를 고정시키면 응용프로그램이 메모리를 덜 사용하게 됩니다(filemon 명령은 크기가 큰 프로그램은 아니지만 처리 이미지는 500 KB까지 사용할 수 있습니다).
filemon 명령을 사용하여 기존의 추적 데이터 파일을 처리하기 전에, trcrpt 명령의 -r 옵션을 사용하여 추적 데이터를 순서대로 새로운 파일에 다시 기록해야 합니다. 그렇지 않으면, filemon 명령은 다음과 같은 오류 메세지를 작성한 후 종료됩니다.
error: run 'trcrpt -r' on logfile first
-i Trace_File 및 -n Gennames_File 플래그는 trace 명령으로 작성된 추적 데이터 파일에 대해 filemon 명령의 오프라인 처리를 허용합니다. 두 플래그 중 하나라도 있으면 모두 제공되어야 합니다. 원격 시스템에서 추적 파일을 사후 처리할 필요가 있거나 한 시점에서 추적 데이터 수집을 수행하고 다른 시점에 사후 처리할 필요가 있을 경우, 이러한 플래그가 유용합니다. 또한 시스템 로드가 많고 filemon이 추적 후크를 놓칠 경우에도 이러한 플래그가 유용합니다.
gennames 파일은 추적의 출처인 시스템에서 사용되어야 합니다. 또한, 시스템 구성설정이 동일할 수 있도록 gennames을 시스템 추적 파일이 작성되는 시간에 가깝게 수행하는 것이 좋습니다.
filemon과 관련된 추적 후크는 trace 명령에 의해 수집되어야 하며 trace -j 플래그가 지정합니다. filemon 명령을 -v 플래그와 같이 호출하면, 관련된 추적 후크가 나열됩니다. 그러면, gennames 명령이 실행되며 출력은 Gennames_File에 저장되어 filemon에 대한 추가 정보가 수집됩니다. trace 명령이 실행되고 나면, 추적 로그 파일에 대해 trcrpt -r을 수행하여 다른 파일로 재지정해야 합니다. 그러면 이 파일과 Gennames_File을 filemon에 제공할 수 있습니다.
보고서
filemon 명령에 의해 생성된 각 보고서에는 날짜, 시스템 ID 및 모니터링 기간(초 단위)을 식별하는 헤더가 있습니다. 모니터 기간중의 CPU 이용도도 보고됩니다.
다음, 모니터되고 있는 각 파일 시스템 레벨에 대한 요약 보고서가 작성됩니다. 디폴트로, 논리적 파일 및 가상 메모리 보고서가 전송된 데이터의 총량으로 측정된, 각각 20개의 가장 활동적인 파일 및 세그먼트로 제한됩니다. -v 플래그를 지정하면, 모든 파일 및 세그먼트의 활동도 보고됩니다. 각 보고된 파일, 세그먼트 또는 볼륨마다 한 행이 작성됩니다. 네 종류의 요약 보고서의 각 행에 있는 열은 다음 리스트에서 설명됩니다.
가장 활동적인 파일 보고서
열 설명
#MBS 파일로 송/수신되는 총 메가바이트 수. 행은 이 필드에 내림차순으로 분류됩니다.
#opns 측정 기간 동안 파일이 열린 횟수.
#rds 파일에 대해 수행된 읽기 시스템 호출 수.
#wrs 파일에 대해 수행된 쓰기 시스템 호출 수.
file 파일 이름(전체 경로 이름은 상세 보고서에 있습니다).
volume:inode 파일 및 그 파일의 i 노드 번호가 들어 있는 볼륨 이름. 이 필드를 사용하여 파일을, 가상 메모리 I/O 보고서에 표시된 상응하는 지속 세그먼트와 연관시킬 수 있습니다. 이 필드는, 예를 들어, 실행 도중 작성 및 삭제된 임시 파일에 대해 공백일 수 있습니다.
가장 활동적인 세그먼트 보고서
열 설명
#MBS 세그먼트로 송/수신되는 총 메가바이트 수. 행은 이 필드에 내림차순으로 분류됩니다.
#rpgs 디스크로부터 세그먼트로 읽혀진 4096 바이트 페이지의 수(즉, 페이지).
#wpgs 세그먼트에서 디스크로 기록된 4096 바이트 페이지의 수(페이지 아웃).
segid 세그먼트의 내부 ID.
segtype 세그먼트의 유형: 작업 세그먼트, 지속 세그먼트(국지 파일), 클라이언트 세그먼트(원격 파일), 페이지 테이블 세그먼트, 시스템 세그먼트 또는 파일 시스템 데이터(로그, 루트 디렉토리, .inode, .inodemap, .inodex, .inodexmap, .indirect, .diskmap)가 들어 있는 특수 지속 세그먼트.
volume:inode 지속 세그먼트의 경우, 연관 파일 및 그 파일의 i 노드 번호가 들어 있는 볼륨 이름. 이 필드를 사용하여 지속 세그먼트를 파일 I/O 보고서에 표시된 그에 상응하는 파일과 연관시킬 수 있습니다. 이 필드는 비지속 세그먼트에 대해서는 공백입니다.
주: 가상 메모리 분석 도구인 svmon은 세그먼트에 대한 자세한 정보, 주어진 세그먼트 ID(segid)를 다음과 같이 표시합니다.
svmon -S
가장 활동적인 논리적 볼륨 보고서
열 설명
util 볼륨 이용도(사용 시간의 분수). 행은 이 필드에 내림차순으로 분류됩니다.
#rblk 볼륨에서 읽은 512 바이트 블록의 수.
#wblk 볼륨에 기록된 512 바이트 블록의 수.
KB/sec 총 전송 처리량(초당 킬로바이트 단위).
volume 볼륨 이름.
description 볼륨의 내용: 파일 시스템 이름 또는 논리적 볼륨 유형(페이징, jfslog, 부트 또는 sysdump). 또한 파일 시스템이 프래그먼트화되었는지 또는 압축되었는지도 표시합니다.
가장 활동적인 물리적 볼륨 보고서
열 설명
util 볼륨 이용도(사용 시간의 분수). 행은 이 필드에 내림차순으로 분류됩니다.
#rblk 볼륨에서 읽은 512 바이트 블록의 수.
#wblk 볼륨에 기록된 512 바이트 블록의 수.
KB/sec 총 볼륨 처리량(초당 킬로바이트 수).
volume 볼륨 이름.
description 볼륨 유형. 예를 들어, 120 MB 디스크, 355MB SCSI 또는 CDROM SCSI.
주: 논리적 볼륨 I/O 요구는 물리적 볼륨 요구보다 먼저 시작하고 나중에 종료합니다. 이러한 이유로 논리적 볼륨의 총 이용도가 물리적 볼륨의 총 이용도보다 높게 나타납니다.
끝으로 모니터되고 있는 각 파일 시스템 레벨에 대한 상세 보고서가 작성됩니다. 디폴트로 논리적 파일 및 가상 메모리 보고서가 전송된 데이터의 총량으로 측정된 각각 20개의 가장 활동적인 파일 및 세그먼트로 제한됩니다. -v 플래그를 지정하면 모든 파일 및 세그먼트의 활동도 보고됩니다. 각 보고된 파일, 세그먼트 또는 볼륨마다 한 항목이 작성됩니다. 다음 리스트에 설명된 대로 네 종류의 상세한 보고서에 대한 각 항목 내의 필드가 아래에 설명됩니다.
일부 필드는 한 개의 값을 보고하며 또 어떤 필드는 여러 값의 분산으로 특징지우는 통계를 보고합니다. 예를 들어, 모니터된 모든 읽기 또는 쓰기 요구에 대한 응답 횟수 통계가 보관됩니다. 응답 횟수의 표준 편차 외에 평균, 최소 및 최대 응답 횟수가 보고됩니다. 표준 편차는 개별 응답 횟수가 평균에서 벗어난 정도를 표시하는 데 사용됩니다. 표본화된 응답 횟수의 약 2/3가 평균 - 표준 편차와 평균 + 표준 편차 사이입니다. 응답 횟수의 분산이 광범위하게 산포된 경우, 평균 응답 횟수에 비교했을 때 표준 편차가 큽니다.
상세한 파일 상태 보고서
열 설명
FILE 파일 이름. 가능하면 전체 경로 이름이 제공됩니다.
volume 파일이 들어 있는 논리적 볼륨/파일 시스템의 이름.
inode 파일 시스템 내에서 파일의 i 노드 번호.
opens 모니터되는 동안 파일이 열린 횟수.
total bytes xfrd 파일로 송/수신되어 읽힌/기록된 바이트의 총 수.
reads 파일에 대한 읽기 호출의 수.
read sizes(bytes) 읽기 전송 크기 통계(avg/min/max/sdev)(바이트 단위).
read times(msec) 읽기 응답 횟수 통계(avg/min/max/sdev)(밀리초 단위).
writes 파일에 대한 쓰기 호출의 수.
write sizes(bytes) 쓰기 전송 크기 통계.
write times(msec) 쓰기 응답 횟수 통계.
seeks lseek 서브루틴 호출의 수.
상세한 VM 세그먼트 통계 보고서
열 설명
SEGMENT 내부 세그먼트 ID.
segtype 세그먼트 내용의 유형.
segment flags 다양한 세그먼트 속성.
volume 지속 세그먼트의 경우, 대응 파일이 들어 있는 논리적 볼륨 이름.
inode 지속 세그먼트의 경우, 대응 파일의 i 노드 번호.
reads 세그먼트에 읽혀진 4096 바이트 페이지의 수(즉, 페이지화된).
read times(msec) 읽기 응답 횟수 통계(avg/min/max/sdev)(밀리초 단위).
read sequences 읽기 순서의 번호. 순서는 연속적으로 읽히는(페이지인) 페이지의 문자열입니다. 읽기 순서의 번호는 순차 액세스 양의 표시기입니다.
read seq. lengths 읽기 순서의 길이를 페이지로 설명하는 통계.
writes 세그먼트로부터 기록된(즉, 페이지 아웃) 페이지 수.
write times(msec) 쓰기 응답 횟수 통계.
write sequences 쓰기 순서의 번호. 순서는 연속적으로 기록되는(페이지 아웃) 페이지의 문자열입니다.
write seq.lengths 쓰기 순서의 길이를 페이지로 설명하는 통계.
상세한 논리적/물리적 볼륨 통계 보고서
열 설명
VOLUME 볼륨 이름.
description 볼륨의 설명(논리적 볼륨을 다루는 경우 내용을 설명하고, 물리적 볼륨을 다루는 경우 유형을 설명합니다).
reads 볼륨에 대해 수행된 읽기 요구의 수.
read sizes(blks) 읽기 전송 크기 통계(avg/min/max/sdev)(512 바이트 블록 단위).
read times(msec) 읽기 응답 횟수 통계(avg/min/max/sdev)(밀리초 단위).
read sequences 읽기 순서의 번호. 순서는 연속적으로 읽히고 순차 액세스의 양을 표시하는 512 바이트 블록의 문자열입니다.
read seq. lengths 읽기 순서의 길이를 블록으로 설명하는 통계.
writes 볼륨에 대해 수행된 쓰기 요구의 수.
write sizes(blks) 쓰기 전송 크기 통계.
write times(msec) 쓰기 응답 횟수 통계.
write sequences 쓰기 순서의 번호. 순서는 연속적으로 기록되는 512 바이트 블록의 문자열입니다.
write seq. lengths 쓰기 순서의 길이를 블록으로 설명하는 통계.
seeks 읽기 또는 쓰기 요구에 선행한 탐색의 수로서 또한 탐색이 필요한 총 읽기 및 쓰기의 백분율로 표현됩니다.
seek dist(blks) 탐색 거리 통계(단위는 512 바이트 블록). 일반 통계 (avg/min/max/sdev)와 함께 초기 탐색 조작의 거리(시작 위치는 블록 0으로 가정되었음)가 개별적으로 보고됩니다. 이 탐색 거리는 때로 매우 크므로, 다른 통계의 왜곡을 피하기 위해 개별적으로 보고됩니다.
seek dist(cyls) (하드 파일 전용.) 탐색 거리 통계(디스크 실린더 단위).
time to next req 볼륨에 대한 연속적인 읽기 또는 쓰기 요구 사이의 시간 길이를 밀리초 단위로 설명하는 통계(avg/min/max/sdev). 이 열은 볼륨이 액세스되는 비율을 나타냅니다.
throughput 총 볼륨 처리량(초당 킬로바이트 수).
utilization 볼륨이 사용 중이던 시간의 분수. 이 보고서의 항목은 이 필드에 의해 내림차순으로 분류됩니다.
플래그
-i Trace_File 실시간 추적 프로세스 대신에 지정된 Trace_File에서 I/O 추적 데이터를 읽습니다. filemon 보고서는 추적 파일이 표시한 시스템에 대한 I/O 활동과 기간을 요약합니다.
주: 추적 데이터 파일은 일반적으로 순환 방식으로 작성됩니다. 추적 데이터가 다시 시작(wrap around)된 경우, 추적의 연대순 시작 및 끝이 파일 중간에 발생합니다. trcrpt 명령의 원시 모드를 사용하여 filemon 명령을 호출하기 전에 데이터를 순차적으로 재기록하십시오.
trcrpt -r file > new.file
보고서가 정확하기 위해서는, 추적 파일이 filemon 명령에 필요한 모든 후크를 포함해야 합니다.
-n 옵션도 지정해야 합니다.
-n Gennames_File 오프라인 추적 처리를 위해 Gennames_File을 지정합니다. 이 파일은 다음과 같이 gennames 명령을 수행하고 출력을 파일로 재지정하여 작성됩니다.
gennames > file
-i 옵션도 지정해야 합니다.
-oFile stdout 파일 대신에 지정된 File에 I/O 활동 보고서를 기록합니다.
-d filemon 명령을 시작하지만 사용자가 trcon 명령을 실행할 때까지 추적을 연기합니다. 디폴트는 추적을 즉시 시작하는 것입니다.
-Tn 커널의 추적 버퍼 크기를 n 바이트로 설정합니다. 디폴트 크기는 32,000 바이트입니다. 버퍼 크기를 늘려서, 만약 있다면, 대량의 이벤트를 수용할 수 있습니다(일반적인 이벤트 레코드 크기는 30 바이트입니다).
주: 커널 내의 추적 드라이버는 이중 버퍼링을 사용하므로 사실상 크기가 n 바이트인 두 개의 버퍼가 할당됩니다. 이 버퍼는 메모리에 고정되므로, 페이징할 필요는 없음을 유념하십시오. 대형 버퍼는 페이징 및 다른 I/O의 성능에 영향을 미칠 수 있습니다.
-P 모니터 프로세스를 메모리에 고정합니다. -P 플래그는 filemon 명령의 텍스트 및 데이터 페이지가 모니터링 기간에 메모리에 고정되도록 합니다. 이 플래그를 사용하여 메모리 제한 환경에서 수행 중일 때 실시간 filemon 프로세스가 페이지 아웃되지 않았는지 확인할 수 있습니다.
-v 추가 정보를 보고서에 인쇄합니다. -v 플래그의 가장 중요한 영향은, 20개의 가장 활동적인 파일 및 세그먼트만이 아니라, 액세스된 모든 논리적 파일 및 모든 세그먼트가 I/O 활동 보고서에 포함된다는 것입니다.
-OLevels 지정된 파일 시스템 레벨만 모니터합니다. 유효한 레벨 식별자는 다음과 같습니다.
lf
논리적 파일 레벨
vm
가상 메모리 레벨
lv
논리적 볼륨 레벨
pv
물리적 볼륨 레벨
all
lf, vm, lv, pv에 대한 축약형
vm, lv, 및 pv 레벨은 디폴트로 포함됩니다.
-u trace 디먼을 시작하기 전에 열린 파일에 대해 보고합니다. 파일 이름에 대해 프로세스 ID(PID) 및 파일 설명자(FD)가 대체됩니다.
주: PID 및 FD는 재사용될 수 있으므로, 동일한 이름 필드로 다른 파일이 보고되는 것을 알 수 있습니다.
예제
파일 시스템의 가상 메모리, 논리적 볼륨 및 물리적 볼륨 레벨의 물리적 I/O 활동을 모니터하려면, 다음과 같이 입력하십시오.
filemon
filemon 명령은 자동으로 시스템 추적을 시작하고 명령 자체는 백그라운드에 배치합니다. 이 명령 다음에 지금 실행할 응용프로그램 및 시스템 명령을 입력하고 다음과 같이 입력하십시오.
trcstop
trcstop 명령이 발행되고 난 후, I/O 활동 보고서는 표준 출력에 표시됩니다(그러나 아마도 화면에서 스크롤 오프 될 것입니다). 가상 메모리 I/O 보고서는 가장 I/O가 빈번히 발생한 20개의 세그먼트로 제한됩니다.
모든 파일 시스템에서의 활동을 모니터한 후 상세 보고서를 fmon.out 파일에 쓰려면 다음과 같이 입력하십시오.
filemon -o fmon.out -O all
filemon 명령은 자동으로 시스템 추적을 시작하고 명령 자체는 백그라운드에 배치합니다. 이 명령 다음에 지금 실행할 응용프로그램 및 시스템 명령을 입력하고 다음과 같이 입력하십시오.
trcstop
trcstop 명령을 발행하면, I/O 활동 보고서는 fmon.out 파일에 기록됩니다. 파일 및 I/O 시스템(논리적 파일, 가상 메모리, 논리적 메모리, 물리적 메모리 레벨)이 모니터됩니다. 논리적 파일 및 가상 메모리 I/O 보고서는 가장 많은 I/O가 발생한 각각 20개의 파일 및 세그먼트로 제한됩니다.
모든 파일 시스템에서의 활동으로 모니터한 후 상세 보고서를 fmon.out 파일에 쓰려면, 다음 명령을 입력하십시오.
filemon -v -o fmon.out -O all
filemon 명령은 자동으로 시스템 추적을 시작하고 명령 자체는 백그라운드에 배치합니다. 이 명령 다음에 지금 실행할 응용프로그램 및 시스템 명령을 입력하고 다음과 같이 입력하십시오.
trcstop
이 예제는 상세 보고서가 fmon.out 파일에 기록된다는 점을 제외하고는 이전 예와 유사합니다. 주요 차이점은 filemon 명령은 추적을 시작하기 위해 취할 단계들을 표시하며, 요약 및 상세 보고서에는 단지 최상위 20개가 아닌, I/O를 초래한 모든 파일 및 세그먼트(여러 개가 있을 수 있음)가 포함된다는 것입니다.
이전에 기록된 추적 세션에 의해 포착된 I/O 활동에 관해 보고하려면, 다음과 같이 입력하십시오.
filemon -i trcfile | pg
이 예에서, filemon 명령은 입력 파일 trcfile로부터 파일 시스템 추적 이벤트를 읽습니다. 입력 파일은 이미 trcrpt -r 명령 수행 결과로서 이미 원시 추적 형식을 가져야 합니다. 추적 데이터가 이미 파일에 포착되었기 때문에, filemon 명령은 응용프로그램이 수행되도록 자신을 백그라운드에 배치하지 않습니다. 전체 파일이 읽힌 다음, 가상 메모리, 논리적 볼륨 및 물리적 볼륨 레벨에 대한 I/O 활동 보고서가 표준 출력에 표시됩니다(이 예에서는 pg에 파이프됩니다).
trcon 및 trcoff 명령을 사용하여 모니터 간격을 제어하면서 논리적 볼륨 및 물리적 볼륨에 대한 I/O 활동만 모니터 하려면, 다음과 같이 입력하십시오.
filemon -d -o fmon.out -O pv,lv
filemon 명령은 자동으로 시스템 추적을 시작하고 명령 자체는 백그라운드에 배치합니다. 이 명령 다음에, 사용자는 지금 수행할 모니터되지 않은 응용프로그램 및 시스템 명령을 입력한 후, 다음과 같이 입력할 수 있습니다.
trcon
이 명령 다음에, 사용자는 지금 수행할 모니터된 응용프로그램 및 시스템 명령을 입력한 후, 다음과 같이 입력할 수 있습니다.
trcoff
이 명령 다음에, 사용자는 지금 수행할 모니터되지 않은 응용프로그램 및 시스템 명령을 입력한 후, 다음과 같이 입력할 수 있습니다.
trcon
이 명령 다음에, 사용자는 지금 수행할 모니터된 응용프로그램 및 시스템 명령을 입력한 후, 다음과 같이 입력할 수 있습니다.
trcstop
이 예제에서, -O 플래그는 모니터링을 논리적 볼륨 및 물리적 볼륨으로 제한하는 데 사용됩니다. 논리적 볼륨 및 물리적 볼륨에 관련된 추적 이벤트만이 사용 가능합니다. 또한, -d 플래그를 사용하면, 모니터링은 trcon 명령이 발행될 때까지 처음에는 약간 지연됩니다. 특정 간격을 모니터하기 위해 trcoff 및 trcon 명령을 사용하여 시스템 추적을 간헐적으로 사용 불가능 상태로 만들고 다시 사용 가능 상태로 만들 수 있습니다.
filemon을 오프라인 모드로 수행하려면, 다음과 같이 trace 및 gennames 명령을 따로 수행하고 나서 그 출력을 filemon 명령의 입력으로 사용하십시오.
trace -a -T 768000 -L 10000000 -o trace.out -j 000,000,001,002,003,005,006,139,102,10C,106,00A,107,
101,104,10D,15B,12E,130,163,19C,154,3D3,1BA,1BE,1BC,10B,221,1C9,222,228,232,45B
모니터된 응용프로그램 및 시스템 명령을 수행하고 나서 다음과 같이 입력하십시오.
trcstop
그리고 나서 trace 파일을 다음과 같이 포맷하십시오.
trcrpt -r trace.out > trace.rpt
gennames 파일을 다음과 같이 작성하십시오.
gennames > gennames.out
그리고 나서 다음과 같이 filemon을 -i 및 -n 플래그로 수행하십시오.
filemon -i trace.rpt -n gennames.out -O all
관련 정보
svmon 명령, trcrpt 명령, trcstop 명령.
lseek 서브루틴.