автомонтирование с sshfs на macOS каталине - PullRequest
2 голосов
/ 26 марта 2020

Я пытаюсь настроить автомонтирование конечных точек S SH, используя automount и sshfs в macOS Catalina. Тем не менее, это не работает, и я не уверен, почему.

  1. /etc/auto_master
+auto_master        # Use directory service
#/net           -hosts      -nobrowse,hidefromfinder,nosuid
/home           auto_home   -nobrowse,hidefromfinder
/Network/Servers    -fstab
/-          -static
# custom; auto-mount wolverine (parker lab setup)
/-  auto_wolverine  -nosuid
/etc/auto_wolverine
/System/Volumes/Data/wolverine/home -fstype=sshfs,reconnect,nodev,follow_symlinks,allow_other,StrictHostKeyChecking=no,IdentityFile=IDFILE,port=PORT,ServerAliveInterval=360,ServerAliveCountMax=3 USER@HOST:/home
/etc/sythetic.conf

wolverine /System/Volumes/Data/wolverine

Я также символически связал двоичный файл sshfs с /usr/local/bin/mount_sshfs согласно одному из учебных пособий, которые я видел. Однако, когда я пытаюсь открыть целевой каталог (после обновления монтирования), он говорит No such file or directory. Любая помощь будет оценена.

1 Ответ

3 голосов
/ 03 апреля 2020

Проблема в том, что automount пытается найти mount_sshfs внутри /sbin. Итак, хотя вы создали эту символическую ссылку, она недоступна для automount.

Поскольку macOS Catalina, /sbin монтируется как том только для чтения , значит, вы выиграли ' не сможет создать необходимую символическую ссылку: /sbin/mount_sshfs -> /usr/local/bin/sshfs. Вы можете найти больше информации на веб-странице поддержки Apple .

Одна вещь, которая работала для меня с предыдущими версиями для macOS 10.15 Catalina отключала Защита целостности системы и создавала необходимые символическая ссылка из раздела Recovery OS. Но я не знаю, работает ли все еще с Каталиной.

Вы можете найти, как отключить SIP в этом документе .

Если вам, наконец, удастся создать символическую ссылку вам, вероятно, потребуется добавить следующий демон, чтобы включить расширение ядра для автомонтирования:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Disabled</key>
    <false/>
    <key>Label</key>
    <string>sysctl</string>
    <key>ProgramArguments</key>
    <array>
        <string>/bin/bash</string>
        <string>-c</string>
        <string>/Library/Filesystems/osxfuse.fs/Contents/Resources/load_osxfuse; /usr/sbin/sysctl -w vfs.generic.osxfuse.tunables.allow_other=1</string>
    </array>
    <key>RunAtLoad</key>
    <true/>
</dict>
</plist>

Назовите его load.osxfusefs.tunables.plist и поместите его внутри /Library/LaunchDaemon

Вы можете найти очень хорошо объясненное руководство в этом ответе от Apple StackExchange.

...