현재 실행 중인 커널에 대해 특정 모듈이 로드되었는지 확인하기 위해 ansible 플레이북을 작성하려고 합니다.
lsmod | grep my_module_$kernelVer를 실행하면
나는 다음과 같은 것을 볼 것입니다
my_module_2_6_32_754_3_5_el6_x86_64
2.6.32-754.3.5.el6.x86_64 커널을 사용하는 경우
내가 아직 해당 커널에 있고 해당 모듈이
my_module_2_6_32_431_el6_x86_64
서버의 현재 커널에 대한 모듈을 다시 빌드해야 합니다. Bash에서 이 작업을 수행하는 방법을 알고 있지만 ansible 및 Register 명령을 사용하여 특정 값을 저장하는 방법을 잘 모르겠습니다. 이제 막 ansible을 배우고 있는 중입니다.
당신이 제공할 수 있는 도움에 감사드립니다.
답변1
lsmod | grep my_module_$kernelVer를 실행하면
알았어, 이건 전화야하우징 모듈. |
쉘 구성인 를 사용하고 있으므로 쉘이어야 합니다 .
Bash에서 이 작업을 수행하는 방법을 알고 있지만 ansible 및 Register 명령을 사용하여 특정 값을 저장하는 방법을 잘 모르겠습니다. 이제 막 ansible을 배우고 있는 중입니다.
당신은 그것을 사용할 수 있습니다register
명령 결과 캡처나중에 참조하세요. http://www.mydailytutorials.com/ansible-register-variables/읽어볼 가치가 있는 것 같습니다.
그런 말을 하면서도, 당신은 매칭에 그렇게 많은 관심을 갖고 있다고 확신하시나요? 물론, 모듈이 로드되지 않는 것은 큰 문제가 될 수 있습니다. 하지만 어쨌든 커널 업그레이드를 테스트하고 있는 거죠, 그렇죠? 결국 여기서 정의한 방법은로드된 모듈 제거새로운 것을 만드세요. 나는 과거에 이름에 커널 버전조차 없는 타사 모듈을 로드한 적이 있는데, 솔직히 말해서 나는 그것을 선호합니다. 저는 커널 모듈 전문가는 아니지만 커널 버전 관리와 모듈 버전을 별도로 유지하는 것은 고려해 볼 가치가 있는 일입니다.