Junos OS Evolved에 대한 쓰기 가능한 디렉터리
다양한 버전의 소프트웨어는 동일한 디스크와 파티션을 공유합니다. 런타임 환경에서는 버전의 private 상태를 완전히 분리하는 동시에 로그 파일 및 코어 파일과 같은 공통 디렉터리를 공유할 수 있습니다. 최종 런타임 파일 시스템 토폴로지는 기본적으로 읽기 전용입니다. 시스템에는 두 종류의 쓰기 가능한 디렉토리가 있습니다.
-
공유 - 디바이스에 설치된 모든 소프트웨어 버전이 이 디렉터리를 사용합니다. 이러한 디렉토리에는 로그 파일 및 코어 파일과 같은 파일이 들어 있습니다. 예를 들어 /var 는 쓰기 가능한 공유 디렉터리입니다.
-
Private(비공개) - 개별 소프트웨어 버전이 이러한 디렉터리를 소유합니다. 각 버전은 패키징 콘텐츠를 기반으로 이러한 디렉터리 및 파일의 기본 집합을 가져오고 /curroot 디렉터리 접두사 아래를 피킹하여 이러한 파일을 현재 파일 버전과 동기화할 수 있습니다. 시스템은 /data 파티션에 이러한 디렉토리를 작성하고 로
'_'대체된(슬래시는 밑줄로 대체된) 디렉토리'/'의 이름을 사용합니다. 이 디렉토리는 부팅하는 동안 바인드 마운트됩니다. 디렉터리에 포함된 파일은 해당 소프트웨어 버전에 따라 다릅니다. 개인 디렉터리 목록은 노드의 기능(예: 라우팅 엔진 또는 FPC) 및 제품(예: PTX10003 또는 PTX10008)에 따라 다릅니다.
시스템에서 쓰기 가능한 디렉터리를 처리하는 방법
쓰기 가능한 공유 디렉터리는 내용이 소프트웨어 버전 간에 공통적이기 때문에 소프트웨어 업그레이드 또는 롤백 중에 특별한 처리가 필요하지 않습니다. 듀얼 라우팅 엔진 시스템의 소프트웨어 동기화 중에는 현재 소프트웨어 버전의 /var/home 에 있는 사용자 홈 디렉터리만 기본 라우팅 엔진의 백업 라우팅 엔진과 동기화됩니다. 쓰기 가능한 공유 디렉터리의 다른 내용은 동기화되지 않습니다.
개인 쓰기 가능 디렉터리의 경우 이러한 디렉터리는 버전에 따라 다르기 때문에 소프트웨어 업그레이드, 롤백 및 동기화 중에 디렉터리를 특별하게 처리해야 합니다.
- 소프트웨어 업그레이드 - 새 버전으로 업그레이드하는 설치 후 단계에서 시스템은 새 버전에 대한 chroot 환경을 생성하고 이전 버전은 /curroot로 마운트됩니다. 새 버전의 설치 후 스크립트는 이전 버전의 개인 디렉토리 내용을 새 버전으로 병합합니다. 따라서 이전 버전의 개인 쓰기 가능 디렉토리의 일부인 모든 사용자 스크립트 또는 구성은 새 버전으로 전달됩니다.
- 명령에 옵션을
request system software rollback지정할with-old-snapshot-config때 소프트웨어 롤백—시스템은 실행 중인 버전의 개인 writable 디렉터리의 내용을 롤백 버전의 개인 writable 디렉터리로 복사하지 않습니다. 재부팅 후 시스템은 소프트웨어 업그레이드가 이전(롤백) 버전에서 현재 실행 중인 버전으로 수행될 때 단계에 있던 내용을 표시합니다. - 옵션 없이 소프트웨어 롤백—
with-old-snapshot-config실행 중인 버전에서 이전 버전으로 롤백하는 동안 시스템은 소프트웨어 업그레이드 중에 발생하는 것과 유사하게 실행 중인 버전의 개인 쓰기 가능 디렉터리의 내용을 이전 버전의 개인 쓰기 가능 디렉터리와 병합합니다. - 소프트웨어 동기화(듀얼 라우팅 엔진 시스템만 해당) - 시스템은 명령에서
request system software sync지정한 옵션에 따라 기본 라우팅 엔진에서 소프트웨어 버전의 백업 라우팅 엔진으로 개인 쓰기 가능 디렉터리의 내용을 동기화합니다.current,rollback또는all-versions. 계층 수준에서[edit system]문을 구성auto-sw-sync하면 시스템은 모든 소프트웨어 버전에 대해 기본 라우팅 엔진의 백업 라우팅 엔진으로 프라이빗 쓰기 가능 디렉터리의 모든 내용을 동기화합니다.