FTP: 550 Невозможно изменить каталог на...: Нет такого файла или каталога
Я только что установил FTP-сервер на свой компьютер с помощью следующего сценария:
#!/bin/bash
groupadd ftpgroup
useradd -g ftpgroup -d /dev/null -s /etc ftpuser
pure-pw useradd robert -u ftpuser -d /ftphome
pure-pw mkdb
cd /etc/pure-ftpd/auth/
ln -s ../conf/PureDB 60pdb
mkdir -p /ftphome
chown -R ftpuser:ftpgroup /ftphome/
/etc/init.d/pure-ftpd restart
Затем я выполнил это так:
chmod 755 setup-ftp
./setup-ftp
И я, наконец, связался с ним как с Робертом:
~# ftp My_Ip_Address 21
ftp> Name: robert
etc...
ftp> cd /usr
550 Can't change directory to /usr: No such file or directory
Итак, я не понимаю, почему я не могу получить доступ к любому каталогу при использовании ftp, я думаю, что мне нужно что-то установить, но я не знаю что.
Спасибо
1 ответ
Решение
pure-pw useradd Роберт -u ftpuser -d / ftphome
Из документации:
С -d, Джо будет хромирован. Если вы хотите дать joe доступ ко всей файловой системе, используйте -D вместо -d.
Это означает, что / ftphome будет корневым для пользователя, где он не сможет выйти. И доступ к каталогу / usr внутри этого корня на самом деле будет / ftphome / usr, который, вероятно, не существует в вашем случае.