暗号化されたLVMを使用したハイブリッドSSD + HDDの設定

暗号化されたLVMを使用したハイブリッドSSD + HDDの設定

誰かが簡単な答えをする前に、私のSSDはいいえすべてを収めるのに十分な大きさです。鉱山は/homeおおよそのデータ、文書、仮想マシンでいっぱいです。 720GB。大きなSSDを購入したくありません。

今日のSSDは140GB SATAディスクにすぎません/dev/sda。私のハードドライブ/dev/sdbは(現在)別の話です。容量は2TBです。 HDDには現在Linuxインストールが含まれており、いくつかの理由がないため、古いDebianインストールに置き換える必要があります。このシステムはわずかな獣(16コア、32GB RAM)で、暗号化されたLVMを使用します。

(理由はパフォーマンスとは関係ありません。現在、ディストリビューション(基本OS)で行われた決定のため、アップグレードに行き詰まった路地にぶつかり、ついに時間が見つかりました。この投稿はInにありません。 Elementary OS 6が良い選択かどうかを議論するために一度インストールして永遠にアップグレードする方法を信じているので、Archや他のディストリビューションに長い時間を投資する時間が不足しています(15年以上)。それで、情報を探す予定です。

だからまた質問に戻り、とにかく新しくインストールしているのでSSDアクセラレーションを活用するのに良い時期のようです。

もちろん、書き込みサイクルの制限のために近年の改善にもかかわらず、摩耗を最小限に抑えながら、実際に最大の利点を提供するパーティションのみをSSDに配置したいと思います。私の直感では、パーティションは多くの読み取り操作を実行しますが、書き込み操作は実行しないことです。初期選択の良いセットは/boot/とです/usr/local/opt

18年前にSlackwareシステムをホストして以来、私はいつも別々のパーティションにシステムを/tmp保管してきました。/var/log良い習慣は死ににくいです。

次は良い計画ですか?

/boot 1GB SSD
/boot/efi 650 M SSD
/ 50 GB SSD
/usr/local 50 GB SSD
/opt 38 GB SSD
swap 64 GB HD
/var/log 20 GB HD
/tmp 20 GB HD
/home 1.89 TB HD

変更を提案してください。関連性のあることの1つは、基本的なMicrosoft Wordのインストールが必要なまれなケースのために仮想マシンでWindows 10を実行することです。 dockerまたはkvmイメージを別々の別々のパーティションに配置することは価値がありますか?人々が経験している少しの遅れを克服するために、それらの1つをSSDに入れることはできますか?画像がSSDにあってもDockerロギングをHDに保つ方法は?

答え1

これは私の経験を共有するのに最適な場所です。

SSD + HDDに非常にカスタマイズされたファイルシステムを備えたHP ProBookにGentooをインストールしました。これが私が今この記事を書いているシステムです。

SSD(sda)用のGPTパーティションは3つ、HDD(sdb)用のGPTパーティションは2つです。

SSD(sda1)の最初のパーティション、127MESP、 grub 構成、カーネル、および initramfs をホストするブートパーティションでもあります。 ESPをマウントする/boot/efiはありません。 /bootはすでにESPで、/boot/EFIや/boot/grubなどが含まれています。これは問題ではありません。

HDDの最初のパーティション(sdb1)である127Mは使用されません。その目的は「ESPのための空きスペース」になることです。

SSDの2番目のパーティション(sda2)は20Gのキャッシュデバイスであり、HDDの2番目のパーティション(sdb2)はディスク全体(500G)を埋めるバックエンドデバイスです。これら二つはキャッシュハードドライブ- bcache0。

このbcache0は暗号化されたボリューム、これはLVMのPVで、pv1と呼ばれます。

SSDの3番目のパーティション(sda3)、つまり残りのスペースもpv0というLVM PVを含む暗号化されたボリュームです。

pv0とpv1は以下を構成します。左心室容積VG。すべてのボリュームが暗号化されているので安全な場所だと思います。 VGは交換pv0に配置され、休止状態に使用されます(RAMとほぼ同じサイズ)。読み取り専用ルートまた、pv0のファイルシステムはsquashfs(現在約7G)です。r/w ext4 ルートオーバーライドまた、pv0にもスペースが残っていません。これ/家pv1に位置していますが、約300Gに及ぶので、少しスペースが残っています。

これカスタムinitramfsスクリプトキャッシュを組み立て、暗号化のロックを解除し、VGを組み立てます。オーバーレイをマウントし、squashfsをマウントしてから、オーバーレイファイルシステムをマウントします。ここで、下位階層は squashfs、上位階層はオーバーレイのディレクトリです。次に、switch_rootの後にすべてがうまく見えるようにマウントを並べ替え、ルートを切り替えます。

この設定を正常に使用しました。1年半。アップグレードはとても簡単でした。いつものようにシステムをアップグレードし、すべてをemerge -av... @worldオーバーレイに入れてから、アップグレードされたルートから新しいsquashfsを作成し、古いsquashfsとオーバーレイをハードドライブ(pv1)にpvmoveして作成しました。新しいボリュームはSSD(pv0)にあります。 initスクリプトは更新されたボリュームを識別し、ルートを組み立てる前にすべての名前を変更するため、再起動後に新しいボリュームセットがルートを占有します。しかし、以前のバージョンはまだ残っています。アップグレードを復元するには、上書きを消去して再起動します。また、以前のアップグレードポイントに戻るために、外部HDDに古いsquashfs(およびアーカイブされた/ boot)の追跡を維持します。

設定が非常に複雑に見えたため、問題を修正する必要がある場合に備えて、スクリプトを使用してLive CD環境で組み立てることもできました。


あなたの計画について。

ESP+/bootに1G + 650Mを無駄にするには貪欲すぎます。私はこれに1億2,700万ドルを投資しましたが、これはあなたが計画したものより10倍少ない金額です。 23Mだけを使用しているので、これはまだあまりにも多くです!

私のルートFSには、いくつかのゲーム、STM32CubeIDEとそのダウンロード(約3〜4G)、パッケージマネージャデータベース(Portage)、その他の大規模なblobを含む約20Gの生データがあります。約7Gに圧縮されました。アクセス速度が速く、squashfsのおかげであらゆる悪意のある行為者に侵入するのは非常に困難です。

/var/usr/local別々のパーティションを置いたり、別のパーティションに入れたりすることには利点はありません/opt。 20年以上のLinux経験では、これが何らかの方法で役立つ状況を見たことはありません。実は正反対です。私はそれらがすべて一貫して互いに関連付けられていることを望んでいるので、単一のファイルシステムに配置する方が簡単になると思います。私はそれを「システム」または「ルート」と呼び、全体的に管理します(バックアップ、循環更新)。だから私は「単独/usr」のような問題を経験したことがないし、そのような人々を嘲笑します。

別々のパーティションを持つことをお勧めします/home。バックアップ戦略は非常に異なり、ファイルシステムの目的もまったく異なります。ただし、ここでは/home特にシステムにログインしたり、アプリケーション(プロファイルと構成)を起動したりするときに、多くの小さなファイルを読み書きする必要があることに注意してください。認識された機械反応性のために、/homeSSDを使用することはSSDにシステムをインストールするよりも重要です!これが/homeの経験を向上させるためにキャッシュを使用する理由です。

答え2

私があなたに与えるアドバイスはこれです

  • 過度の読み取り/書き込みやパーティションの作成場所や方法について心配しないでください。 LinuxはディスクキャッシュにRAMを使用し、1GBの代わりに32GBのRAMがあります。
  • systemctl enable tmp.mount。これは/tmpディスクの代わりにメモリを使用する正しい方法です。
  • 私はRHEL / CentOSを使用していますが、これはXFSファイルシステムのデフォルトです。私のパーティションスキームは次のとおりです

..

 Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1        95M   10M   85M  11% /boot/efi
/dev/sda2       950M  237M  714M  25% /boot
/dev/sda3       3.5T  176G  3.4T   5% /
/dev/sdb1        18T  5.0T   13T  29% /data

XFS または EXT4 をファイルシステムとして使用することをお勧めします。あなたのサイズは明らかに私とは異なります。標準のデフォルトルールは/home/ユーザーアカウントに適用されます。これは/私と同じルートパーティションの下にあることができます(またはすべてのディスクに)、完全に別々のディスクパーティションを作成できます。/home またはユーザーアカウントを指定した場所に配置できます。私の場合/etc/default/useraddHOME=/data/users私のアカウント(管理者)だけが/homeの下にあり、すべてのユーザーアカウントが私の/ dataボリュームの下にあることが重要でした。これは多くのディスクのハードウェア襲撃でしたが、あなたの場合は別々のディスクかもしれません。

難しい方法を学ぶ前に、今すぐデータの管理と構成について学んでください。

システムがデータが重要なマルチユーザー作業環境タイプである場合は、システムに合計3つ以上のディスクが必要です。オペレーティングシステム用のディスクが死んだ場合は、オペレーティングシステムを再インストールしますが、機密データは保存されません。 2番目のディスクは次のようにマウントされ、/data3番目のディスクは/bkup何らかの方法で取り付けられた場所にマウントされます(参照:スナップ写真/data/bkup)は、データディスクの損傷を防ぐために、からのすべてのデータをできるだけ頻繁にコピーします。すべてのディスク上のすべてのパーティションから任意のディレクトリをマウントできますが、Linuxは関係ありません。必要に応じて設定してください。私はできるだけ簡単に保つことを好みます。

画像がSSDにあってもDockerロギングをHDに保つ方法

どこにでも書き込むことができるようにdocker(または他の)ロギングを設定しますが、そうではありません。持つ解雇されました/var/log。したがって、多くのログをアーカイブする必要がある場合は、どのディスクに最も多くのスペースがあるかを調べるのが最も実用的であり、ルートパーティションと同じディスクにある必要はありません。概念をよりよく説明するために、上記のパーティションスキームを例に挙げた。これら4つのパーティションスキームは、それぞれ異なるパーティションに存在できます。ディスク必要に応じて、/usr他のディスク、パーティション、またはディレクトリからインストール/home/opt、LUKSを使用してLinuxで意味のあるものをすべて暗号化すること(サーバーが独自の暗号化ディスクを使用していない場合)がサポートされています。あなたの場合は、ドライブベイとより大きなサイズの追加のディスク/ SSD購入機能が制限されると考えられます。お役に立てば幸いです。

関連情報