SSHDは4TBおよび8GB SSDキャッシュでスタックしているようです( one モデルは1TB/32GBで利用可能です)一方で、より大きなSSDが広く利用可能であり、LinuxでHDDとSSDをペアリングするソリューションがいくつかあります。デスクトップをセットアップしたら、使いやすいソリューションを探しています。理想的には、1つまたは2つのランチャーアイコンをクリックし、暗号化されたストレージのパスワードを入力し、特定のコマンドを覚える必要なくNautilusにドライブをマウントする必要があります。
これまでに読んだ関連記事:
情報:
警告:
概要:
さらなる洞察を提供するために、実際のハードウェアで試す前に問題の記事を読んだ後、VMに設定したものを以下に示します。 luks-
という名前のデバイスは、GUIを使用して暗号化されたデバイスのロックを解除すると自動的に作成され、LVMはデバイスが利用可能になったことを検出し、通常どおりnautilusでファイルシステムをマウントします。
lwbt@vxenial:~$ lsblk
…
sdb 8:16 0 8G 0 disk
└─luks-6bc875f1-de30-4698-ba74-eea2c5d5bb87 252:0 0 8G 0 crypt
└─vg0-datalv_corig 252:5 0 7,9G 0 lvm
└─vg0-datalv 252:1 0 7,9G 0 lvm
sdc 8:32 0 8G 0 disk
└─luks-e20dd038-9886-4895-b786-855ba4c31c7e 252:2 0 8G 0 crypt
├─vg0-cache_cdata 252:3 0 8G 0 lvm
│ └─vg0-datalv 252:1 0 7,9G 0 lvm
└─vg0-cache_cmeta 252:4 0 12M 0 lvm
└─vg0-datalv 252:1 0 7,9G 0 lvm
lwbt@vxenial:~$ ll /dev/mapper/
total 0
drwxr-xr-x 2 root root 180 Sep 6 02:54 ./
drwxr-xr-x 20 root root 4420 Sep 6 02:54 ../
crw------- 1 root root 10, 236 Sep 6 00:37 control
lrwxrwxrwx 1 root root 7 Sep 6 02:54 luks-6bc875f1-de30-4698-ba74-eea2c5d5bb87 -> ../dm-0
lrwxrwxrwx 1 root root 7 Sep 6 02:54 luks-e20dd038-9886-4895-b786-855ba4c31c7e -> ../dm-2
lrwxrwxrwx 1 root root 7 Sep 6 02:54 vg0-cache_cdata -> ../dm-3
lrwxrwxrwx 1 root root 7 Sep 6 02:54 vg0-cache_cmeta -> ../dm-4
lrwxrwxrwx 1 root root 7 Sep 6 02:54 vg0-datalv -> ../dm-1
lrwxrwxrwx 1 root root 7 Sep 6 02:54 vg0-datalv_corig -> ../dm-5
ブロックデバイス(SSD/HDD)をLUKSで直接暗号化する代わりにパーティション化すると、lsblkの出力に追加のレイヤーが含まれる場合があります。もちろん、LUKS暗号化に興味がない場合は、次の手順でこれらの手順をスキップしても問題ありません。
必要なパッケージをインストールします。
Sudo apt install lvm2 thin-provisioning-tools cryptsetup
次のセクションのコマンドドライブ上の既存のデータをすべて破棄します。
暗号化個々のデバイス:
Sudo cryptsetup luksFormat ${device_name}
Sudo cryptsetup luksOpen ${device_name} ${mapper_name_hdd_or_ssd}
注:gnome-disksには、暗号化されたデバイスを暗号化してマウントするオプションがありますが、指示に従って続行するには削除する必要があるEXT4ファイルシステムも作成されます。
次に、デバイスを物理ボリュームとしてLVMに追加し、ボリュームグループ(名前はvg0
)と論理ボリューム(名前はdatalv
)をHDDに作成しますすべてのデータを保持するために後でフォーマットされます:
pvcreate /dev/mapper/${mapper_name_hdd}
vgcreate vg0 /dev/mapper/${mapper_name_hdd}
lvcreate -l 100%pvs -n datalv vg0 /dev/mapper/${mapper_name_hdd}
注:100%pvs
は、選択したデバイス全体(暗号化されたコンテナまたはパーティションなど)にまたがるボリュームを作成します。詳細とオプションは lvmcache およびその他の関連するマンページにあります。
次に、ボリュームグループにSSDを追加して、LVM構成を拡張します。
pvcreate /dev/mapper/${mapper_name_ssd}
vgextend vg0 /dev/mapper/${mapper_name_ssd}
SSDでvg0
にcache
という名前のキャッシュプールボリュームを作成し、新しいキャッシュプールをキャッシュとしてdatalv
に追加します。
lvcreate --type cache-pool -l 100%pvs -n cache vg0 /dev/mapper/${mapper_name_ssd}
lvconvert --type cache --cachepool vg0/cache vg0/datalv
注:lvcreateは、この方法でcache_cdataおよびcache_cmetaの最適なサイズを自動的に選択します。
再起動を避けたい場合は、LVM構成を変更した後、pv、vg、lvを再スキャンしてLVMデバイスをアクティブにする必要がある場合があります。
pvscan
vgscan
lvscan
vgchange -ay
次のコマンドは、名前が指定されていない場合、すべてのLVMボリュームを非アクティブ化します。
vgchange -an
最後に、論理ボリュームをフォーマットし、データを転送します。
Gparted GUIを使用したフォーマットの例
pkexec gparted /dev/mapper/vg0-datalv
コマンドラインツールを使用したフォーマットの例:
Sudo mkfs.ext4 /dev/mapper/vg0-datalv
これで、新しいファイルシステムがNautilusに表示されます。
多くのLVMコマンドはセットアップを非常に複雑に見せますが、経験豊富なユーザーにLVMの可能性を最大限に活用することはできませんが、セットアップしてコンピューターを再起動したら、Unityランチャーまたはgnome内から暗号化されたディスクをマウントするだけです。その後、他のファイルシステムまたはディスクと同様に、Nautilusに表示されるボリュームをマウントします。複雑なコマンドを覚える必要はありません。私の知る限り、現在、UbuntuのキャッシュプールのLVMセットアップを処理するためのGUIツールはありません。
ノート:
キャッシュに関するすべてのメトリックを表示するには、次のコマンドを使用できます。
Sudo lvs -o+cache_total_blocks,cache_used_blocks,cache_dirty_blocks,cache_read_hits,cache_read_misses,cache_write_hits,cache_write_misses,cachemode,cache_policy,cache_settings