SCROLL
Среднее время на прочтение: 1 мин.

Ошибка при авторизации на VSFTPD (libgcc_s.so.1 must be installed for pthread_cancel to work) на Debian 8 Jessie.

Развернув FTP-сервер vsftpd на Debian 8 Jessie и настроив использование виртуальных пользователей на базе 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 исходников vsftpd.

 

Увеличить значение 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 находим строку — #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.

Обсуждение

0 комментариев

Нет комментариев.