26.7. SystemTap 간 복원 초기화
SystemTap 간 복원을 초기화하여 한 시스템에서 SystemTap 스크립트에서 SystemTap 계측 모듈을 빌드하고 SystemTap이 완전히 배포되지 않은 다른 시스템에서 이러한 모듈을 사용합니다.
사전 요구 사항
- SystemTap은 Systemtap 설치에 설명된 대로 호스트 시스템에 설치됩니다.
systemtap-runtime패키지는 각 대상 시스템에 설치됩니다.dnf install systemtap-runtime
# dnf install systemtap-runtimeCopy to Clipboard Copied! Toggle word wrap Toggle overflow - 호스트와 대상 시스템은 모두 동일한 아키텍처입니다.
호스트와 대상 시스템 모두 Red Hat Enterprise Linux의 동일한 주요 버전(예: Red Hat Enterprise Linux 10)을 실행하고 있습니다.
중요커널 패키징 버그로 인해 여러
kernel-debuginfo및kernel-devel패키지가 하나의 시스템에 설치되지 않을 수 있습니다. 이러한 경우 호스트 및 대상 시스템의 마이너 버전이 일치해야 합니다. 버그가 발생하면 Red Hat JIRA 에서 버그를 보고합니다.
프로세스
각 대상 시스템에서 실행 중인 커널을 확인합니다.
uname -r
$ uname -rCopy to Clipboard Copied! Toggle word wrap Toggle overflow - 각 대상 시스템에 대해 이 단계를 반복합니다.
- 호스트 시스템에서 Systemtap 설치에 설명된 방법으로 각 대상 시스템의 대상 커널 및 관련 패키지를 설치합니다.
호스트 시스템에서 조정 모듈을 빌드하고, 이 모듈을 에 복사하여 대상 시스템에서 이 모듈을 실행합니다.
호스트 시스템에서 대상 시스템에 SSH 연결을 수행할 수 있는 경우 원격 구현을 사용합니다.
stap --remote <target_system> script
# stap --remote <target_system> scriptCopy to Clipboard Copied! Toggle word wrap Toggle overflow 이 작업이 성공하려면 호스트 시스템에서 대상 시스템에 대한 SSH 연결을 수행할 수 있는지 확인해야 합니다.
수동:
호스트 시스템에서 조정 모듈을 빌드합니다.
stap -r <kernel_version> script -m <module_name> -p 4
# stap -r <kernel_version> script -m <module_name> -p 4Copy to Clipboard Copied! Toggle word wrap Toggle overflow 여기서 <
kernel_version>은 1단계에서 결정된 대상 커널의 버전입니다.script는 조정 모듈로 변환할 스크립트이며 <module_name>은 조정 모듈의 원하는 이름입니다.-p4옵션은 SystemTap에 컴파일된 모듈을 로드하지 않고 실행하도록 지시합니다.계측 모듈이 컴파일되면 대상 시스템에 복사하고 다음 명령을 사용하여 로드합니다.
staprun <module_name>.ko
# staprun <module_name>.koCopy to Clipboard Copied! Toggle word wrap Toggle overflow