web-dev-qa-db-ja.com

デスクトップワークステーション用の/ homeのパーティション分割(HDD + SSD)

私は妻の自宅のコンピューターをWindows 10からUbuntu 18.04に切り替えたところです。彼女はこれまでのところ、この移行を気に入っています。これはUbuntuのみのマシンです(デュアルブートではなく、1つのOSディストリビューションのみ、VM特定のWindows固有のアプリケーションの場合)のセットアップが必要になる場合があります)。

最後に、2つのドライブ(480GBb SSD、1TB HDD)を処理する方法を理解してセットアップする必要があります。 LVMを有効にしてインストールを試行しましたが、lvmetadの問題が発生し、標準のext4パーティション(つまり、SSDの/efi/のみ)を使用する必要がありました。ユーザーデータのアーカイブがあるHDD上のext4パーティション)。彼女は、SSDを明らかに圧倒するであろう、ほぼ500GBの考古学調査データ(多くの機密/専有写真、.pdf、およびその他のデータファイル)を持っています。

/homeがssd(速度など)にとどまり、HDDにアーカイブの大部分が残るように設定する方法を理解しようとしています。 /archiveへのリンクを使用して、HDDを単にマウントするだけでよいのかわかりません(たとえば、/home)。HDDにプッシュされたものはすべて、彼女の一部のみにしたいのでユーザースペース(つまり、他のユーザーアカウントからアクセス可能/可視の一般的なストレージだけではありません)。理想的には、HDD上に~/homeのサブスペースを作成し、ファイルシステム管理に関心がなく、データにアクセスできるように「機能するだけ」でそれを必要とするユーザーに使用可能かつ理解可能にすることが理想です。

これまでのところ、私が見た2つ以上のドライブソリューションはすべて、HDDを/homeでシンボリックリンクされたバルクストレージとしてマウントし、/homeを2つのLVM疑似RAIDとして設定します(意見が良いアイデア、そしてlvmetadはとりあえずそれを防ぎます)、またはactualRAID(私は取得したくない)をセットアップしますに)。

残念ながら、これらすべてはLinuxのファイルシステムについての私の理解を超えたものであり、veryこれがすべて正しく理解されていない可能性があります。

必要なセットアップ:

  • SSDで\homeを使用し、個々のユーザーがHDDの大容量ファイルストレージにアクセスできるマルチユーザーシステムのセットアップを許可する
  • そのユーザーのみがアクセスでき、ユーザーの/homeの下でリンクされているHDD上のユーザーファイルとディレクトリ
  • /home/[user]/[extra storage]にリンクされたSSD上の[hdd mount point]/[user]は、[ユーザー]のみに表示/アクセス可能~/[extra storage]
  • クォータは必要ありませんが、HDD上のスペースに可能なストレージ

基本的に、バルクストレージデバイス上の個別のユーザー共有を個別に保護し、ユーザーのホームディレクトリを拡張します。/homeのすべてをその2番目のデバイスにプッシュする必要はありません。

私が説明しているものを設定する方法はありますか、または誰かがユーザーのファイルシステム構造についての私の考えが根拠のないところを指摘してくれますか?

2
Scard

次の手順は、パーティションを/mnt/archiveの下のHDDにマウントし、2人のユーザーのホームディレクトリに bind mounts を追加する方法を示しています。 aliceおよびbob。ホームディレクトリ自体はまだ別のパーティションにあります。

すべてのコマンドは、ユーザーrootとして発行する必要があります。

  1. archiveパーティションのUUIDを決定します。

    lsblk -fs
    NAME      FSTYPE      LABEL       UUID                                 MOUNTPOINT
    sda5      ext4        slash       467ddc36-vvvv-xxxx-yyyy-zzzzzzzzzzzz /
    └─sda                                                                  
    sda6      ext4        home        a87c2c2d-vvvv-xxxx-yyyy-zzzzzzzzzzzz /home
    └─sda                                                                  
    sdb8      ext4        archive     291bd44c-vvvv-xxxx-yyyy-zzzzzzzzzzzz 
    └─sdb                                                                  
    ...
    

    私の場合、sda//homeがあり、sdb8archiveというラベルの付いたマウントされていないパーティションがあります。この投稿では、sdaがSSDであり、sdbがHDDであると想定しています。

  2. アーカイブパーティションを空のディレクトリにマウントします。例:/mnt/archive

    mkdir /mnt/archive
    mount UUID=291bd44c-vvvv-xxxx-yyyy-zzzzzzzzzzzz /mnt/archive
    chown root:root /mnt/archive
    chmod 750 /mnt/archive
    
  3. ユーザーaliceおよびbob/mnt/archive(つまりHDD)の下にユーザー固有のフォルダーを作成し、権限を調整します彼らだけがこれらのディレクトリにアクセスできること。ディレクトリがHDDのパーティションarchiveにあることに注意してください。

    mkdir /mnt/archive/alice
    chown alice:alice /mnt/archive/alice
    chmod 750 /mnt/archive/alice
    
    mkdir /mnt/archive/bob
    chown bob:bob /mnt/archive/bob
    chmod 750 /mnt/archive/bob
    
  4. ホームディレクトリにarchiveフォルダーを作成します。ディレクトリはrootが所有しているため、心配しないでください。 aliceはそのディレクトリに何かを置くことを想定していないため、これは害にはなりません。ディレクトリ/home/alice/archiveは、実際の/mnt/archive/aliceをバインドマウントする場所としてのみ機能し、マウントされると、/mnt/archive/aliceの権限と所有権が適用されます。

    mkdir /home/alice/archive
    mkdir /home/bob/archive
    
  5. bind mount/mnt/archive/alice to /home/alice/archive

    mount -o bind /mnt/archive/alice /home/alice/archive
    mount -o bind /mnt/archive/bob /home/bob/archive
    
  6. 満足したら、次の行を/etc/fstabに追加して、起動時にパーティションを自動的にマウントします。

    # The /archive partition
    UUID=291bd44c-vvvv-xxxx-yyyy-zzzzzzzzzzzz /mnt/archive  ext4 defaults  0  2
    
    # bind mounts for alice and bob:
    /mnt/archive/alice /home/alice/archive  none  bind  0  0
    /mnt/archive/bob   /home/bob/archive    none  bind  0  0
    

bind mountが完了する前に、aliceホームディレクトリのrootが所有するディレクトリが表示されます。ディレクトリは空であり、ファイルをそこに置くことはできません(すべきではありません)。

alice@ubuntu:~$ ll
total 16
drwxr-xr-x 2 root  root  4096 Jan 25 12:51 archive
-rw-r--r-- 1 alice alice 8980 Jan 25 12:43 examples.desktop

bind mountが実行された後(mount -o bind /mnt/archive/alice /home/alice/archive)、aliceは、/mnt/archive/aliceの権限を含め、代わりにホームディレクトリの/mnt/archive/aliceディレクトリを表示します。

alice@ubuntu:~$ ll
total 16
drwxr-x--- 2 alice alice 4096 Jan 25 13:06 archive
-rw-r--r-- 1 alice alice 8980 Jan 25 12:43 examples.desktop

彼女は、_archiveディレクトリで好きなことをすべて実行でき、すべてがHDDのパーティションで行われます。


上記の手順を元に戻すには、次のコマンドを使用します。

# undo bind-mounts:
umount /home/alice/archive
umount /home/bob/archive

# unmount actual partition:
umount /mnt/archive
4
PerlDuck