Я использую Ubuntu Linux на моем VPS, и я настроил VSFTP, чтобы легко управлять FTP-доступом для пользователя , только для данной папки. Эта папка находится в папке / var / www / html /
. Пользователь в системе с именем учетная запись
(например) может войти в систему через FTP, посмотрите на каталог, установленный для него как "домашний" по умолчанию, и на то, к чему он привязан.
Однако любая файловая транзакция завершится неудачно (действия записи) из-за разрешений.
Итак, я проверил папку, и оказалось, что она принадлежит www-data: www-data
. Итак, я сделал: sudo usermod -a -G www-data account
, чтобы добавить учетную запись в группу пользователей и таким образом получить доступ к тем же разрешениям. Я также попытался установить учетную запись в качестве владельца каталога, который я хотел
root@serverhost:/var/www/html/gpx/_SERVERS/accounts/accountname# ls -li
total 4
3253350 drwxrwxrwx 7 www-data account 4096 Oct 12 15:07 Folder.I.Want.Acc.To.write.in
root@serverhost:/var/www/html/gpx/_SERVERS/accounts/accountname#
. Как видите, и разрешения, и владение должны указывать на то, что пользователь «учетной записи» должен иметь возможность писать и вносить в него изменения. Но через FTP приходит ошибка разрешения 550 . Есть идеи, что делать?
Проблема должна быть связана с FTP, поскольку я только что смог создать новый каталог в папке, которую я хотел, через терминал SSH.
Благодаря @MarkoPolo я смог выяснить, как это исправить.
Эта ссылка описывала, как позволить другим пользователям также иметь разрешение на запись в папки, принадлежащие www-data. Она работала как шарм
Просто остерегайтесь, что вы захотите изменить стандартные значения chmod загружаемых пользователем файлов. По умолчанию они были 022, и вы, вероятно, захотите 655 или даже 755/775 - соответственно изменив значение umask и значение file-open-mode в конфигурационном файле VSFTP
.