/sys/*와 유사한 동적 또는 가상 파일 콘텐츠

/sys/*와 유사한 동적 또는 가상 파일 콘텐츠

/etc/hosts와 같은 파일을 원했지만 파일을 읽을 때마다 파일 시스템에서 읽는 것이 아니라 그 내용이 애플리케이션의 출력이었다고 상상해 보십시오. 예를 들어 아파치 사이트에서 구성을 파악하는 스크립트는 다음과 같습니다. 활성화됨

/sys나는 이것이 가능해야 한다고 생각합니다. 예를 들어 커널 코드는 및 에서 거의 모든 것을 생성하는데 /proc, 나는 이것이 가상 파일 시스템으로 마운트된다고 믿습니다. 파일을 읽을 때마다 표시되어야 하는 출력으로 스크립트나 바이너리를 위임할 수 있는 일종의 범용 사용자 공간 가상 파일 시스템 오버레이가 이미 있습니까? 아니면 이 사용 사례가 자주 나타나지 않습니까?

(오용으로 인해 시스템 속도가 상당히 느려질 수 있다고 생각하며 더 나은 방법이 있을 수 있습니다. 위의 경우 10분마다 실행되는 크론 작업이 더 바람직할 것입니다. 하지만 이전에 접하고 시도한 적이 있는지 궁금합니다. )

답변1

네, 이라고 합니다퓨즈. 커널을 사용하면 모든 기능을 갖춘 파일 시스템을 사용자 공간에서 구현할 수 있으며 sshfs, curftpfs, ntfs-3g, archivefs, wikipediafs 등 일부 파일 시스템을 이미 사용했을 수도 있습니다.

FUSE 인터페이스는 설명하는 것보다 약간 더 낮은 수준이지만(파일 시스템은 여전히 ​​열기, 읽기, 쓰기 등을 개별적으로 처리해야 함) Python에서 다양한 언어에 대한 바인딩을 가지고 있습니다.세게 때리다. 대부분은 외부 프로그램의 출력을 데이터로 제공하도록 조정할 수 있는 "hello world" 예제를 가지고 있습니다.

FUSE는 현재 Linux, 다양한 BSD, macOS, Solaris...에서 작동합니다.

관련 정보