Монтируем удалённый сервер через sshfs в mac os
by manjarqo
Пользователи Mac OS пришедшие в него, как и я, из мира Linux, конечно же знают, что терминал настолько крутая вещь, и в нём можно творить такое… такое… В общем в нём можно делать всё и везде. Когда я случайно нашёл в своём Hackintosh’е терминал, слёзы радости проступили на моих глазах, а когда настроил монтирование своих серверов в папку в Finder по SSH ключу, я спутал это состояние с достижением нирваны или самадхи, в общем чего-то эдакого из Буддизма. В общем те кому интересно, как этого достичь «Велкоме» в статью.
Итак друзья, как оказалось ничто человеческое Маку не чуждо и в нём тоже есть довольно годный пакетный менеджер, точнее их не один даже, но вот один прям годнота. Имя ему «Homebrew«, почитать о нём и установить, если у вас его ещё нет, можно на его официальном сайте https://brew.
Homebrew-Cask, информация по нему на его официальном сайте https://caskroom.github.io/. Для тех кто мне, по какой-то причине, решил не глядя довериться, вот две команды на установку обоих:
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" brew tap caskroom/cask
Считаю что он у вас уже есть и потому даю сразу команды ввода в терминал уже адресованные к ним. Для реализации поставленных целей нам потребуются два пакета, первый насколько я понимаю нужен для монтирования в Мак, а второй итак вроде понятно:
- osxfuse
- sshfs
Установим их выполнив поочередно команды в терминале:
brew cask install osxfuse brew install sshfs
Создаём в домашней директории две папки:
md /Users/<имя_пользователя>/. ssh md /Users/<имя_пользователя>/sshf
Первая, как видно из команды, скрытая, в неё нам нужно положить ключи доступа к серверу по ssh,
вторая может иметь абсолютно любое понравившееся вам имя, в неё просто будет монтироваться файловая система вашего сервера. Прошу обратить внимание на то что <имя_пользователя> необходимо исправить на имя ВАШЕГО пользователя.
Небольшое лирическое отступление, может вы ещё не в курсе, что в Finder можно включить отображение скрытых файлов комбинацией клавиш Cmd + Shift + >
Итак ключи лежат на месте можно проверить всё ли у нас работает подключившись к серверу по SSH:
ssh -i ~/.ssh/id_rsa <имя_пользователя>@127.0.0.1
где вместо 127.0.0.1 необходимо подставить ваш ip и вместо <имя_пользователя>, ваш логин на сервере.
Если подключение получилось, то можно пробовать монтировать, но предварительно не забудьте выйти из ssh сессии на сервере, простой командой exit, после чего уже вводим
sshfs <имя_пользователя>@127. 0.0.1:/ ~/sshfs
где вместо 127.0.0.1 необходимо подставить ваш ip и вместо <имя_пользователя>, ваш логин на сервере.
Если терминал не ругнулся, идём в Finder проверять.
Маководы со стажем скажут, что есть же Macfusion и с помощью него всё тоже самое можно сделать в графическом режиме, соглашусь, но почему то последний релиз Macfusion’а оказался не совместим с Mac OS X Sierra.
Надеюсь эта статься окажется кому-нибудь полезной. Я желаю всем счастья =)
P.S. из 2021 года: К сожалению sshfs исчез из homebrew в Big Sur, потому пришлось искать новый инструмент о нём написал в этом топике.
manjarqo
Гик, хакинтошник, линуксоид, считаю себя flutter разработчиком. Завёл канал, в котором изначально хотел показывать как я с нуля и до бесконечности погрузился в дорвей тематику, а в итоге просто рассказываю о себе, своих успехах и неудачах в сайтах, приложениях, офлайн проектах. Добро пожаловать в https://www.youtube.com/channel/UCbrTUrElICx4pewX0NbolmQ
www. youtube.com/channel/UCbrTUrElICx4pewX0NbolmQ
9 376
Categories СофтTags mac os, sshfsИспользуем SSHFS в Linux и Mac OS X.
Сегодня мы поговорим о файловой системе Secure Shell FileSystem (сокращенно SSHFS) благодаря которой мы сможем использовать удаленное управление файлами, при этом делать этом соблюдая безопасность, так как подключение будет осуществляться через SFTP, который в свою очередь работает через SSH. Мы рассмотрим работу с SSHFS в Linux и Mac OS X. Сразу замечу тот факт, что при нестабильном соединении можно будет столкнуться с проблемами, так как основное предназначение SSH, это не гарантированность соединения, а безопасность.
В свое время я даже пытался использовать SSHFS в Windows, но честно говоря ничего хорошего из этого не вышло, так как не смог найти ни одного устраивающего меня решения, так что отказался от этой идеи. Если вам, дорогие читатели, встречалось что-либо адекватное под Windows, пишите в комментарии, с удовольствием ознакомлюсь.
SSHFS в Mac OS X.
Дано:
- Удаленный сервер с SSH, к которому мы хотим подключиться.
- Mac OS X > 10.5.
Для начала нам поддержка FUSE. Раньше я использовал MacFUSE от Google, но он перестал обновляться, так что теперь мое внимание направлено на более динамичную разработку — FUSE for OS X, которая и позиционируется, как продолжение MacFUSE.
Все необходимое мы возьмем с официального сайта на гите http://osxfuse.github.com/
- Скачаем последнюю версию OSXFUSE.
На момент написания статьи версия OSXFUSE 2.5.4, DMG которого можно скачать по ссылке https://github.com/downloads/osxfuse/osxfuse/OSXFUSE-2.5.4.dmg.
Откроем DMG пакет и нажмем Install OSXFUSE 2.5.
Установим OSXFUSE, как любое другое приложение.
ВАЖНО: при выборе компонент установки поставить галку «MacFUSE Compatibility Layer».
- Скачаем пакет SSHFS.
На момент написания статьи версия SSHFS 2. 4.1., скачать можно по ссылке https://github.com/downloads/osxfuse/sshfs/SSHFS-2.4.1.pkg.
Установим пакет SSHFS.
Теперь нам понадобится приложение MacFusion, последнюю версию которого мы можем взять с официального сайта http://macfusionapp.org/.
Скачаем и распакуем его в папку Программы.
Запустим Macfusion, откроется подобное окно.
При первом запуске он спросит, хотим ли мы запускать его как сервис. Я обычно соглашаюсь, так как хочу получать автомонтирование.
Нажмем на + слева внизу, выберем SSHFS.
Укажем имя подключения,хост, логин, пароль и домашнюю директорию. После заполнения полей нажмем OK.
Нажмем Mount на появившемся соединении.
Перейдем по пути /Volumes и увидим наше подключение.
СОВЕТ: Если вы ходите на удаленный сервер через сертификат, то для подключения будет использоваться именно он, игнорируя связку User Name/Password.
Распространенная проблема: соединение не устанавливается, жалуется на непредвиденную ошибку.
Решение: Нажмите CMD+L. Откроется лог. Если вы увидите ошибку «Library not loaded: /usr/local/lib/libfuse.0.dylib», значит при установке OSXFUSE вы забыли поставить галку «MacFUSE Compatibility Layer». Заново запустите установку и поставьте галку. После этого проблема будет решена.
Управление подключениями SSHFS так-же возможно через командную строку, но в рамках этой статьи я не буду рассказывать про это, так как, в отличие от серверов, на десктопах не гнушаюсь GUI.
SSHFS в Linux на примере Debian и Ubuntu.
В отличие от первой части статьи, в которой мы подключали SSHFS без использования консоли, потребность в SSHFS для Linux часто возникает на серверах, так что здесь мы все будем делать исключительно через консоль.
- Linux (в примере использован Debian, точно так-же все настраивается в Ubuntu)
- OpenSSH клиент.
- Установим необходимые пакеты:
1 | apt-get install fuse-utils sshfs |
- Подгрузим поддержку fuse в ядро через modprobe.
1 | modprobe fuse |
- Убедимся, что fuse успешно подгружен через сообщения ядра.
1 | dmesg |grep fuse |
На выходе мы должны получить что-то типа этого:
[ 409.252165] fuse init (API version 7.13)
- Создадим директорию, в которую будем монтировать SSHFS.
1 | mkdir /mnt/sshfs-test |
Примонтируем SSHFS в директорию.
1 | sshfs [email protected]:/ /home/ |
Насладимся полученным результатом.
Отмонтируем SSHFS.
1 | fusermount -u /mnt/sshfs-test/ |
Для настройки монтирования через fstab, пропишем следующую строку:
1 | nano /etc/fstab |
sshfs#admin@SITE:/mnt/sshfs-test /home fuse 0 0
Этот способ заработает, только если для пользователя, под которым будет происходить монтирование, будет использоваться аутентификация по сертификату (в примере admin). О том, как реализовать аутентификацию по сертификату, вы можете почитать в моей статье SSH. Великий и могучий.
На этом все, спасибо за внимание.
Linux Mac OS Tutorial
Смотрите также
- Как добавить постоянные статические маршруты (persistent static routes) в Mac OS X.
- Знакомство с CMake. Часть 3. CMakeCache, модули CMake, зависимости сборки.
- maybe? Интересная песочница для отладки операций с файлами в скриптах Linux.
- Знакомство с CMake. Часть 2. Переменные, условия, сообщения, опции.
- Знакомство с CMake. Часть 1. Установка, CMakeLists.txt, сборка.
— macFUSE Почтовый архив
— macFUSE- Выпуск macFUSE 4.4.3
Опубликовано 17 апр 2023 - Выпуск macFUSE 4.4.2
Опубликовано 18 фев 2023 - Выпуск macFUSE 4.4.1
Опубликовано 19 августа 2022 г. - Выпуск macFUSE 4.4.0
Опубликовано 18 июня 2022 г. - Выпуск macFUSE 4.3.1
Опубликовано 04 мая 2022 г. - Выпуск macFUSE 4.3.0
Опубликовано 25 апр 2022 - Выпуск macFUSE 4.2.5
Опубликовано 08.04.2022 - Выпуск macFUSE 4. 2.4
Опубликовано 20 декабря 2021 г. - Выпуск macFUSE 4.2.3
Опубликовано 16 ноя 2021 - Выпуск macFUSE 4.2.2
Опубликовано 10 ноября 2021 г. - Выпуск macFUSE 4.2.1
Опубликовано 01 Окт 2021 - Выпуск macFUSE 4.2.0
Опубликовано 12 июня 2021 г. - Выпуск macFUSE 4.1.2
Опубликовано 16 мая 2021 г. - Выпуск macFUSE 4.1.1
Опубликовано 16 мая 2021 г. - Выпуск macFUSE 4.1.0
- Выпуск macFUSE 4.0.5
Опубликовано 02 января 2021 г. - Выпуск macFUSE 4.0.4
Опубликовано 30 ноября 2020 г. - Выпуск macFUSE 4.0.3
Опубликовано 18 ноя 2020 - Выпуск macFUSE 4.0.2
Опубликовано 08 ноя 2020 - Выпуск macFUSE 4.0.1
Опубликовано 01.11.2020 - Выпуск macFUSE 4.0.0
Опубликовано 30 Окт 2020 - Выпуск FUSE для macOS 3.11.2
Опубликовано 05 Окт 2020 - Выпуск FUSE для macOS 3.11.1
Опубликовано 02 Окт 2020 - Выпуск FUSE для macOS 3.11.0
Опубликовано 04 июля 2020 - Выпуск FUSE для macOS 3.10.6
Опубликовано 08 июня 2020 г. - Выпуск FUSE для macOS 3.10.5
Опубликовано 27 мая 2020 г. - Выпуск FUSE для macOS 3. 10.4
Опубликовано 05 декабря 2019 - Выпуск FUSE для macOS 3.10.3
Опубликовано 15 Сен 2019 - Выпуск FUSE для macOS 3.10.2
Опубликовано 25 июля 2019 г. - Выпуск FUSE для macOS 3.10.0
Опубликовано 06 Июл 2019 - Выпуск FUSE для macOS 3.9.2
- Выпуск FUSE для macOS 3.9.1
Опубликовано 28 мая 2019 г. - Выпуск FUSE для macOS 3.9.0
Опубликовано 03 мая 2019 г. - Выпуск FUSE для macOS 3.8.3
Опубликовано 18 декабря 2018 г. - Выпуск FUSE для macOS 3.8.2
Опубликовано 01 Июл 2018 - Выпуск FUSE для macOS 3. 8.1
Опубликовано 18 июня 2018 г. - Выпуск FUSE для macOS 3.8.0
Опубликовано 07 мая 2018 г. - Выпуск FUSE для macOS 3.7.1
Опубликовано 21 сентября 2017 г. - Выпуск FUSE для macOS 3.7.0
Опубликовано 10 сентября 2017 г. - Выпуск FUSE для macOS 3.6.3
Опубликовано 18 июля 2017 г. - Выпуск FUSE для macOS 3.6.2
Опубликовано 11 июля 2017 г. - Выпуск FUSE для macOS 3.6.1
Опубликовано 08 Июл 2017 - Выпуск FUSE для macOS 3.6.0
Опубликовано 13 июня 2017 г. - Выпуск FUSE для macOS 3.5.8
Опубликовано 16 Апр 2017 - Выпуск FUSE для macOS 3. 5.6
Опубликовано 15 марта 2017 г. - Выпуск FUSE для macOS 3.5.5
Опубликовано 30 января 2017 г. - Выпуск FUSE для macOS 3.5.4
Опубликовано 01 декабря 2016 г. - Выпуск FUSE для macOS 3.5.3
Опубликовано 19 Окт 2016 - Выпуск FUSE для macOS 3.5.2
Опубликовано 26 сентября 2016 г. - Выпуск FUSE для macOS 3.5.1
Опубликовано 18 сентября 2016 г. - Выпуск FUSE для macOS 3.5.0
Опубликовано 06 Сен 2016 - Выпуск FUSE для macOS 3.4.2
Опубликовано 08.08.2016 - Выпуск FUSE для macOS 3.4.1
Опубликовано 24 июля 2016 г. - Выпуск FUSE для macOS 3. 4.0
Опубликовано 16 июня 2016 г. - Выпуск FUSE для OS X 3.3.3
Опубликовано 04 июня 2016 г. - Выпуск FUSE для OS X 3.3.2
Опубликовано 26 мая 2016 г. - Выпуск FUSE для OS X 3.3.1
Опубликовано 23 мая 2016 г. - Выпуск FUSE для OS X 3.3.0
Опубликовано 22 мая 2016 г. - Выпуск FUSE для OS X 3.2.0
Опубликовано 14 февраля 2016 г. - Выпуск OSXFUSE 2.8.3
Опубликовано 18 января 2016 г. - Выпуск OSXFUSE 2.8.2
Опубликовано 25 октября 2015 г. - Выпуск OSXFUSE 2.8.1
Опубликовано 25 сентября 2015 г. - Выпуск OSXFUSE 2.8.0
Опубликовано 14 июня 2015 г. - Выпуск OSXFUSE 2.7.5
Опубликовано 07 Фев 2015 - Выпуск OSXFUSE 2.7.4
Опубликовано 08.01.2015 - Выпуск OSXFUSE 2.7.3
Опубликовано 01 декабря 2014 - Выпуск OSXFUSE 2.7.2
Опубликовано 20 октября 2014 г. - Выпуск OSXFUSE 2.7.1
Опубликовано 15 сентября 2014 г. - Выпуск OSXFUSE 2.7.0
Опубликовано 09 июня 2014 г. - Выпуск OSXFUSE 2.6.4
Опубликовано 01.04.2014 - Выпуск SSHFS 2.5.0
Опубликовано 03 Фев 2014 - Выпуск OSXFUSE 2.6.2
Опубликовано 13 ноября 2013 г. - Выпуск OSXFUSE 2.6.1
Опубликовано 10 августа 2013 г. - Выпуск OSXFUSE 2.6.0
Опубликовано 17 июня 2013 г. - Выпуск OSXFUSE 2.5.6
Опубликовано 01 мая 2013 г. - Выпуск OSXFUSE 2.5.5
Опубликовано 21 марта 2013 г. - Выпуск OSXFUSE 2.5.4
Опубликовано 26 октября 2012 г. - Выпуск OSXFUSE 2.5.2
Опубликовано 13 сентября 2012 г. - Выпуск OSXFUSE 2.5.1
Опубликовано 10 августа 2012 г. - Выпуск OSXFUSE 2.5.0
Опубликовано 01.08.2012 - Выпуск OSXFUSE 2.4.2
Опубликовано 06 июня 2012 г. - Выпуск OSXFUSE 2.4.1
Опубликовано 30 мая 2012 г. - Выпуск OSXFUSE 2. 4.0
Опубликовано 28 мая 2012 г. - Выпуск SSHFS 2.4.1
Опубликовано 11 марта 2012 г. - Выпуск SSHFS 2.4.0
Опубликовано 09 марта 2012 г. - Выпуск OSXFUSE 2.3.9
Опубликовано 19 февраля 2012 г. - Выпуск SSHFS 2.3.0
Опубликовано 22 января 2012 г. - Выпуск OSXFUSE 2.3.8
Опубликовано 17 декабря 2011 г. - Выпуск OSXFUSE 2.3.4
Опубликовано 08.09.2011 - Выпуск OSXFUSE 2.3.3
Опубликовано 04.09.2011 - Выпуск OSXFUSE 2.3.2
Опубликовано 28 августа 2011 г. - Выпуск OSXFUSE 2.3.1
Опубликовано 01.08.2011 - Выпуск OSXFUSE 2. 3.0
Опубликовано 25 июля 2011 г.
Быстрая настройка SSHFS
Быстрая настройка SSHFSВведение
Одной из неприятностей CS 105 является то, что программы должны
бежать по Уилксу; это означает, что ваши файлы должны быть доступны
там. Это не проблема, если вы работаете над Кнутом одного из
лабораторных Mac, потому что эти компьютеры делят все файлы с Уилксом. Но
что делать, если вы работаете на своем ноутбуке? Один из подходов заключается в редактировании
локально, а затем используйте scp
или замазка
для копирования
файлы туда и обратно. Но это неуклюже. Во-вторых, научиться
используйте редактор, например emacs
или vim
, который
способны работать внутри окна удаленного терминала. Это
отличный вариант, рекомендую. Но у некоторых людей есть
другой предпочтительный редактор, для которого требуется локальный графический интерфейс.
Так что было бы неплохо, если бы ваши файлы автоматически делились с
Уилкс? Оказывается, вы можете достичь этого результата с помощью sshfs
, который доступен для Linux, Mac и (вроде)
Окна.
Основная идея
По сути, sshfs
работает следующим образом: вы сообщаете ему имя
из пустого каталога (папки) на локальном компьютере и заполненного
дерево каталогов на удаленной машине. После этого программа сделает
удаленное дерево волшебным образом появляется в вашей локальной папке. Для
Например, предположим, что у вас есть папка с именем ~/courses
на
Кнут (или, что то же самое, Уилкс). Вы можете создать локальный каталог
по имени knuthstuff
и передать его имя sshfs
.
(Это называется «монтированием» удаленной файловой системы.) Теперь все ваши
существующие файлы из ~/courses
волшебным образом появятся в кнутштуфф
! Вы можете их читать, писать и редактировать
сколько душе угодно. Затем вы можете переключиться в окно Уилкса, чтобы
скомпилировать и запустить программу. Довольно прикольно!
Настройка
Linux и Mac OS X
Для начала вам необходимо установить sshfs 9ПО 0289. В Linux и Mac
sshfs
является частью системы FUSE, которая
умеет делать намного больше, чем просто sshfs
, так что вы
необходимо установить как FUSE, так и sshfs
. Большинство Linux
дистрибутивы уже включают FUSE и часто sshfs
as
хорошо. Если нет, вы можете использовать менеджер пакетов для его установки.
(Пользователи UBuntu и Debian могут просто использовать apt-get install
sshfs
, который также установит FUSE.
Пользователи MacOS могут получить рабочую установку с сайта OSX FUSE.
В любой ОС вам понадобится пустой каталог для монтирования. Его
часто полезно дать этому каталогу то же имя, что и на удаленном
стороны (хотя это не обязательно). Если вы используете графический интерфейс, вы можете
создать пустой каталог в удобном месте. Или из команды
строку, вы можете использовать mkdir
:
мкдир ~/курсы/cs105(Предположим, что у вас уже есть
~/courses
. )Окна
У пользователей Windows есть небольшая проблема. Вы можете выполнить поиск "Windows sshfs" и узнайте, что есть гитхаб проект, но я не знаю, работает ли он на самом деле, и какой версии Windows, на которых он работает. Так что ты в значительной степени сам по себе.
Использование
Один небольшой недостаток sshfs
заключается в том, что он зависит от вашего
сетевое соединение живое. В частности, это означает, что если вы
закройте свой ноутбук, вам, вероятно, придется размонтировать и перемонтировать
удаленная файловая система. Подробнее см. ниже.
Linux и Mac OS X
Чтобы смонтировать удаленную файловую систему, вы используете команду sshfs
.
из окна терминала (в Mac OS X запустите приложение «Терминал»;
вы можете найти его с помощью Spotlight). В моих примерах я собираюсь смонтировать
удаленная файловая система с именем ~/courses/cs105
на локальный
каталог с именем ~/classes/homework
.