Ошибка загрузки / выгрузки файла с использованием VirtualBox
Я использую VirtualBox
ubuntu 14.04
на нем в качестве клиента у меня есть версия командной строки Ubuntu в качестве сервера в качестве файлового хоста. Я могу подключиться - Аутентифицировать - и загрузить / загрузить файл на / с сервера, используя put $FILE
или жеget $FILE
но это не удается во время загрузки / выгрузки. Отображается следующее сообщение об ошибке: для обоих
ftp: bind: Address already in use
Есть ли способ сдвинуть порты VirtualBox
или ftp для проверки моей тестовой среды?
Я изменил свой порт сервера:
sudo nano /bin/vsftpd.conf
listen_port=2121
Как изменить клиента для вызова на назначенном порту, а не по умолчанию?
1 ответ
Ну, это не совсем ответ, но комментарии слишком короткие...
Я думаю, что не совсем ясно говорил о "вторичном порте". Ftp использует два порта:
- порт команды (или порт прослушивания), по умолчанию 21.
- порт данных (по умолчанию 20).
Командный порт, безусловно, свободен, и поэтому вы можете подключаться и проверять подлинность, а также вводить команды get и put. Но при переходе на другое соединение на порт данных открывается другое соединение, и это не удается. Итак, вы должны проверить (и, возможно, изменить) порт данных, а не командный порт.
Проблема еще сложнее, потому что у ftp есть два режима:
- "Пассивный" режим, в котором используются порты по умолчанию.
- "Активный" режим, в котором согласовываются порты.
Вот почему я настоятельно рекомендую вам попробовать переводы в пассивном режиме (это не по умолчанию). Любой клиент ftp, такой как Filezilla или команда терминала ftp, имеет эту опцию.