Я установил систему Ubuntu на диске SS и хочу, чтобы пользователи получили доступ к разделам второго (механического) диска в качестве общих хранилищ с полными разрешениями на чтение / запись / удаление для каждого файла. И я хочу, чтобы каждый пользователь видел такой раздел (например, / dev / sdb7) как каталог с фиксированным именем (например, / home / the_user / F). Мне было сообщено (возможно ли установить раздел как общий хранилище для пользователей с таким же относительным путем?), Чтобы монтировать раздел во время загрузки и символизировать эту точку монтирования где-то в доме пользователя. Однако в руководстве для link я вижу вариант ‘-d’ ‘-F’ ‘--directory’ Allow users with appropriate privileges to attempt to make hard links to directories. However, note that this will probably fail due to system restrictions, even for the super-user. , которого я боюсь. Пожалуйста, сообщите мне пример правильной ссылки; и соответствующие команды группы или bindfs, которые будут использоваться при входе пользователя или один раз навсегда с помощью корня. Спасибо!
Вам не нужно использовать жесткие ссылки, на самом деле мы не можем создать жесткую ссылку на каталог, потому что она делает цикл в иерархии файловой системы.
Вы должны использовать опцию -s для создания символической ссылки:
Предположим, что я установлен /dev/sda7 на /media/some/mount/point. Чтобы создать ссылку на этот путь, мне нужно запустить:
ln -s [target] [symlink]
Нравится:
ln -s /media/some/mount/point /home/username/F
Разрешение ссылки было бы 777, но, как бы символическая ссылка не отличалась от вы фактический каталог, он предоставляет только доступ к symlink и пользователь должен иметь правильные разрешения, чтобы иметь возможность работать с файлами в /media/some/mount/point.
Что касается вашей обеспокоенности в отношении ссылки на смонтированный каталог, это звучит так, как будто вы просто наткнулись на неправильную программу. Согласно вашему сообщению, вам рекомендуется создавать символические ссылки (т. Е. Символические ссылки). Однако команда link создает только жесткие ссылки. Для создания символических ссылок вы можете использовать команду ln, а именно:
ln -s /path/to/mount/point /home/the_user/F
Что касается общего доступа, вы можете установить это с помощью списков управления доступом (списки управления доступом), например:
sudo setfacl -Rm g:mount-group:rwx /path/to/mount/point
sudo setfacl -Rdm g:mount-group:rwx /path/to/mount/point
Чтобы продемонстрировать, что это может выглядеть и дать вам отправную точку для экспериментов, вот более длинный пример, который привязывает-монтирует каталог (вы замените его на фактическое монтирование, которое вы хотите), устанавливает его право собственности и разрешения (с использованием списков управления доступом), а затем создает в нем символическую ссылку внутри другого каталога:
# Create a group to own the shared mount
sudo groupadd mount-group
# Create a user that belongs to this group
sudo adduser mount-user
sudo usermod -a -G mount-group mount-user
# Create a directory to mount
mkdir /tmp/mount-source
# Create the mount-point
mkdir /tmp/mount-target
# Bind-mount the directory onto the mount point
sudo mount --bind /tmp/mount-source /tmp/mount-target
# Set the group owner for the mounted volume
sudo chown :mount-group /tmp/mount-target
# Set the group permissions to match the user permissions
sudo chmod -R g=u /tmp/mount-target
# Set the setgid bit on the mounted volume
sudo chmod g=u,g+s /tmp/mount-source
# Set the ownership and permissions for the mounted volume using an ACL
sudo setfacl -Rm g:mount-group:rwx /tmp/mount-target
# Set the default ownership and permissions for files created inside the mount-point
sudo setfacl -Rdm g:mount-group:rwx /tmp/mount-target
# Login as the test user
su -l mount-user
# Link a subdirectory inside the user's home folder to the mounted volume
ln -s /tmp/mount-target ~/link-to-mount-target
# Create a new file inside the mounted volume
echo 'Hello world!' > ~/link-to-mount-target/hello.txt
# Check the permissions on the new file
getfacl ~/link-to-mount-target/hello.txt
Я думаю, что ваш вопрос нуждается в двух двухкратном ответе: во-первых, при установке устройства в файловой системе, а во-вторых, при привязке места назначения.
Следующие объяснения требуют использования терминальной программы (сочетание клавиш: Ctrl + Alt + t) для ввода команд.
Вам также понадобятся привилегии суперпользователя. Обычно (как первый пользователь после новой установки) вы получаете привилегии, набрав sudo перед командой. После этого (обычно, если вы первый пользователь после новой установки), вы должны предоставить свой пароль перед запуском команды.
Ваш жесткий диск («механический» диск) должен быть подключен к ваш компьютер уже и правильно отформатирован с файловой системой (например, ntfs или ext4).
Остерегайтесь! Изменяя файл fstab, вы работаете с внутренними компонентами, которые могут остановить загрузку вашего компьютера. Это не является постоянным ущербом, но для ремонта потребуется время и время.
Если вы сомневаетесь в каком-либо из вышеуказанных предварительных условий, спросите в комментарии.
Монтаж диски в процессе загрузки выполняются в файле /etc/fstab. Для этого вам нужно знать UUID вашего «механического» диска или, по крайней мере, его имя в каталоге /dev.
Найти UUID и имя (похожее на /dev/sdb5) вашего диска :
ls -l /dev/disk/by-uuid
Он будет указан здесь. Теперь определите файловую систему. Он будет указан в последнем столбце соответствующей строки
sudo fdisk -l | less
Затем выберите путь монтирования и создайте его:
sudo mkdir -p /media/shareddrv
Зная UUID диска, имя и тип файловой системы, ваша строка конфигурации для /etc/fstab выглядит так:
UUID=481aba75-c8a7-4b70-bdc4-fab4de7c1410 /media/shareddrv ext4 errors=remount-ro 0 2
, где UUID=481aba75-c8a7-4b70-bdc4-fab4de7c1410 может быть чем-то вроде /dev/sdb5, если у вас возникли проблемы с установкой UUID , Часть /media/shareddrv - это местоположение, которое вы определили, а ext4 - тип раздела и будет отличаться в зависимости от вашего диска. Остальное остается предпочтительно, как и здесь.
Вы должны добавить всю эту строку к своему /etc/fstab. Поскольку есть много способов сделать это, достаточно удобно использовать sudo nano /etc/fstab и набрать / вставить строку в конце файла.
Теперь сделайте, чтобы ваши изменения работали для вас: самый простой способ это RESTART ваш компьютер (например, sudo init 6 или sudo shutdown -h now). Если все работает, вы увидите свой «механический» диск и его точку монтирования после ввода: df -h в терминале.
Эта часть может выполняться пользователем-после-пользователя, полу-вручную. Для пользователя «alice» запустите:
TMPUNAME=alice; sudo -u $TMPUNAME ln -s /media/shareddrv /home/$TMPUNAME/F
И повторите это для каждого пользователя. В конце вы могли бы unset TMPUNAME, но не обязательно.
Надеюсь, все работает на вас. Если вы найдете этот мини-учебник полезным, пожалуйста, поддержите мой ответ и отметьте его как полезный. Спасибо! Также задайте больше вопросов, если что-то не ясно или не работает!
Вам не нужно использовать жесткие ссылки, на самом деле мы не можем создать жесткую ссылку на каталог, потому что она делает цикл в иерархии файловой системы.
Вы должны использовать опцию -s для создания символической ссылки:
Предположим, что я установлен /dev/sda7 на /media/some/mount/point. Чтобы создать ссылку на этот путь, мне нужно запустить:
ln -s [target] [symlink]
Нравится:
ln -s /media/some/mount/point /home/username/F
Разрешение ссылки было бы 777, но, как бы символическая ссылка не отличалась от вы фактический каталог, он предоставляет только доступ к symlink и пользователь должен иметь правильные разрешения, чтобы иметь возможность работать с файлами в /media/some/mount/point.
Что касается вашей обеспокоенности в отношении ссылки на смонтированный каталог, это звучит так, как будто вы просто наткнулись на неправильную программу. Согласно вашему сообщению, вам рекомендуется создавать символические ссылки (т. Е. Символические ссылки). Однако команда link создает только жесткие ссылки. Для создания символических ссылок вы можете использовать команду ln, а именно:
ln -s /path/to/mount/point /home/the_user/F
Что касается общего доступа, вы можете установить это с помощью списков управления доступом (списки управления доступом), например:
sudo setfacl -Rm g:mount-group:rwx /path/to/mount/point
sudo setfacl -Rdm g:mount-group:rwx /path/to/mount/point
Чтобы продемонстрировать, что это может выглядеть и дать вам отправную точку для экспериментов, вот более длинный пример, который привязывает-монтирует каталог (вы замените его на фактическое монтирование, которое вы хотите), устанавливает его право собственности и разрешения (с использованием списков управления доступом), а затем создает в нем символическую ссылку внутри другого каталога:
# Create a group to own the shared mount
sudo groupadd mount-group
# Create a user that belongs to this group
sudo adduser mount-user
sudo usermod -a -G mount-group mount-user
# Create a directory to mount
mkdir /tmp/mount-source
# Create the mount-point
mkdir /tmp/mount-target
# Bind-mount the directory onto the mount point
sudo mount --bind /tmp/mount-source /tmp/mount-target
# Set the group owner for the mounted volume
sudo chown :mount-group /tmp/mount-target
# Set the group permissions to match the user permissions
sudo chmod -R g=u /tmp/mount-target
# Set the setgid bit on the mounted volume
sudo chmod g=u,g+s /tmp/mount-source
# Set the ownership and permissions for the mounted volume using an ACL
sudo setfacl -Rm g:mount-group:rwx /tmp/mount-target
# Set the default ownership and permissions for files created inside the mount-point
sudo setfacl -Rdm g:mount-group:rwx /tmp/mount-target
# Login as the test user
su -l mount-user
# Link a subdirectory inside the user's home folder to the mounted volume
ln -s /tmp/mount-target ~/link-to-mount-target
# Create a new file inside the mounted volume
echo 'Hello world!' > ~/link-to-mount-target/hello.txt
# Check the permissions on the new file
getfacl ~/link-to-mount-target/hello.txt
Я думаю, что ваш вопрос нуждается в двух двухкратном ответе: во-первых, при установке устройства в файловой системе, а во-вторых, при привязке места назначения.
Следующие объяснения требуют использования терминальной программы (сочетание клавиш: Ctrl + Alt + t) для ввода команд.
Вам также понадобятся привилегии суперпользователя. Обычно (как первый пользователь после новой установки) вы получаете привилегии, набрав sudo перед командой. После этого (обычно, если вы первый пользователь после новой установки), вы должны предоставить свой пароль перед запуском команды.
Ваш жесткий диск («механический» диск) должен быть подключен к ваш компьютер уже и правильно отформатирован с файловой системой (например, ntfs или ext4).
Остерегайтесь! Изменяя файл fstab, вы работаете с внутренними компонентами, которые могут остановить загрузку вашего компьютера. Это не является постоянным ущербом, но для ремонта потребуется время и время.
Если вы сомневаетесь в каком-либо из вышеуказанных предварительных условий, спросите в комментарии.
Монтаж диски в процессе загрузки выполняются в файле /etc/fstab. Для этого вам нужно знать UUID вашего «механического» диска или, по крайней мере, его имя в каталоге /dev.
Найти UUID и имя (похожее на /dev/sdb5) вашего диска :
ls -l /dev/disk/by-uuid
Он будет указан здесь. Теперь определите файловую систему. Он будет указан в последнем столбце соответствующей строки
sudo fdisk -l | less
Затем выберите путь монтирования и создайте его:
sudo mkdir -p /media/shareddrv
Зная UUID диска, имя и тип файловой системы, ваша строка конфигурации для /etc/fstab выглядит так:
UUID=481aba75-c8a7-4b70-bdc4-fab4de7c1410 /media/shareddrv ext4 errors=remount-ro 0 2
, где UUID=481aba75-c8a7-4b70-bdc4-fab4de7c1410 может быть чем-то вроде /dev/sdb5, если у вас возникли проблемы с установкой UUID , Часть /media/shareddrv - это местоположение, которое вы определили, а ext4 - тип раздела и будет отличаться в зависимости от вашего диска. Остальное остается предпочтительно, как и здесь.
Вы должны добавить всю эту строку к своему /etc/fstab. Поскольку есть много способов сделать это, достаточно удобно использовать sudo nano /etc/fstab и набрать / вставить строку в конце файла.
Теперь сделайте, чтобы ваши изменения работали для вас: самый простой способ это RESTART ваш компьютер (например, sudo init 6 или sudo shutdown -h now). Если все работает, вы увидите свой «механический» диск и его точку монтирования после ввода: df -h в терминале.
Эта часть может выполняться пользователем-после-пользователя, полу-вручную. Для пользователя «alice» запустите:
TMPUNAME=alice; sudo -u $TMPUNAME ln -s /media/shareddrv /home/$TMPUNAME/F
И повторите это для каждого пользователя. В конце вы могли бы unset TMPUNAME, но не обязательно.
Надеюсь, все работает на вас. Если вы найдете этот мини-учебник полезным, пожалуйста, поддержите мой ответ и отметьте его как полезный. Спасибо! Также задайте больше вопросов, если что-то не ясно или не работает!