FreeNAS: проблемы с правами доступа при заполнении наборов данных от имени пользователя root (cli)

FreeNAS: проблемы с правами доступа при заполнении наборов данных от имени пользователя root (cli)

Я настраиваю домашний NAS, чтобы познакомиться с FreeNAS.

Мои характеристики:
FreeNAS-11.3-U2
Процессор Intel(R) Core(TM) i5-4690 с тактовой частотой 3,50 ГГц.
16 ГБ оперативной памяти DDR3.
ОС: работает на SSD-накопителе ADATA SP600 емкостью 250 ГБ.

Мои бассейны:

  1. NAS01. /mnt/NAS012x 2ТБ Зеркалос 1 запасным (реальное резервное/NAS-пространство). 2 устройства зеркала — WDC WD2003FZEX; запасной — ST2000DL003
  2. S500. /mnt/S5001x 500 ГБ(рабочее пространство). Диск — ST3500320AS. Также имеется 6-й диск 1TDB, ожидающий использования...

Первоначально я сделал резервную копию около 80 ГБ данных с другого компьютера в набор данных zfs на внешнем HD. Только после этого я узнал, что такой диск нельзя импортировать. Этот набор данных имел снимок, созданный на том исходном компьютере.

Затем мне удалось перенести набор данных в pool2 как S500/pre2012, смонтированный в /mnt/pre2012 (честно говоря, сейчас не могу точно вспомнить, как я это сделал, но, должно быть, через cli через zpool и ifs).

В какой-то момент я использовал , zfs send | recvчтобы перенести (можно сказать скопировать?) S500/pre2012@snp1 в pool1 под NAS01/pre2012, который неожиданно для меня оказался смонтирован под /mn/mnt/pre2012.

После тестирования и некоторого ознакомления с общими ресурсами SMB и проверки того, смогу ли я заставить их работать со всеми моими MAC и Linux-боксами, я решил, что пришло время организовать пул 1 (NAS01) в различные наборы данных в соответствии с тем, что я планирую хранить и как это использовать. Я создал эти наборы данных с помощью графического интерфейса.

Результатом является следующая структура корневых наборов данных (согласно zfs list):

NAS01/PRIVATE 55.0G 1.62T 20.5G /mnt/NAS01/PRIVATE
NAS01/PRIVATE/Documents 573M 1.62T 573M /mnt/NAS01/PRIVATE/Documents
NAS01/PRIVATE/Fotos 33.9G 1.62T 33.9G /mnt/NAS01/PRIVATE/Fotos
NAS01/PUBLIC 16.9G 1.62T 96K /mnt/NAS01/PUBLIC
NAS01/PUBLIC/Library 57.6M 1.62T 57.6M /mnt/NAS01/PUBLIC/Library
NAS01/PUBLIC/Movies 15.5G 1.62T 15.5G /mnt/NAS01/PUBLIC/Movies
NAS01/PUBLIC/Music 1.05G 1.62T 1.05G /mnt/NAS01/PUBLIC/Music
NAS01/PUBLIC/Software 299M 1.62T 299M /mnt/NAS01/PUBLIC/Software
NAS01/pre2012 71.3G 1.62T 71.3G /mnt/mnt/pre2012
S500 268G 178G 136K /mnt/S500
S500/SharedScratch 196G 178G 196G /mnt/S500/SharedScratch
S500/pre2012 71.4G 178G 71.3G /mnt/pre2012

SharedScratch хорошо работал под SMB в моей сети - пока я использовал только гостевой доступ и владение nobody:nobody. Но это уже другая история.

В настоящее времяструктура S500/до 2012 г.(или, скорее, его точки монтирования) это:

/mnt//pre2012/120/30/home/
/mnt//pre2012/120/30/MatLab6.5/
/mnt//pre2012/120/80/home/
/mnt//pre2012/120/80/O/
/mnt//pre2012/120/80/usr/
/mnt//pre2012/250/48/home/
/mnt//pre2012/250/80win/

Там также были и другие папки, например, «Музыка», которые мне удалось mv(не без труда) переместить в NAS01/PUBLIC/Music.

Все эти папки в S500/pre2012 принадлежат пользователю admin. Это единственный дополнительный пользователь, которого я создал.

Моя проблема, похоже, связана с проблемами привилегий, хотя я использовал sudo для входа в систему как root при выполнении команд, подобных следующим::

root@freenas[/mnt/S500/pre2012]#mv 120 /mnt/NAS01/PRIVATE/Documents
mv: chmod: /mnt/NAS01/PRIVATE/Documents/120/30/home/msantos/Reports/Apoptosis: Operation not permitted
mv: chmod: /mnt/NAS01/PRIVATE/Documents/120/30/home/msantos/Reports/.Designability.March.2005.tex.swp: Operation not permitted
mv: /mnt/NAS01/PRIVATE/Documents/120/30/home/msantos/Reports/NMR: File exists
mv: /bin/cp 120 /mnt/NAS01/PRIVATE/Documents/120: terminated with 1 (non-zero) status

Theразрешения папокявляются:

