CIFS에는 다음에 의해 생성된 Softdep 종속성이 있습니다.커모드내용은 /lib/modules/*/modules.softdeps
다음과 같습니다 .
softdep cifs gcm
softdep cifs ccm
softdep cifs aead2
softdep cifs sha512
softdep cifs sha256
softdep cifs cmac
softdep cifs aes
softdep cifs nls
softdep cifs md5
softdep cifs hmac
softdep cifs ecb
또는 (커널 버전 6.4 이상) fs/cifs/cifsfs.c
의 소스 코드를 보면 지정되지 않습니다 .fs/smb/client/cifsfs.c
pre:
post:
MODULE_SOFTDEP("ecb");
MODULE_SOFTDEP("hmac");
MODULE_SOFTDEP("md5");
MODULE_SOFTDEP("nls");
MODULE_SOFTDEP("aes");
MODULE_SOFTDEP("cmac");
MODULE_SOFTDEP("sha256");
MODULE_SOFTDEP("sha512");
MODULE_SOFTDEP("aead2");
MODULE_SOFTDEP("ccm");
MODULE_SOFTDEP("gcm");
제 질문은 modprobe나 구문 분석할 수 있는 도구가 이것을 어떻게 해석합니까 modules.softdep
? 입니다. 가지고 있다는 뜻으로 해석해야 할까요 pre:
?
fs/smb/server/server.c
(6.4) 에서 종속성을 선언할 pre:
때 client/cifs/cifsfs.c
암시되는 가능한 의도 는 다음과 같습니다 pre:
.
MODULE_SOFTDEP("pre: ecb");
MODULE_SOFTDEP("pre: hmac");
MODULE_SOFTDEP("pre: md5");
MODULE_SOFTDEP("pre: nls");
MODULE_SOFTDEP("pre: aes");
MODULE_SOFTDEP("pre: cmac");
MODULE_SOFTDEP("pre: sha256");
MODULE_SOFTDEP("pre: sha512");
MODULE_SOFTDEP("pre: aead2");
MODULE_SOFTDEP("pre: ccm");
MODULE_SOFTDEP("pre: gcm");
MODULE_SOFTDEP("pre: crc32");
하지만 나는 명확한 대답을 원한다. 이것libkmod-config.c의 코드전혀 분명하지 않습니다. 그냥 무시하는 것 같지만 의미가 없습니다.
답변1
이 글에 소개된 내용입니다범죄아마도 커널 5.5 정도일 것입니다.
cifs: MODULE_SOFTDEP에 "pre:"를 사용하지 마세요.
다음과 같은 이유로 modprobe가 실패 할 수 있습니다
. fatal: 모듈이 내장되어 있습니다.RHBZ:1767094
그러나 이공개되지 않은 버그.
다음 파일을 생성하여 테스트합니다.
/etc/modprobe.d/local-cifs.conf
:
softdep cifs pre: lzo xt_LED
내 커널의 위치는 lzo
내장되어 있으며(그림 참조 /lib/modules/$(uname -r)/modules.builtin
) xt_LED
실패하지 않는 모듈입니다. modprobe cifs
그런 다음 xt_LED
+ 를 로드합니다 cifs
. 그래서 이것이 수정된 버그이고 또 다른 버그를 남기는지( 아무런 줄 pre:
도 효과가 없거나 영향을 미치지 않음) 아니면 알아야 할 다른 것이 있는지(원인을 알 수 없을 때 약간 어렵습니다) 궁금합니다 .post:
softdep