Сеть / Удалённый доступ 12 мая 2026 г.

2026 SFTP, rsync и scp по SSH: большие файлы на арендованные Mac mini ProxyMac в HK / JP / KR / SG / US без переполнения uplink

Инженерная команда ProxyMac 12 мая 2026 г. ~14 мин чтения

Команды, которые загружают датасеты, архивы Xcode или CI-артефакты на хосты Mac mini на Apple Silicon в Гонконге, Японии, Корее, Сингапуре или США, часто начинают с простого scp—и затем видят, как передача ползёт, обрывается на середине или злит всех в одной кофейне с Wi-Fi. Редко виноват сам «медленный SSH»; чаще это выбор инструмента × контроль перегрузки × семантика возобновления × порядок сброса на диск на пути с реальной RTT. В этом гайде (1) словарь симптомов, (2) матрица из четырёх строк для SFTP vs rsync vs классический scp, (3) справедливость по полосе, (4) стратегии частичной передачи на нестабильной последней миле, (5) операционный план из девяти шагов и явные ссылки на настройку клиента при большой RTT, зависания MTU / PMTUD, параметры TCP keepalive и межрегиональную задержку.

  • Скрытая связь: заполненный uplink по SSH голодает и события мыши VNC — согласуйте bulk-задачи с GUI по гайду между регионами.
  • Миф возобновления: простой scp не «магически» продолжает файл с середины; нужны rsync --partial, отдельные SFTP-клиенты или пошаговые инструменты.
  • Диск: APFS на mini всё равно требует запаса свободного места для разреженных записей; «100 % полный» том посреди копии реже портит биты, но чаще рвёт задания.

Почему bulk по SSH ощущается хуже интерактивной оболочки

Интерактивный SSH терпит джиттер: люди печатают медленнее пропускной способности. Один долгий bulk-поток держит окно перегрузки высоким, выявляет каждую микропотерю на транстихоокеанских путях и плохо уживается с middlebox, которые режут устойчивый throughput. При RTT выше ~120 мс мелкие ошибки буфера отправки выглядят как «застыли на 80 %», хотя это ожидание ACK — сначала настройте клиент по рецепту IPQoS и шифров, потом обсуждайте инструменты.

Измеряйте, прежде чем винить регион: логируйте RTT, число ретрансляций и goodput (байты, записанные на mini в секунду по настенным часам). Если goodput рухнул при ровной RTT, подозревайте CPU — сжатие или слабые шифры — или давление диска fsync.

Матрица: SFTP, rsync по SSH и классический scp

Инструмент Частичное возобновление Дельта каталога Встроенное ограничение Лучший дефолт для много-ГБ деревьев
OpenSSH scp (legacy) Нет — с нуля всё дерево каждый раз нет полноценного флага только мелкие разовые задачи
SFTP / GUI-клиенты часто да (зависит от клиента) зеркала различаются лимиты в UI передачи дизайнерам, drag-and-drop
rsync -e ssh да с --partial сильно — режимы контрольных сумм --bwlimit CI-артефакты и датасеты
batch sftp / шаблоны reget скриптуемо с осторожностью по одному файлу вместе с trickle или QoS строгие цепочки через bastion

Если вы уже устранили чёрные дыры PMTUD, но видите пилообразный throughput, перенесите разговор с «какой шифр» на сколько параллельных сессий: три безлимитных rsync часто проигрывают одному ограниченному с более глубоким окном.

Справедливость полосы: домашний uplink против colocated mini

Mini ProxyMac сидят на хорошо запасённом egress ЦОД; узкое место обычно — ваш асимметричный домашний канал. Используйте rsync --bwlimit=… в KiB/s, чтобы оставить место DNS, Slack и Zoom — особенно если руководство делит VLAN с вашим пушем датасета HK → US. Сочетайте числовые лимиты с окнами по времени суток: тяжёлый rsync ночью, когда Wi-Fi менее занят.

Предупреждение о параллелизме: обёртки rsync --parallel умножают TCP-потоки — на потерянных путях они могут увеличить суммарное время. Начните с одного потока, добавляйте параллелизм только после чистой базы iperf3 или копии файла.

Если корпоративная политика гонит трафик через HTTP-прокси, bulk SSH может быть уже обёрнут — см. отдельный гайд ProxyCommand в семействе статей про корпоративную сеть; не наслаивайте два ограничителя без измерений.

Возобновление, частичные файлы и атомарная передача команде

Всегда комбинируйте --partial с детерминированным каталогом частичных файлов (напр. .rsync-partial), чтобы эксплуатация видела незавершённые файлы. Для сценария «опубликовать, когда готово» пишите в staging-путь на mini, затем mv на место — атомарное переименование на том же томе APFS скрывает полуфабрикатные tarball. Зафиксируйте политику контрольных сумм: -c проверяет целостность ценой CPU; на доверенном LAN можно пропустить, на трансграничных путях с историей bit flip — включить.

Держите ServerAliveInterval и ServerAliveCountMax в согласовании с руководством по TCP user timeout, чтобы NAT не убивал ночные джобы молча; причины разрывов пишите в тикет.

Девять шагов для устойчивых пушей в mini HK / JP / KR / SG / US

  1. Зафиксировать намерение: размер источника, число файлов и допустимое окно завершения в тикете.
  2. Проверка path MTU: триаж из статьи про MTU до многочасовых копий.
  3. Выбор инструмента: по умолчанию rsync для деревьев; GUI SFTP для разовых креативных файлов.
  4. Ограничение: --bwlimit или QoS на маршрутизаторе; подтвердите запас uplink коротким тестом скорости.
  5. Тюнинг клиента: для bulk — IPQoS=throughput.
  6. Запас диска: df -h на mini; держите ≥15 % «дыхания» APFS.
  7. Запуск с логами: verbose через tee локально; секреты не копируйте в публичные каналы.
  8. Проверка: контрольная сумма или сравнение размеров; выборочно открыть файлы.
  9. Разбор: при срыве SLA приложите графики RTT + статистику rsync, а не субъективные «тормозит».

FAQ

Нужно ли снова шифровать образы диска внутри rsync? Уже сжатые форматы мало выигрывают от SSH-сжатия; отключайте при упоре в CPU.

Бьёт ли AFP/SMB SSH на той же mini? Иногда для нативных Finder-потоков, но SSH+rsync остаётся дружелюбным к файрволу и скриптам — выбирайте по workflow, не по догме.

А конвейеры zstd? Отличны, когда CPU дешевле полосы — с теми же keepalive и гигиеной MTU.

Почему bare-metal Mac mini всё ещё выигрывает на bulk-ingest

Арендованные узлы Mac mini M4 дают предсказуемый NVMe-throughput, без соседей, ворующих IOPS, и нативные пути macOS для Xcode и креативных стеков — удобно, когда стратегия HK / JP / KR / SG / US требует одинакового рецепта ingest в каждой географии. Сравните регионы на странице тарифов, репетируйте переносы в справочном центре, а для GUI-проверки посреди копии держите VNC в отдельном классе QoS, не смешивая с bulk SSH.

Данные в нужный регион — затем автоматизация

SFTP · rsync · HK / JP / KR / SG / US