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.                          
d8P' `Y8b
oooo ooo .ooooo. .oooo. 888 oooo d8b .oooooooo
`88b..8P' d88' `88b `P )88b 888 `888""8P 888' `88b
Y888' 888ooo888 .oP"888 888 ooooo 888 888 888
.o8"'88b 888 .o d8( 888 `88. .88' 888 `88bod8P'
o88' 888o `Y8bod8P' `Y888""8o `Y8bood8P' d888b `8oooooo.
d" YD
"Y88888P'
Введите код, изображенный в стиле ASCII-арт.