root@freenas[/mnt/S500/pre2012/120]# ll ; ll /mnt/NAS01/PRIVATE/Documents/120
total 26
drwxr-x---+ 4 admin admin uarch 4 Sep 22 21:03 ./
drwxr-x---+ 4 admin admin uarch 4 Sep 22 21:03 ../
drwxr-x---+ 3 admin admin uarch 3 Sep 22 21:14 30/
drwxr-x---+ 5 admin admin uarch 5 Sep 14 15:56 80/
total 2
drwxrwx---+ 3 root admin uarch 3 Sep 22 21:57 ./
drwxrwx---+ 3 admin admin uarch 4 Sep 22 21:57 ../
drwxrwx---+ 3 root admin uarch 3 Sep 22 21:57 30/

Как вы видите, этот ход не смог скопировать все, хотя кое-что он скопировал! Это еще более тревожно, потому что это ход!

Вот некоторыеразрешения папок назначения:

root@freenas[~]# ls -lF /mnt/NAS01
total 9
drwxr-xr-x+ 5 admin admin 6 Sep 22 19:16 PRIVATE/
drwxrwx---+ 6 root wheel 6 Sep 22 15:30 PUBLIC/

root@freenas[~]# ls -lFd /mnt/NAS01/*/*
drwxrwx---+ 3 admin admin 4 Sep 22 21:57 /mnt/NAS01/PRIVATE/Documents/
drwxrwx---+ 15 admin admin 19 Sep 22 20:37 /mnt/NAS01/PRIVATE/Fotos/
drwxrwx---+ 2 nobody admin 4 Sep 22 21:03 /mnt/NAS01/PUBLIC/Library/
drwxrwx---+ 5 nobody admin 38 Sep 22 20:13 /mnt/NAS01/PUBLIC/Movies/
drwxrwx---+ 17 nobody admin 36 Sep 22 20:41 /mnt/NAS01/PUBLIC/Music/
drwxrwx---+ 9 nobody admin 9 Sep 22 21:09 /mnt/NAS01/PUBLIC/Software/

Все эти дочерние наборы данных PRIVATE и PUBLIC совместно используются через SMB. Первый должен быть доступен только администратору. Отсюда и эти разрешения/владения.

Мои вопросы: Как я могу надежно использовать mvhere для заполнения этих наборов данных?Я не понимаю, как использовать zfs send/ recv для копирования данных в определенные наборы данных/папку. Вот почему изначально, когда я пытался, у меня получилась копия pre2012 в /mnt/mnt/, которую графический интерфейс не позволяет мне использовать в качестве общего ресурса. Поэтому я использую mv.

Более того, поскольку я пытаюсь отсортировать разные папки исходного набора данных в разные наборы данных dst, я не вижу, как zfs send/recv может это сделать. Возможно ли это?

Я немного расстроен на этом этапе. Либо я сделал что-то совсем неправильно, либо у меня отсутствует фундаментальное представление о том, как FreeNAS должен использоваться... или и то, и другое :-/ В любом случае, я не ожидал, что заполнение сервера данными будет таким сложным.

Опять же, это только после моих первых 1,5 недель игры с FreeNAS. Извините за длинный пост.

Я сейчас застрял. Любая подсказка будет оценена.

Заранее спасибо.

решение1

Решено... вроде, как бы, что-то вроде.

Из того, что я узнал из таких тем, какэтот,этотиэтотэто могла быть комбинация проблем:

  1. При создании набора данных я выбрал в качестве типа SMBвместоGeneric. Это нормально для общего ресурса Samba, но имеет свою цену: FreeNAS сразу назначает case sensitiveему режим, и изменить его нельзя.
  2. chmod против smb acl: действия, выполняемые на уровне cli (chmod), не полностью соответствуют действиям, выполняемым в графическом интерфейсе.
  3. Если вы используете, rsyncвы можете использовать его какrsync -A --no-perms .... Это не тот вариант, о котором я знал (например, он недоступен в OSX). Что -Aдействительно работает, так это хорошо работает с записями ACL.
  4. Убедитесь, что вы используете sudo для доступа к root-доступу.sudo su -l

Моим окончательным решением было переделать некоторые папки, где мне нужна чувствительность к регистру, например,PRIVATE/Documents и поделиться им как общим ресурсом NFSверсии 4 и заставить всех пользователей монтировать его как (имя пользователя, которое вы назначили для этого общего ресурса - admin в моем случае); то же самое для группы.

Это позволяет назначить тип набора данных как genericи затем case sensitive. Это также кажется быстрее, чем общий доступ smb.

Это может быть не оптимально. Но поскольку я в основном использую его с Mac и Linux (редко с Windows), это кажется нормальным.

Я смонтировал общий ресурс через cli на моем Mac: mount -t nfs nas:/mnt/NAS01/PRIVATE/Documents ~/Desktop/NFS. Я не пробовал использовать Finder( Go to Server...) в первый раз (см. PS ниже).

Переводит Finderэту папку рабочего стола NFS -> Documents. Однако в cli вы все равно видите ее как NFS.

PS: Это была моя вторая попытка настроить общий ресурс NFS и использовать клиент Mac, пока все выглядит нормально. Я не увидел странной проблемы первого раза, когда Finder впадал в бесконечный цикл при копировании файла в общий ресурс и начинал создавать бесконечные его копии

введите описание изображения здесь

Связанный контент