어쨌든, Linux(어떤 배포판이든 버전이든 상관없음)에는 읽기/쓰기 후크가 있는 동적 파일 시스템이 있습니까? 예를 들어, /dynamic에 동적 파일 시스템을 마운트하고 존재하지 않는 위치에 읽기/쓰기를 시도할 때마다 bash 스크립트나 프로그램을 실행하고 싶습니다. bash 스크립트를 만든 경우와 마찬가지로 tail /dynamic/folder1/file1.log
읽기 작업 전에 실행되며 경로를 매개변수로 사용할 수 있습니다. 비슷한 프로젝트가 있나요?
답변1
당신이 찾고있는퓨즈.
FUSE를 사용하면 완전한 기능을 갖춘 파일 시스템을 사용자 공간 프로그램에서 구현할 수 있습니다. 기능은 다음과 같습니다:
- 간단한 라이브러리 API
- 설치가 용이함(패칭이나 커널 재컴파일 필요 없음)
- 안전한 구현
- 사용자 공간-커널 인터페이스는 매우 효율적입니다.
- 권한이 없는 사용자도 사용 가능
- Linux 커널 2.4.X, 2.6.X 및 3.X에서 실행됩니다.
- 시간이 지나도 매우 안정적인 것으로 입증되었습니다.
공정하게 말하면 FUSE 모듈을 본 적이 없습니다.날것의프로그램/스크립트이므로 여전히 해야 할 일이 있습니다.일부코딩.
답변2
당신은 또한 살펴보고 싶을 수도 있습니다inotify. 파일 시스템 변경 사항을 수신하는 API를 제공합니다. 예를 들어, 특정 디렉터리에 새 파일이 생성될 때마다 알림을 받도록 사용할 수 있습니다 IN_CREATE
(거의 모든 프로그래밍 또는 스크립팅 언어에는 inotify API가 있으므로 가장 익숙한 API를 자유롭게 선택하세요).
그러나 존재하지 않는 파일에 대한 읽기 시도에 대한 알림을 받는 것은 불가능하다고 생각하지만(다른 프로그램이 읽기 전에 파일을 생성하는 옵션 사용) 사용 사례에 따라 작업할 수 있습니다. 이 주위에. inotify가 귀하에게 적합한 선택이 아닌 경우 Ignacio의 제안에 따라 FUSE를 사용하겠습니다. 그러나 이는 원하는 것을 달성하기 위해 많은 추가 작업을 추가할 수 있습니다.