Господа подскажите столкнулся с такой проблемой, есть удаленный ftp сервер, на котором расположены аудиокниги. Но есть проблема, все папки и файлы названы кириллецей. Для того чтобы прокся нормально жевала этот FTP, пришлось ставить ftp_telnet_protocol off(в SQUID). Но всплыла еще одна проблема неудается через консольный FTP-клиенты скачивать файлы. Использую lftp. На сервер пускает, но все файлы и папки видны как ?????, но еще хуже того, при попытке скачивать по ссылкам сохраненным в броузерах, пишет ошибку доступа 550 и невозможность перейти в папку. До админов сервака достучатся неудалось. Может кто в курсе как это исправить. Может в lftp.conf че надо дописать???
>Господа подскажите столкнулся с такой проблемой, есть удаленный ftp сервер, на котором
>расположены аудиокниги. Но есть проблема, все папки и файлы названы кириллецей.
>Для того чтобы прокся нормально жевала этот FTP, пришлось ставить ftp_telnet_protocol
>off(в SQUID). Но всплыла еще одна проблема неудается через консольный FTP-клиенты
>скачивать файлы. Использую lftp. На сервер пускает, но все файлы и
>папки видны как ?????, но еще хуже того, при попытке скачиватьПопробуй curl. Если нужны всякие преобразования, я качаю примерно так:
BASEURL="ftp://site/initial_location"
while read dt tm type DIR
[ -z "$DIR" ] && continue
while read dt tm sz FNAME
do
curl -O "$BASEURL/$DIR/$FNAME"
done < <(curl -s "$BASEURL/$DIR/" | grep -v DIR)
done < <(curl -s "$BASEURL/" | grep DIR)Обрати особое внимание на / после имени каталога.
Возможно придётся побаловаться с именем файла, если в локальной файловой системе нельзя сделать имена файлов кириллицей в кодировке FTP сервера. Вместо curl -O будет curl -o $newfilename.
>[оверквотинг удален]
> curl -O "$BASEURL/$DIR/$FNAME"
> done < <(curl -s "$BASEURL/$DIR/" | grep -v
>DIR)
>done < <(curl -s "$BASEURL/" | grep DIR)
>
>Обрати особое внимание на / после имени каталога.
>
>Возможно придётся побаловаться с именем файла, если в локальной файловой системе нельзя
>сделать имена файлов кириллицей в кодировке FTP сервера. Вместо curl -O
>будет curl -o $newfilename.неа, curl(просто так) не захотел тянуть руские файлы.
Проблема решилась следующим образом:
1. Установить локаль для терминального соединения(LANG=ru_RU.cp1251)
И затем все фурычит(качаю сейчас wget`ом)