rootfs 읽기 전용 vs overlayfs

rootfs 읽기 전용 vs overlayfs

보안 문제로 인해 읽기 전용 rootfs가 필요합니다(플래시의 FS는 변경할 수 없음). 다른 쓰기 가능한 파티션은 읽기 전용 rootfs와 함께 사용할 수 있습니다(예: 로깅용).

단순화를 위해 대신 rootfs를 읽기 전용으로 사용하는 것이 좋습니다 overlayfs. 그러나 일부 프로세스가 rootfs에 쓰기를 시도한 후 실패할 수 있다는 점이 걱정됩니다.

우리 시스템은 프로세스가 한두 개밖에 없을 정도로 매우 작습니다. (그러나 또한 포함됩니다 selinux) auditd.

Linux 시스템에서 rootfs를 읽기 전용 파일로 항상 사용할 수 있습니까? 아니면 이 경우 overlayfs가 필요합니까?

답변1

읽기 전용 루트 파일 시스템을 갖는 것은 확실히 가능합니다. 이는 서버 유형 또는 워크스테이션 유형 설치에서는 불편하고 일반적이지 않지만 임베디드 시스템에서는 일반적입니다. 읽기 전용 루트 파일 시스템에는 주로 다음과 같은 몇 가지 제한 사항이 있습니다.

  • 아무것도 업그레이드하거나 소프트웨어를 추가할 수 없습니다( /usr/local별도 파티션과 같은 다른 파일 시스템 제외). 플래시 메모리 전체의 파일 시스템 이미지를 교체하여 업그레이드를 하면 문제가 되지 않습니다.
  • 구성에서는 어떤 것도 재구성할 수 없습니다 /etc. 이는 모든 구성을 다르게 수행해야 함을 의미합니다. 일반적인 솔루션은 다음과 같습니다.

    • 다른 디렉터리에 있는 파일을 통해(그러면 응용 프로그램을 다르게 구성해야 합니다)
    • 다른 디렉토리에 대한 심볼릭 링크;
    • NVRAM에서 구성 변수를 읽는 스크립트 등을 통해 동적으로.

    영향을 받는 일반적인 데이터에는 네트워크 구성, 시간대, 사용자 인증 정보 등이 포함됩니다.

  • 동일한 파일 시스템 이미지를 여러 컴퓨터에 배포하는 경우 파일 시스템 이미지 외부에 모든 컴퓨터 관련 데이터를 정렬해야 합니다. 여기에는 호스트 이름, SSH 서버 키 등이 포함됩니다.
  • /var일반적으로 로그 및 임의 시드 파일과 같은 일부 영구 쓰기 가능 파일이 필요합니다 /var/log(필수 하드웨어 RNG가 없는 경우).

관련 정보