web-dev-qa-db-ja.com

/ optおよび/ usr / localは同じパーティションにありますが、ルートの下にはありません

Ubuntuはすぐに新しいラップトップにインストールする予定です。 /optおよび/usr/localディレクトリをルートパーティションとホームパーティションとは別にしますが、それらのために2つのパーティションは必要ありません。1つだけです。

できればソフトリンクを使用せずに、これら2つのディレクトリを単一の個別のパーティションに配置することは可能ですか?ソフトリンクをたどるにはパス解決が必要なので、よくアクセスされるトップレベルのディレクトリをソフトリンクすることは良い考えだとは思いません。

4

シンボリックリンクが問題だとは言いません。シンボリックリンクのルックアップがパフォーマンスに大きな影響を与える場合、それはすでに非常に悪いです:)また、実際に「一般的にアクセスされる」ディレクトリである場合、毎回ディスクから読み取られないようにキャッシュされることを期待するかもしれません。しかし、/ optおよび/ usr/localは標準のUbuntuインストールではあまり使用されておらず、/ usr/localはソースからコンパイルする独自のものに使用されていると思います(これは正しい定義ではありませんが、通常これが当てはまります)、/ optは「オプションの」ソフトウェアに使用されます。しかし、Ubuntuには通常、それほど多くのソフトウェアはインストールされていません。たとえば、いくつかのGoogleソフトウェアは、例を見つけたい場合に使用します。とにかく、これらのディレクトリが頻繁に使用されている場合でも、シンボリックリンクが多くの相違点を意味するとは言いません。

別の選択肢もあります。/optと/ usr/localのファイルシステムが分離されているとします(例:/ dev/sda6)。/optとしてマウントします。/opt内にディレクトリを作成します。たとえばusrlocalとします。次に、VFSバインドを使用して、「ディレクトリをマウント」することができます(技術的には正しい概念ではありませんが、気にしません...)。

mount --bind /opt/usrlocal /usr/local

もちろん、これを/etc/fstabも同様です。したがって、/etc/fstab

/opt/usrlocal /usr/local none bind 0 0

2
LGB

あるディレクトリを別のディレクトリにマウントする「マウントバインディング」があります。例えば。 2番目のパーティションが/mnt/otherにマウントされ、その中にhomeoptlocalのディレクトリを作成した場合、次のようにマウントを使用できます。

mount -obind /mnt/other/home /home

対応するfstabエントリは

/mnt/other/home /home none bind 0 0
1
geirha