пятница, 22 июня 2012 г.

Ночные сборки Midnight Commander получили поддержку SFTP

Вчера в багтрекере проекта Midnight Commander был закрыт тикет 1535, который знаменует добавление начальной поддержки протокола SFTP в master ветку репозитария (именно из нее делаются пакеты для nightly ветки моего репозитария).

Для сборки теперь требуется libssh2 с минимальной версией 1.2.5. Однако для полноценной работы с ssh-agent нужна версия старше (в Debian Squeeze сейчас 1.2.6 и с ней авторизация по агенту не работает). Я проводил небольшие изыскания по этому вопросу и остановился на версии 1.3.0 (которая доступна в моем репозитарии).

В этой версии поддерживается работа с ~/.ssh/config. Т.е. теперь вместо указания username@hostname, можно указать соответствующий алиас из конфига. Например у меня есть учетка andrey@192.168.16.170, которая доступна по ssh ключу ~/.ssh/support. Соотвествующая запись в ~/.ssh/config будет

Host support
HostName 192.168.16.170
User andrey
IdentityFile ~/.ssh/support

И при входе по SFTP я укажу support вместо прописывания полной записи. Причем похоже ~/.ssh/config - единственный способ использовать public key авторизацию.

Редко новые фичи бывают без косяков. В этот раз похоже поломали работу с ssh алиасами из ~/.ssh/config при переносе из бранча в master ветку. Так если зайти через username@hostname, то все работает быстро и приятно, а если использовать алиас, то midnight циклически начинает открывать соединения и в итоге их на сервере становится больше 30 (по крайней мере у меня было запущено больше 30 копий sftp-server и тормозило это безбожно).

В дополнении обнаружилась проблема с копированием файлов - они не копируются вовсе (создается пустой файл). Не работает переключение на sftp подключение в списке активных VFS (Ctrl + X A). Там подключение выглядит как //sftp://, вместо sftp://username@hostname/.

Думаю, что в ближайшее время все баги будут исправлены и midnight получит новую фичу в свой арсенал.

Комментариев нет:

Отправить комментарий