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.     ooooooooo.     .o8                    .ooooo.   
d8P' `Y8b `888 `Y88. "888 888' `Y88.
oooo ooo 888 888 .d88' 888oooo. .oooo. 888 888
`88. .8' 888 888ooo88P' d88' `88b `P )88b `Vbood888
`88..8' 888 ooooo 888`88b. 888 888 .oP"888 888'
`888' `88. .88' 888 `88b. 888 888 d8( 888 .88P'
.8' `Y8bood8P' o888o o888o `Y8bod8P' `Y888""8o .oP'
.o..P'
`Y8P'
Введите код, изображенный в стиле ASCII-арт.