FTP сервер ProFTPd и символические ссылки

Ситуация следующая, сервер Debian lenny под управлением серверной панели Plesk, все заточено именно под FTP хранилище. В Plesk, FTP сервером по умолчанию является ProFTPd. Ставим на сервер второй жесткий диск. Задача, сделать так что-бы 2 FTP пользователя системы могли его полноценно использовать.

Первое что приходит в голову, создать в пользовательских папках, символические ссылки на новый диск. Единственная проблема заключается в том, что ftp сервер ProFTPd не умеет работать с символическими ссылками. То есть видеть, он их видит, но ходить по ним не может, тем более туда что-то сохранять.

В такой ситуации нам может помочь команда mount с ключом --bind, позволяющая смонтировать папку в другую папку.

Поступаем следующим образом. Пользовательские домашние папки для FTP расположены в /var/www/vhosts/domain.com/ftp, второй диск у нас смонтирован в папку /disk2:

server:# mkdir /var/www/vhosts/user1.domain.com/ftp/dosk2 # создаем каталог disk2 в FTP папке первого пользователя
server:# mkdir /var/www/vhosts/user2.domain.com/ftp/dosk2 # аналогично для второго пользователя
server:# mkdir /dosk2/ftpuser1 # на новом диске создаем папку для первого пользователя
server:# mkdir /dosk2/ftpuser2 # и для второго

смонтируем папки следующими командами:

server:# mount --bind /disk2/ftpuser1 /var/www/vhosts/user1.domain.com/ftp/dosk2
server:# mount --bind /disk2/ftpuser2 /var/www/vhosts/user2.domain.com/ftp/dosk2

Что-бы после перезагрузки монтировались все необходимые папки, дописываем в файл /etc/fstab:

/disk2/ftpuser1 /var/www/vhosts/user1.domain.com/ftp/dosk2 none bind
/disk2/ftpuser2 /var/www/vhosts/user2.domain.com/ftp/dosk2 none bind

Если наши папки в данный момент еще не смонтированы, делаем:

server:# mount -a

проверяем:

server:# mount
/dev/sda3 on / type ext3 (rw,errors=remount-ro,usrquota)
.........................
.........................
/disk2/ftpuser1 on /var/www/vhosts/user1.domain.com/ftp/dosk2 type none (rw,bind)
/disk2/ftpuser2 on /var/www/vhosts/user2.domain.com/ftp/dosk2 type none (rw,bind)

Теперь ProFTPd будет работать с папкой находящейся на другом диске как с обычной, безо всяких символических ссылок.

Комментарии

Inappropriate file type or format

Отправить комментарий

Содержание этого поля является приватным и не предназначено к показу.
Регистр имеет значение
 oooooo     oooo      o8o    .oooooo.        o8o    .o8                   
`888. .8' `"' d8P' `Y8b `"' "888
`888. .8' oooo 888 888 oooo 888oooo. oo.ooooo.
`888. .8' `888 888 888 `888 d88' `88b 888' `88b
`888.8' 888 888 888 888 888 888 888 888
`888' 888 `88b d88b 888 888 888 888 888
`8' 888 `Y8bood8P'Ybd' o888o `Y8bod8P' 888bod8P'
888 888
.o. 88P o888o
`Y888P
Введите код, изображенный в стиле ASCII-арт.