/usr 하위 디렉터리를 공유하는 올바른 방법은 무엇입니까?

/usr 하위 디렉터리를 공유하는 올바른 방법은 무엇입니까?

일반적으로 /usr시스템 불안정성을 유발하지 않고 일반적으로 하위 디렉터리의 어떤 부분이 공유됩니까? 내 의도는 가상 하드 디스크 공간을 절약하기 위해 동일한 구성의 VM 간에 /usr하위 디렉터리의 공유 가능한 부분을 공유하는 것입니다.

플랜 A는 다음과 같습니다.

  1. /usrOS 설치: 설치 중에 하위 디렉터리를 원격 NFS 공유로 지정하는 옵션을 찾지 못했기 때문에 /usr이제 모든 하위 디렉터리를 로컬 드라이브에 마운트해야 합니다. 가상 머신 하드 드라이브의 크기는 나중에 조정해야 합니다.
  2. 네트워크 설정 구성
  3. /etc/fstab각 원격 /usr공유 에 대한 지점을 구성합니다 .

플랜 B는 다음과 같습니다.

  1. 대상 새 VMHD를 기본 VM에 연결
  2. /기본 VM에서 새 VMHD mkdir /dev /proc등 으로 하위 디렉터리를 수동으로 복사합니다.
  3. 새 하드 드라이브에 grub 2를 설치합니다( grub-install /dev/sdb내 경우에는).
  4. 기준 머신에서 새 VMHD를 분리하고 새 VM에 연결합니다.
  5. 새 가상 머신을 시작하고 계획 A 3과 4를 실행합니다.

이 방법들이 좋은가요? 더 적절하고, 더 좋고, 더 빠른 방법이 있습니까?

나는 새로운 머신이 grub으로 부팅되는 계획 B를 수행했지만 UUID가 참조하는 기본 호스트의 HD를 계속 찾으려고 노력했습니다. 새 시스템에서 기본 호스트 UUID에 대한 모든 언급을 제거했지만 /boot/grub/grub.cfggrub은 계속해서 이를 찾으려고 노력하고 있습니다. grub.cfg하드 드라이브를 참조하는 파일 외에 시작 시 grub이 사용하는 다른 구성 파일에 대해서는 알지 못합니다 .

답변1

/usr모든 가상 머신이 동일한 프로세서 아키텍처에서 동일한 UNIX 배포판의 동일한(또는 거의 동일한) 버전을 실행하는 한 모두 공유할 수 있습니다(다른 아키텍처를 사용하는 경우 가능 /usr/share하지만 그럴 가치는 없습니다). ). 당신은 공유하고 싶을 수도 있고 그렇지 않을 수도 있습니다 /usr/local. 그렇지 않은 경우 각 가상 머신에서 별도의 마운트 지점으로 설정하거나 ../opt/local내부의 심볼릭 링크 처럼 설정하세요 /usr.

/usr각 가상 머신에 읽기 전용으로 마운트하거나 공유를 허용하는 파일 시스템을 사용해야 합니다 . 가상 머신에 읽기 전용으로 마운트된 경우 가상 머신이 최대 절전 모드인 경우에도 어떤 방식으로도 쓸 /usr수 없습니다 . /usr따라서 /usr원격 파일 시스템을 통해 설치하는 것이 각 가상 머신 내의 디스크 이미지에서 설치하는 것보다 더 편리할 수 있지만 약간 느릴 수 있습니다. 단일 가상 머신 기술을 사용하는 경우 가능한 경우 공유 폴더 기능을 사용하십시오( /usr호스트 머신 어딘가에 설치됨). 그렇지 않은 경우 NFS를 사용하면 호스트는 디렉터리를 내보냅니다(역시 호스트에는 디렉터리가 어딘가에 마운트되어 있습니다).

/usr설치를 위해 대부분의 설치 프로그램은 "전문가 모드"에서 NFS로 마운트할 수 있도록 허용해야 합니다 . 이 단계에서는 공유 폴더에 액세스하는 것이 더 어려울 수 있습니다. 이것이 불가능할 경우 /usr별도의 가상 디스크에 별도의 파일 시스템을 생성한 후 내용을 복사하고 가상 디스크를 삭제하십시오.

관련 정보