Смотрите scpи / или sftp. Если ваш ssh уже работает, они должны быть доступны. Существует также sshfs, который позволяет монтировать разделы в виде NFS.
Златовласка
1
scp over ssh отлично работает для меня. Я сам использую Cyberduck для передачи файлов, так как я могу просто перетаскивать, как в Finder.
Гербен
1
Я использовал sftp (используя FileZilla), который получил туда файлы, поэтому запрос теперь закрыт. (Я бы отметил это как принятое.)
Milliways
Обратите внимание, что шифрование ssh может быть медленным на Pi. Несколько лет назад я обнаружил, что Blowfish является быстрым процессором.
Турбьерн Равн Андерсен
NFS - это еще один вариант, который имеет наибольшее значение в мире Unix, поскольку является нативным.
струя
Ответы:
18
За 6 лет, прошедших с момента публикации этого Ответа, многое изменилось.
Поддержка macOS Samba улучшилась, и теперь Apple использует Samba в качестве своей папки по умолчанию для общего доступа к файлам (а afp не работает с более новыми файловыми системами Apple).
Debian Buster теперь использует netatalk 3 - который имеет значительные изменения и требует дополнительной настройки для выполнения каких-либо полезных задач.
Поддержка nfs намного лучше в недавнем Raspbian, но все еще есть проблемы с разрешением на запись от macOS.
Я использую все ftp, Samba, afp и nfs;
главным образом ftp(Filezilla) для обычной передачи файлов в / из Pi
и Sambaдля просмотра Pi Home и общих файловых систем, а также для монтирования моих резервных копий для резервного копирования / восстановления.
Я использовал ftp для решения своей проблемы (как отмечено выше), но недавно обнаружил другой метод, который другие пользователи Mac могут найти полезным.
sudo apt-get install netatalk
Устанавливает протокол appletalk на Pi. Это позволяет использовать следующее (при запросе терминала на Mac) для подключения к Pi
open afp://10.1.1.10 (replace this with your Raspberry Pi IP address)
Затем вы можете использовать Finder (или любой другой FileManager, например QuollEyeTree) для передачи файлов в Pi или из него, используя те же методы, которые вы использовали бы на Mac
Примечание. Это редактирование выполнено другим пользователем, и AFAIK не требуется. Если вы получили сообщение об ошибке. Не удалось получить дескриптор файла, ссылающийся на консоль с командой open afp, попробуйте еще раз с помощью sudo, также убедитесь, что на вашем компьютере Mac настроен удаленный вход. ,
@Paul Fort: как вы изначально добавили, что такое «команда open afp»? Должно ли "afp" быть "ftp"?
Питер Мортенсен
@PeterMortensen вы пробовали (или проверили справку Mac)?
Милливэйс
1
Это круто. Любить это! Спасибо за совет, не знал о возможности сделать это.
ГДГР
7
если вы можете использовать ssh, то, скорее всего scp(копия SSH) будет работать.
В любом случае, я бы установил samba, потому что повсюду слишком много winboxen, и следующая вещь, которая может вам понадобиться, - это доступ из Windows.
Я попробовал scp на Mac, но пока он не работал, файлы не появлялись (я использовал «sudo scp -v world2 //pi@10.1.1.10:» и варианты). Я использовал scp (на Pi) для передачи ключей RSA. sftp кажется самым простым вариантом.
Милливей
scpобычно не требует sudo, без него должно работать нормально.
lenik
scpот Mac до RPi работает как положено и не требует никакого дополнительного программного обеспечения для RPi. netatalkтоже работает хорошо, но, конечно, добавляет программное обеспечение и накладные расходы, которые могут использоваться только изредка.
Бобстро
3
Ты пробовал scpс -rфлагом? Потому что без этого он не будет выполнять рекурсивное копирование.
Если вы хотите скопировать файл или папку world2, я бы так и сделал:
Отличная команда. Быстро и просто. Большое спасибо.
ГутьеррезДев
Вы можете сделать его scpнамного проще, если определите свои хосты в ~/.ssh/config(см. Nerderati.com/2011/03/17/… ) - если вы сконфигурируете свой хост как rpi, то вы можете использовать что-то вроде scp -r world2 rpi:/path/to/copy/of/world2/. Только в случае , если это не очевидно, она работает по - другому тоже, например: scp rpi:.bashrc somedir. Если путь не является абсолютным, он будет относительно $HOME.
ccpizza
3
Если у вас много файлов, вы можете также рассмотреть возможность использования rsync . Вы сможете использовать -Pфлаг (для --partial --progress), который удобен, когда вы ожидаете долгую передачу с потенциальными прерываниями - таким образом частично перенесенные файлы будут сохранены (при нормальных обстоятельствах они будут удалены), так что Когда вы возобновите перевод, это не займет много времени, чтобы завершить перевод.
Так что в вашем случае вы могли бы сделать:
rsync -avP world2/ pi@10.1.1.10:world2
(при условии , что world2это каталог, то эта команда будет копировать содержимое из world2к /world2директории на удаленном компьютере)
Если это более долгосрочное решение, другой вариант - установить Syncthing или Bittorrent Sync на обеих машинах. Он синхронизирует каталоги на нескольких машинах и может обрабатывать большие файлы и каталоги. Это очень удобно в качестве файлового сервера, для резервного копирования и для передачи файлов.
Я только что переключился на Синхронизацию с btsync. Синхронизация предоставляет больше возможностей и контроля (а btsync имеет собственный код).
Затем на вашем Mac зайдите в finder> go> connect to server (cmd + k)> и введите адрес вашего pi, smb://192.Ras.Piзатем вы сможете перемещаться по структуре папок, копировать / вставлять файлы и т. Д.
Зачем отправлять ответ на 2-летний вопрос с принятым ответом. Это даже не хороший ответ, так как SMB является б. протокола. Если у вас есть Mac, попробуйте ответ.
Милливэйс
Зачем отправлять бесполезный комментарий на совершенно хороший ответ, который отличается от любого другого решения? Существует несколько способов перемещения файлов из одного места в другое, этот не требует установки какого-либо другого программного обеспечения на Mac и не требует широкого использования терминала. Зачем публиковать его в ветке N лет? A) решение все еще хорошее, B) вопрос по-прежнему актуален - сегодня утром я выполнил поиск в Google, и это первый результат C) это решение отличается от других предоставленных решений.
Jrubins
Я упоминал об этом в первоначальном вопросе «или мне нужно использовать Samba или подобное» и (неявно) исключил его.
Milliways
«Или мне нужно использовать Samba или подобное» - это не исключение. Итак, я прошу прощения за то, что дал вам совершенно хороший ответ, который (в большинстве случаев, поскольку Samba уже установлена во многих дистрибутивах RPi) намного проще, чем любой из других предоставленных ответов. Я действительно не понимаю, почему вы чувствуете необходимость поспорить с моим ответом и понизить его. Тот факт, что у вас 5000 репутации на Stack Exchange, не означает, что вы не чурка.
Jrubins
0
Просто используйте FileZilla и установите новый сайт из менеджера сайта в меню «Файл». Затем выберите SFTP и введите Rasp имя пользователя и пароль, и все готово.
Установка MacFusion на ваш Mac позволит вам подключить Pi к SSH, подобно тому, как вы бы подключили USB-флешку к вашему Mac. Затем вы можете использовать искатель для копирования файлов в любую папку на Pi, как вам угодно.
scp
и / илиsftp
. Если ваш ssh уже работает, они должны быть доступны. Существует такжеsshfs
, который позволяет монтировать разделы в виде NFS.Ответы:
Я использовал ftp для решения своей проблемы (как отмечено выше), но недавно обнаружил другой метод, который другие пользователи Mac могут найти полезным.
Устанавливает протокол appletalk на Pi. Это позволяет использовать следующее (при запросе терминала на Mac) для подключения к Pi
Затем вы можете использовать Finder (или любой другой FileManager, например QuollEyeTree) для передачи файлов в Pi или из него, используя те же методы, которые вы использовали бы на Mac
Примечание. Это редактирование выполнено другим пользователем, и AFAIK не требуется. Если вы получили сообщение об ошибке. Не удалось получить дескриптор файла, ссылающийся на консоль с командой open afp, попробуйте еще раз с помощью sudo, также убедитесь, что на вашем компьютере Mac настроен удаленный вход. ,
источник
если вы можете использовать
ssh
, то, скорее всегоscp
(копия SSH) будет работать.В любом случае, я бы установил samba, потому что повсюду слишком много winboxen, и следующая вещь, которая может вам понадобиться, - это доступ из Windows.
источник
scp
обычно не требуетsudo
, без него должно работать нормально.scp
от Mac до RPi работает как положено и не требует никакого дополнительного программного обеспечения для RPi.netatalk
тоже работает хорошо, но, конечно, добавляет программное обеспечение и накладные расходы, которые могут использоваться только изредка.Ты пробовал
scp
с-r
флагом? Потому что без этого он не будет выполнять рекурсивное копирование.Если вы хотите скопировать файл или папку
world2
, я бы так и сделал:источник
scp
намного проще, если определите свои хосты в~/.ssh/config
(см. Nerderati.com/2011/03/17/… ) - если вы сконфигурируете свой хост какrpi
, то вы можете использовать что-то вродеscp -r world2 rpi:/path/to/copy/of/world2/
. Только в случае , если это не очевидно, она работает по - другому тоже, например:scp rpi:.bashrc somedir
. Если путь не является абсолютным, он будет относительно$HOME
.Если у вас много файлов, вы можете также рассмотреть возможность использования rsync . Вы сможете использовать
-P
флаг (для--partial --progress
), который удобен, когда вы ожидаете долгую передачу с потенциальными прерываниями - таким образом частично перенесенные файлы будут сохранены (при нормальных обстоятельствах они будут удалены), так что Когда вы возобновите перевод, это не займет много времени, чтобы завершить перевод.Так что в вашем случае вы могли бы сделать:
(при условии , что
world2
это каталог, то эта команда будет копировать содержимое изworld2
к/world2
директории на удаленном компьютере)источник
Если это более долгосрочное решение, другой вариант - установить Syncthing или Bittorrent Sync на обеих машинах. Он синхронизирует каталоги на нескольких машинах и может обрабатывать большие файлы и каталоги. Это очень удобно в качестве файлового сервера, для резервного копирования и для передачи файлов.
Я только что переключился на Синхронизацию с btsync. Синхронизация предоставляет больше возможностей и контроля (а btsync имеет собственный код).
Их пакет Debian / Ubuntu на apt.syncthing.net отлично работал для меня, и я использовал это руководство в качестве руководства
источник
Настройте совместное использование SMB на своем Pi, http://raspberrywebserver.com/serveradmin/share-your-raspberry-pis-files-and-folders-across-a-network.html
Затем на вашем Mac зайдите в finder> go> connect to server (cmd + k)> и введите адрес вашего pi,
smb://192.Ras.Pi
затем вы сможете перемещаться по структуре папок, копировать / вставлять файлы и т. Д.источник
Просто используйте FileZilla и установите новый сайт из менеджера сайта в меню «Файл». Затем выберите SFTP и введите Rasp имя пользователя и пароль, и все готово.
источник
Самым простым способом, который я нашел, было использование Cyberduck.
отмените выбор анонимного входа и подключитесь.
источник
Установка MacFusion на ваш Mac позволит вам подключить Pi к SSH, подобно тому, как вы бы подключили USB-флешку к вашему Mac. Затем вы можете использовать искатель для копирования файлов в любую папку на Pi, как вам угодно.
источник