Все время забываю манипуляции, которые необходимо совершить во FreeBSD, чтобы монтировать файловые системы не от рута. Изобразим на примере внешнего usb диска, на котором я предварительно создал FreeBSD слайс и разметил партицию. Этот диск я купил для бэкапа всевозможных бесценных файлов, таких как почта за десять лет, логи irc, фотографии обнаженных и т.п. Так как в системе могут появиться разные внешние usb диски, то не грех воспользоваться glabel(8) для установки специфической метки на данный экземпляр. Пропишем загрузку модуля geom_label при старте системы: # echo 'geom_label_load="YES"' >>/boot/loader.conf # glabel load Нанесем метку: # tunefs -L backup /dev/da0s1 Теперь у нас должны появиться соответствующие device nodes в иерархии /dev/label. # ls /dev/label backup backupc backupd Суффиксы 'c' и 'd' соответствуют партициям на слайсе da0s1 Настроим систему для монтирования файловой системы из-под пользователя maxim: # echo 'vfs.usermount=1' >>/etc/sysctl.conf # sysctl vfs.usermount=1 # mkdir /backup # chown maxim /backup # cat >>/etc/devfs.rules <<>/etc/rc.conf # /etc/rc.d/devfs forcestart Проверяем: # ls -l /dev/label total 0 crw-rw---- 1 maxim operator 0, 122 21 мар 20:30 backup crw-rw---- 1 maxim operator 0, 129 21 мар 20:30 backupc crw-rw---- 1 maxim operator 0, 130 21 мар 20:30 backupd Монтируем: # mount /dev/label/backupd /backup Меняем владельца корня новой файловой системы на maxim: # chown maxim /backup # umount /backup Проверяем, что все работает as expected под целевым пользователем maxim: $ mount /dev/label/backupd /backup $ umount /backup # EOF