разметка / home для настольной рабочей станции

Я только что перевел домашний компьютер моей жены на Ubuntu 18.04.1 с Win10, и ей пока нравится переход. Это машина с Ubuntu (без двойной загрузки, только один дистрибутив ОС, возможно, потребуется настроить виртуальную машину для определенных приложений, специфичных для Windows).

И последнее, что нужно выяснить и настроить, - это как обращаться с двумя дисками (480 ГБ ssd, 1 ТБ HDD). Пробовал устанавливать с включенным LVM, но столкнулся с проблемой lvmetad и должен был идти со стандартными ext4 разделами (т. Е. Просто /efi и / на ssd, один размонтированный раздел ext4 на жестком диске с архивом ее пользовательских данных). У нее есть почти 500 ГБ археологических исследовательских данных (много конфиденциальных / проприетарных фотографий, PDF-файлов и других файлов данных), которые, очевидно, сокрушат SSD.

Я пытаюсь выяснить, как настроить так, чтобы /home оставался на ssd (для скорости и т. Д.), С большей частью архива на жестком диске. Я не уверен, что хочу просто смонтировать жесткий диск (например, как /archive) со ссылками на /home, так как я хочу, чтобы все, что отодвинуто на жесткий диск, к также было исключительно частью ее пользовательского пространства (то есть не просто общее хранилище, доступное / видимое для любой другой учетной записи пользователя). В идеале, я хочу создать подпространство из ~/home на жестком диске и сделать его доступным и понятным для того, кто не интересуется управлением файловой системой и нуждается в том, чтобы « просто работал », чтобы она могла получить к ней данные.

До сих пор все два + накопителя, которые я видел, просто монтировали жесткий диск в качестве хранилища с символьной связью в /home, настраивали /home как LVM-псевдо-RAID для обоих (мнения различаются, это хорошая идея, и lvmetad пока что предотвращает ее), или устанавливает фактический RAID (в который я не хочу входить).

К сожалению, все это за пределами моего понимания файловых систем linux, и очень возможно, что я просто не все правильно понимаю.

Желаемая настройка

  • Разрешить настройку многопользовательской системы с \home для sdd и индивидуальным доступом пользователей к хранилищу больших файлов на жестком диске
  • Пользовательские файлы и каталоги на жестком диске доступны только для этого пользователя и связаны с пользователем /home
  • /home/[user]/[extra storage] на SSD, связанном с [hdd mount point]/[user], видимым / доступным только [пользователю] как ~/[extra storage]
  • квоты не обязательны, но возможны места для хранения на жестком диске

По сути, отдельные и защищенные отдельные общие ресурсы пользователя на устройстве массовой памяти - расширение домашнего каталога пользователя - без подталкивая все /home к этому второму устройству.

Мой вопрос - есть ли способ настроить то, что я описываю, или кто-то может указать, где мои мысли о структуре пользовательской файловой системы не основаны? [Тысяча сто тридцать два]

1
задан 25 January 2019 в 19:24

1 ответ

Следующие шаги описывают, как смонтировать раздел на жестком диске ниже /mnt/archive, а затем добавить bind mounts в домашние каталоги двух пользователей, alice ] и Боб . Сами домашние каталоги все еще находятся в другом разделе.

Все команды должны быть введены как пользователь root.

  1. Определите UUID раздела archive:

    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                                                                  
    ...
    

    В моем случае у меня есть / и /home на sda, а несмонтированный раздел помечен archive ] на sdb8. Для целей данного поста мы предполагаем, что 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. Создайте пользовательские папки ниже /mnt/archive (то есть на жестком диске) для пользователи Алиса и Боб и настроить разрешения так, чтобы только они могли получить доступ к этим каталогам. Обратите внимание, что каталоги теперь находятся в разделе 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. Это не повредит, потому что Алиса не должна ничего помещать в этот каталог . Каталог /home/alice/archive служит только местом для привязки фактического /mnt/archive/alice к нему, и когда он монтируется, применяются разрешения и права собственности /mnt/archive/alice.

    mkdir /home/alice/archive
    mkdir /home/bob/archive
    
  5. привязать монтировку /mnt/archive/alice к /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 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), Алиса увидит каталог /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 каталог и все будет происходить в разделе на жестком диске.


Чтобы отменить вышеуказанные шаги, используйте следующие команды:

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

# unmount actual partition:
umount /mnt/archive
2
ответ дан 25 January 2019 в 19:24

Другие вопросы по тегам:

Похожие вопросы: