私は複数の chroots を持っており、VMの軽量な代替手段としてソフトウェアバージョンのセットが異なります。
VM間でディレクトリを共有するにはどうすればよいですか?当然、シンボリックリンクはchrootをエスケープすることを許可しません。確かに、各chrootに(nfsなどを介して)ネットワーク共有をマウントすることはできますが、それはかなりのオーバーヘッドとセキュリティの考慮事項を課しますね。
Linuxの場合–バインドマウント。
mount --bind /orig /vm/one
mount --bind /orig /vm/two
mount --rbind /media /vm/one/media
/proc
と/dev
の共有は、これの最も一般的な使用法です(ただし、/ devには必ず--rbind
を使用してください)。読み取り専用の-o ro
を追加することもできます。
マウントを永続的にするには、/etc/fstab
を更新します。
/orig /vm/one none bind
/orig /vm/two none bind,ro
VMのバインドマウントの使用を開始すると、すぐに名前空間とコンテナーの奥深くにいることに気付くでしょう。 (たとえば、1つのコマンドで分離されたネットワークを持つchrootを持つことができます...)ネイティブを使用するlxcを見てください仮想システムを作成するためのLinux機能。