Развернув FTP-сервер VSFTPD (ссылка) на Ubuntu server 14.04.5 и настроив использование виртуальных пользователей на базе MySQL (ссылка), у меня при попытке подключения к FTP выдается вот такая ошибка: libgcc_s.so.1 must be installed for pthread_cancel to work.
ftp 10.7.7.97 Connected to 10.7.7.97. 220 Jakonda FTP сервер. Name (10.7.7.97:jakonda): user1 331 Please specify the password. Password: libgcc_s.so.1 must be installed for pthread_cancel to work Login failed. 421 Service not available, remote server has closed connection
Данная ошибка вызвана недостатком доступной процессу виртуальной памяти. Лимит определяется в значении VSFTP_AS_LIMIT в файле defs.h.
Увеличить значение VSFTP_AS_LIMIT можно пересобрав VSFTPD из исходников, с нужным нам значением и потом установить исправленную версию. Разберем ниже как это сделать.
Обновляем систему до актуального состояния:
sudo apt-get update sudo apt-get upgrade
Устанавливаем необходимые утилиты для сборки пакетов:
sudo apt-get install fakeroot build-essential
Устанавливаем необходимые зависимости и загружаем исходник VSFTPD из репозитария:
sudo apt-get build-dep vsftpd sudo apt-get source vsftpd
Переходим в каталог VSFTPD (на момент написания статьи, версия VSFTPD в репозитариях 3.0.2):
pushd vsftpd-3.0.2/
Редактируем файл defs.h
sudo nano defs.h
Находим строку:
#define VSFTP_AS_LIMIT 100UL * 1024 * 1024
Приводим строку к виду:
#define VSFTP_AS_LIMIT 400UL * 1024 * 1024
Зафиксируем изменения, в процессе выполнения вводим имя патч файла.
sudo dpkg-source --commit
Соберем пакет:
sudo fakeroot dpkg-buildpackage
Выходим из каталога:
popd
У вас должен создаться файл vsftpd_3.0.2-1ubuntu2.14.04.1_amd64.deb . Установим его (можно устанавливать по верх уже установленного VSFTPD, конфигурационный файл затронут не будет):
sudo dpkg --install vsftpd_3.0.2-1ubuntu2.14.04.1_amd64.deb
Кому лень проделывать все выше описанные действия, можете скачать уже готовый пакет.
После установки пробуем подключится к FTP-серверу и на этот раз авторизация должна пройти успешно.
ftp 10.7.7.97 Connected to 10.7.7.97. 220 Jakonda FTP сервер. Name (10.7.7.97:jakonda): user1 331 Please specify the password. Password: 230 Login successful. Remote system type is UNIX. Using binary mode to transfer files.
Понравилась или оказалась полезной статья, поблагодари автора
ПОНРАВИЛАСЬ ИЛИ ОКАЗАЛАСЬ ПОЛЕЗНОЙ СТАТЬЯ, ПОБЛАГОДАРИ АВТОРА
Оставить ответ