NetBox — SFTP/SCP/FTP/FTPS/WebDAV client
- Michael Lukashov
- Posts: 517
- Joined: Mon 23 Jan, 2006 09:38
- Has thanked: 6 times
- Been thanked: 21 times
- Contact:
NetBox — SFTP/SCP/FTP/FTPS/WebDAV client
C 2013/02/28 плагин входит в дистрибутив FAR 3, заменяя собой FarFTP.
Полезные ссылки:
При возникновении проблем:
Полезные ссылки:
При возникновении проблем:
Last edited by Michael Lukashov on Sat 19 Sep, 2015 10:22, edited 2 times in total.
NetBox — SFTP/SCP/FTP/FTPS/WebDAV client
Latest post of the previous page:
вариант1:a. создаёте сессию, в которой указываете ключ для подключения, сохраняете с именем например «sessionName», её теперь видно в панели NetBox.
б. в меню указываете строку «netbox:sessionName»
в. при вызове из меню при коннекте запрашивается пароль, если ключ зашифрован.
вариант2:
a. создаёте сессию, в которой указываете ключ для подключения, сохраняете с именем например «sessionName», её теперь видно в панели NetBox.
б. копируем элемент «sessionName» в файловую панель, появляется файл «sessionName.netbox»
в. в меню указываете строку «netbox:c:\somepath\sessionName.netbox»
г. при вызове из меню при коннекте запрашивается пароль, если ключ зашифрован.
вариант3:
а. в меню указываете строку «netbox:sftp://user:@host.domain»
б. при вызове из меню при коннекте ключи из pageant используются для подключения, пароль для них (если зашифрованы) запрашивается при добавлении ранее, а не при коннекте.
вариант4:
а. в меню указываете строку «netbox:sftp://user:@host.domain»
б. в меню перед «netbox:sftp://user:@host.domain» вызываем pageant с указанием ключа
в. при вызове из меню pageant грузит ключ, запрашивает пароль если ключ зашифрован, и в след. строке при коннекте ключи из pageant используются для подключения.
Last edited by tstr on Fri 06 Dec, 2019 13:20, edited 1 time in total.
NetBox — SFTP/SCP/FTP/FTPS/WebDAV client
Приветствую.
Есть проблема с синхронизацией, в процессе написания появилась версия причины, она ниже. Но я решил не удалять предварительные наблюдения, вдруг я неправ.
Я, как видимо многие инертные, долго использовать far непоследний с winscp плагином для бэкапов (mirror) с машин freebsd. Все замечательно, только уж больно медленный. Решил попробовать перейти на stable с netbox-ом (far 3.0.5511 netbox 2.4.5 build 531, based on WinSCP 5.11.2. local - Windows 7, NTFS, удаленный FreeBSD, SFTP). Стал смотреть похожие операции и удивился, что слишком много файлов в preview. Дошел до какой-то глубокой папки, где 18 файлов-картинок и один из них проблемный (всегда изменившийся).
Что наблюдается:
ВЕРСИЯ
Пока писал, вдруг возникла версия причины. Если посмотреть на большие списки, когда сравниваю выше по дереву, то бросается в глаза, что очень много файлов с подчеркиваниями в названиях (процентов 95). А если нет (default.php), то внутри папки есть соседи, начинающиеся с подчеркивания. Если я в своей простой папке с 19-ю переимновываю удаленное sc_logo15.png в sclogo15.png, то проблема исчезает. Поэтому версия есть, что это какое-то отношение имеет к расположению соседей, когда символ _ и его сортировка относительно латиницы влияет на порядок соседних файлов . Я не знаю как устроен плагин, но если одна сторона считает, что _ раньше латиницы, а другая, что позже, мы получим скорее всего подобную проблему. (в простом случае соседом был sccontentmngr.png)
Если версия верна, то вопрос, кто и где неправильно сортирует и могу ли я как-то на это повлиять или это нужно делать плагину
Спасибо заранее
Есть проблема с синхронизацией, в процессе написания появилась версия причины, она ниже. Но я решил не удалять предварительные наблюдения, вдруг я неправ.
Я, как видимо многие инертные, долго использовать far непоследний с winscp плагином для бэкапов (mirror) с машин freebsd. Все замечательно, только уж больно медленный. Решил попробовать перейти на stable с netbox-ом (far 3.0.5511 netbox 2.4.5 build 531, based on WinSCP 5.11.2. local - Windows 7, NTFS, удаленный FreeBSD, SFTP). Стал смотреть похожие операции и удивился, что слишком много файлов в preview. Дошел до какой-то глубокой папки, где 18 файлов-картинок и один из них проблемный (всегда изменившийся).
Что наблюдается:
- старый Far с WinScp старым говорит, что изменений нет. Разные хитрости с удалением, повторное синхронизацией приводят к нормальным результатам.
- NetBox уверенно про один (sc_logo15.png) сообщает в preview удаление (стрелка с крестом) и копирование (стрелка), про остальные доволен (не изменились).
- Если удалить на локале все файлы, netbox все скопирует на локал, но при повторном сравнении потом уверенно снова хочет sc_logo15.png скопировать как изменившийся
- Если удалить на удаленке все файлы, синхронизировать из локала на удаленное, то этот файл остается проблемным при повторном сравнении.
- Если в bsd копированием (cp) создать копию файла sc_logo15.png и снова провести сравнение, то оказываются в списке наш проблемный и копия, но (что видимо самое странное) после операции копирования повторное сравнение показывает в превью два совершенно других кандидата на изменение. Перезапуск far-а на это не влияет, уверенно показываются новые кандидаты.
ВЕРСИЯ
Пока писал, вдруг возникла версия причины. Если посмотреть на большие списки, когда сравниваю выше по дереву, то бросается в глаза, что очень много файлов с подчеркиваниями в названиях (процентов 95). А если нет (default.php), то внутри папки есть соседи, начинающиеся с подчеркивания. Если я в своей простой папке с 19-ю переимновываю удаленное sc_logo15.png в sclogo15.png, то проблема исчезает. Поэтому версия есть, что это какое-то отношение имеет к расположению соседей, когда символ _ и его сортировка относительно латиницы влияет на порядок соседних файлов . Я не знаю как устроен плагин, но если одна сторона считает, что _ раньше латиницы, а другая, что позже, мы получим скорее всего подобную проблему. (в простом случае соседом был sccontentmngr.png)
Если версия верна, то вопрос, кто и где неправильно сортирует и могу ли я как-то на это повлиять или это нужно делать плагину
Спасибо заранее
- Ramayasket
- Posts: 3
- Joined: Fri 27 Mar, 2020 12:44
Не видит русскоязычные файлы/папки в сессии WebDav
Подключаюсь к серверу WebDav.
FAR не показывает файлы/папки, в именах которых есть русскоязычные символы. В качестве проверки подключаюсь к тому же серверу через Windows Explorer (Add network location...) – отображаются все файлы.
Скриншоты показывают отображение одной и той же папки:
Файл Лошадка.txt отображается в Windows Explorer, но не отображается в FAR.
FAR не показывает файлы/папки, в именах которых есть русскоязычные символы. В качестве проверки подключаюсь к тому же серверу через Windows Explorer (Add network location...) – отображаются все файлы.
Скриншоты показывают отображение одной и той же папки:
Файл Лошадка.txt отображается в Windows Explorer, но не отображается в FAR.
NetBox — SFTP/SCP/FTP/FTPS/WebDAV client
Есть старый медиасервер TVIX Slim S1 - не знаю какая у него файловая система. Установил сервис ftp для диска, попробовал подключиться стандартным плугином ftp - не корректно читаются кириллические имена папок и фалов. Пробовал автоопределение, кодировку Win1251, а так же системные настройки. Ставил клиентнты ftp WinSCP и Filezilla, они так же не распознали кодировку папок и фалов на диске. Так как версия по Sambe (есть и такая возможность расшарить диск) SMB протокола v.1.0 пришлось на windows 10 x64 установить данный протокол и подключаться к расшаренной папке. Немного сумбурно но, я думаю все поймут. Как правильно настроить ftp плагин, для корректной работы с папками и файлами киррилицы. Так же писал в Far FTP плагин.
- HaRT
- Moderator
- Posts: 10863
- Joined: Tue 30 Aug, 2005 17:21
- Has thanked: 221 times
- Been thanked: 358 times
NetBox — SFTP/SCP/FTP/FTPS/WebDAV client
В настройках сеанса (F4 с панели плагина) на «вкладке» Environment есть настройка Charset encoding for filenames.
Фар есть инструмент, а не нянька. © 2009 DrKnS
NetBox — SFTP/SCP/FTP/FTPS/WebDAV client
DosBox по ftp не читает каталоги на медиасервере. Вываливается ошибка. Хотя по SMB все нормально
-
- Posts: 73
- Joined: Fri 24 Aug, 2012 15:24
- Been thanked: 1 time
NetBox — SFTP/SCP/FTP/FTPS/WebDAV client
Возникает ошибка при закрытии Far, если тот пытается подключиться (когда появляется красное окошко с Cancel и Reconnect).
Логи, на мой взгляд, не позволяют судить о причине проблемы.
Логи, на мой взгляд, не позволяют судить о причине проблемы.
Last edited by Мегамонстр on Thu 18 Jun, 2020 18:36, edited 1 time in total.
- Freeman
- Posts: 35
- Joined: Thu 20 Nov, 2014 20:10
- Location: Санкт-Петербург
- Has thanked: 5 times
- Been thanked: 2 times
- Contact:
NetBox — SFTP/SCP/FTP/FTPS/WebDAV client
NetBox из стабильной сборки 5577 в паре с плагином AltHistory наконец-то пишет в историю имена серверов (подключаюсь к разным серверам через SCP), но при переходе по пунктам истории каталогов (Alt+F12) всякий раз хочет подключиться заново и просит пароль, даже если переход происходит в рамках одного сервера. Пароли в Far не храню.
NetBox из сборки 4907 сервера в историю не пишет (их нужно угадывать или запоминать, какой пункт какому соответствует), но зато переходит по каталогам как ожидается: в рамках существующей сессии без запроса пароля.
Это баг?
NetBox из сборки 4907 сервера в историю не пишет (их нужно угадывать или запоминать, какой пункт какому соответствует), но зато переходит по каталогам как ожидается: в рамках существующей сессии без запроса пароля.
Это баг?
Пользователь Far с 1998 года
-
- Posts: 436
- Joined: Mon 12 Jun, 2006 14:58
- Has thanked: 1 time
- Been thanked: 27 times
- Contact:
NetBox — SFTP/SCP/FTP/FTPS/WebDAV client
Возможная причина того, что NetBox показывает оставшееся время как попало. Файл FileOperationProgress.cpp, функа TFileOperationProgressType::TotalTimeLeft. Возвращается TDateTime(ToDouble(ToDouble(FTotalSize - FTotalSkipped) / CurCps) / SecsPerDay). Чтобы все было правильно, надо изменить так:
Code: Select all
TDateTime(ToDouble(ToDouble(FTotalSize - FTotalSkipped - FTotalTransferred) / CurCps) / SecsPerDay);
NetBox — SFTP/SCP/FTP/FTPS/WebDAV client
Вопрос: а как NetBox определяет, что нужно включать UTF для сообщений сервера?
Потому как через UI на это никак не повлиять, по умолчанию стоит Off, и в итоге получается вот такая фигня в логе
Проблема в том, что свой "disconnect message" этот сервер тоже по русски в уникоде отдаёт, а Far показывает крякозябры
Потому как через UI на это никак не повлиять, по умолчанию стоит Off, и в итоге получается вот такая фигня в логе
Проблема в том, что свой "disconnect message" этот сервер тоже по русски в уникоде отдаёт, а Far показывает крякозябры
NetBox — SFTP/SCP/FTP/FTPS/WebDAV client
SSH/SCP
для симлинки на директорию не ототображается настроеный символ пометки.
для симлинков на файлы отрабатывает корректно.
предполагаю что плагин не возвращает информацию что это симлинк.
Update:
хммм, хотя в атрибутах
Update 2:
для симлинки на директорию не ототображается настроеный символ пометки.
для симлинков на файлы отрабатывает корректно.
предполагаю что плагин не возвращает информацию что это симлинк.
Update:
хммм, хотя в атрибутах
Update 2:
Last edited by faruh on Thu 12 Nov, 2020 10:35, edited 5 times in total.
NetBox — SFTP/SCP/FTP/FTPS/WebDAV client
в Far Manager, version 3.0.5704.0 x86 работает
спасибо!
Last edited by faruh on Mon 16 Nov, 2020 15:32, edited 2 times in total.
NetBox — SFTP/SCP/FTP/FTPS/WebDAV client
По своему посту чуть ранее я делал в багтреккере запись (английский), но там пока тоже тишина. Решил все-таки изучить вопрос поподробнее. То есть кратко, проблема в том, что для определенного сочетания файлов в папке, имеющих подчеркивание в названии, процесс синхронизации показывает файлы, которые гарантированно есть и по аттрибутам совпадают.
**** Этап 1. Сравнение родственников (текущий WinSCP и FAR/NetBox)
Для большого бэкапа на bsd (куча php файлов) сделал синхронизацию (Зеркало на локал) через gui WinSCP 5.17.8 (Build 10803) и после этого повторно, которая сообщила, что разницы не найдено. То есть текущий WinSCP все корректно отрабатывает. Пошел в Far 3.0.5700.0 - для тех же папок куча файлов с подчеркиваниями.
Включил лог, увидел там для этих файлов Local File .. is new, Remote file ... is new, то есть по каким-то причинам NetBox именно считает их новыми.
**** Этап 2. Изучение исходников
Грузим исходники обоих, индексируем полнотекст, роемся
Код конечно сходный по понятными причинам, но есть одна важная разница. В исходниках класс TStringList, реализация которого исторически была повторена, так как все съехали со специфической компиляции под C++ Builder (Borland, VCL) на универсальную. Но Мартин судя по всему не съехал. Поэтому где-то здесь разница.
Сортировка выглядит так, как будто отсортировали по UPPERCASE-у (не лингвиситически), а ищем по CompareString (лингвистически). Я даже пару тестов сделал, скопировав из FAR-а по ordinal сортировке проблемные папки и ища в них бинарно по CompareString. Результат ровно такой как у текущего NetBox-а, то есть если остортировать ordinal по UpperCase-у (как виндовая CompareStringOrdinal делает),а искать CompareString, то не находятся ровно те же файлы.
Глядя в TStringList вроде бы все нормально, список создается отсортированный AddObject должен добавлять файл через бинарный поиск, а потом, когда идет сравнение, IndexOf тоже должен пользоваться им же.
Но вспомнилось, что в NTFS Unsorted mode в far-е выглядит очень похожим на обычный алфавитный порчдок, но чуть-чуть меняется. Соответственно мировой разум подсказывает, что для NTFS это связано как-то тем, что там используется B-TREE для расположения файлов, а для FAT-а по старинке определяется порядком появление файлов в папке. Соответственно, решил проверить на фате, как нетбокс синхронизирует. Заводим том в FAT32 (например TrueCrypt-ом), копируем туда файлы в обратном алфавитном порядке (чтобы нарушить напрочь сортировку) и запрашиваем синхронизацию в NetBox, и тут мы получаем почти полный список файлов. Из чего делаем вывод, что AddObject добавляет не бинарно-сортированно, а подряд, соответственно идем в исходный код и видим
(src\base\Classes.cpp)
Code: Select all
intptr_t TStringList::AddObject(UnicodeString S, TObject *AObject)
{
intptr_t Result = 0;
if (!GetSorted())
{
Result = GetCount();
}
else
{
if (Find(S, Result))
{
....
}
else
{
Result = GetCount();
}
}
InsertItem(Result, S, AObject);
return Result;
}
Для сравнения часть кода Find из Delphi/VCL
Code: Select all
function TStringList.Add(const S: string): Integer;
begin
if not Sorted then
Result := FCount
else
if Find(S, Result) then
case Duplicates of
.....
end;
InsertItem(Result, S);
end;
Может быть это надо было написать в треккере, но я везде какая-то тишина по этой информации, поэтому не думаю, что это принципиально.