MongoDB 문서 지침 을 따라 시스템에 대해 LTH를 올바르게 구성하려고합니다. MongoDB를 실행합니다.

지침 중 하나는 부팅시 실행되는 스크립트를 만드는 것으로 구성됩니다. 안타깝게도 제안 된 스크립트 나 유사한 코드 systemd 서비스 가 작동합니다.

문제를 디버깅 할 때 다른 문제가 발생했습니다. 실행할 때 :

root@demo:/# echo never > /sys/kernel/mm/transparent_hugepage/enabled 

명령 성공적으로 실행 된 것처럼 보이지만 파일은 변경되지 않은 상태로 남아 있으므로 다음을 실행하면 :

root@demo:/# cat /sys/kernel/mm/transparent_hugepage/enabled 

원래 콘텐츠를 반환합니다.

always madvise [never] 

vim로 파일을 수정하려고했습니다. 파일을 저장하려고 할 때 Fsync 실패 라는 메시지가 표시됩니다. . 이 오류가 문서화되었지만 제 경우에는 /에 충분한 디스크 공간이 있습니다 (20 % 사용 , 7GB 사용 가능)

sudo 모드에서 명령을 실행했는데 파일 권한이 올바른 것 같습니다.

-rw-r--r-- 1 root root 4096 ... 

/sys 디렉토리는 다음과 같이 읽기 전용 모드로 마운트 되지 않습니다.

root@demo:/# grep sysfs /proc/mounts sysfs /sys sysfs rw,nosuid,nodev,noexec,relatime 0 0 

여기서 무슨 일이 일어나고 있습니까?

답변

iv id = “d9a84338ff 일반적으로 /sys에 마운트되는 파일 시스템 인 “>

는 Linux 커널과 인터페이스하기위한 특수 가상 파일 시스템입니다.

그 안에있는 파일은 다음과 같습니다.” t 실제 파일은 커널의 데이터 구조를 나타내며 단순한 액세스 방법 만 지원합니다. 이러한 파일에서 읽는 것은 커널에 정보를 요청합니다. 이러한 파일에 쓰면 커널이 설정을 변경하거나 작업을 수행하도록 지시합니다.

이것이 vim가 실패하는 이유입니다. 실제 파일에 최적화되어 있으며 “sysfs에서는 지원되지 않습니다.

첫 번째 명령

root@demo:/# echo never > /sys/kernel/mm/transparent_hugepage/enabled 

이미 성공했습니다!

/sys/kernel/mm/transparent_hugepage/enabled를 포함한 많은 sysfs “파일”은 읽을 때 현재 설정을 인쇄 할뿐만 아니라 가능한 모든 것을 인쇄합니다. 모드를 사용하고 대괄호를 사용하여 대신 활성화 된 여러 모드를 설명합니다.

귀하의 경우 never가 대괄호 안에 있으므로

이 (가) 이미 활성화 됨 :

always madvise [never] 

sysfs 작동합니다. 자세한 내용은 Wikipedia 또는 Linux 커널 문서 에서 읽을 수 있습니다. .

답글 남기기

이메일 주소를 발행하지 않을 것입니다. 필수 항목은 *(으)로 표시합니다