Неблокування редагування віддалених файлів через SSH


5

У OS X мені часто потрібно редагувати файли, які фактично зберігаються на віддаленому сервері Linux, до якого я підключаюсь через SSH через VPN. Коли я перебуваю у фізичному розташуванні сервера, я можу легко змонтувати каталог цих файлів за допомогою sshfs та перетягнути їх у піднесений текст. Читання та запис файлів буде майже миттєвим.

Однак, коли я монтую каталог через sshfs на FUSE для OS X , завантаження списків каталогів займає назавжди , і коли я втягую весь каталог у піднесений текст, тоді зберігаю файл, збереження блокує весь інтерфейс, поки файл не буде нарешті збережено на сервері. *

Я також спробував відкрити каталог в Cyberduck і редагувати файли звідти. Хоча збереження працює чудово (оскільки він асинхронний), у цього є два недоліки: я можу відкрити відразу кілька файлів - не цілі папки - і тому не можу легко шукати файли (як CmdTу Sublime). Крім того, іноді воно втрачає зв’язок, і тоді мені доведеться кинути і перезапустити Cyberduck, щоб він знову працював.

Чи є спосіб редагувати файли з віддаленої машини без блокування? Може, через налаштування sshfs? Монтаж файлів по-іншому?

Мені дуже хотілося б, щоб файл передавався у фоновому режимі, коли я його зберігаю, не вимагаючи, щоб файлова система чекала.

* Здається, це відома проблема з Sublime Text, але я не можу використовувати жоден інший редактор. Я також розмістив випуск на їх форумах .


Чи є у вас однакові проблеми, скажімо, scp з того самого джерела? Або це специфічно для місцевого монтажу паїв?
MariusMatutiae

scpзазвичай швидкий. Я думаю, що проблема полягає в поєднанні піднесеного тексту з базовим sshfs. Я спробую з іншим кріпленням SMB пізніше.
slhck

Виходить SMB набагато швидше і не блокується так довго. Оскільки у всіх не буде SMB на сервері, я залишу це питання, шукаючи рішення з SSH / sshfs.
slhck

Відповіді:


2

Якщо ви ще не пробували цього, настійно рекомендую Transmit . Я не робив прямих тестів на голову, але у мене виникло багато проблем із використанням різних варіантів FUSE, і вони майже зникли з моменту початку використання програми Transmit. У нього чудовий інтерфейс користувача, у тому числі невеликий помічник панелі інструментів, який дозволяє легко монтувати спільноти як об'єм OS X, не запускаючи повну програму. Ви можете спробувати, перш ніж купувати, але для мене це було непрофесійно. Так, час від часу справи відбуваються трохи повільно, але особисто я думаю, що для мене це має більше спільного з деякими основними проблемами, які я маю з OS X, ніж щось із самою передачею.

Якщо ви зареєстрований користувач, ви можете спробувати останню збірку Sublime Text 3, щоб побачити, чи щось покращує. Ще один варіант, який ви можете спробувати - це налаштування

"atomic_save": false

у ваших налаштуваннях користувача ( Sublime Text -> Preferences -> Settings - User), тому ви просто виконуєте одну операцію збереження через з'єднання SSH замість збереження та переміщення. Зверніть увагу, що це особливість піднесеного тексту 3.

Нарешті, якщо ви хочете створити ретельний звіт про помилки, будь ласка, відкрийте проблему з неофіційним трекером помилок на GitHub / SublimeText / Issues. Це ресурс, що підтримується спільнотою, з яким може бути або не може звертатися Джон Скіннер, автор ST, але це єдине місце для подання помилок і дозволяє значно краще відстежувати, ніж форуми.


Я весь час використовував ST3, але ви знаєте, що, відключення atomic_saveопції збільшило швидкість економії менше ніж на секунду порівняно з декількома секундами. Дякую! (До речі, бета-версія ST3 вже є загальнодоступною.)
slhck

Радий, що це спрацювало! Я знаю, що бета-версія є загальнодоступною, але останні версії на сайті sublimetext.com/3dev потребують реєстрації
MattDMo

2

Це може чи не стосується вас, але я виявив, що плагін GitGutter був причиною мого уповільнення роботи sshfs.


Спекулятивні рішення та корисні підказки були б кращими як коментар. Збережіть відповіді для остаточного рішення.
fixer1234

Погоджено, за винятком вимоги мати 50 балів репутації для коментарів. Ця вимога для мене не має сенсу.
bdombro
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.