Как я могу автоматически смонтировать тома afp при запуске?


8

Я купил NAS для хранения своих медиафайлов и хотел бы при загрузке автоматически смонтировать тома. В настоящее время я открываю эти тома как элемент для входа в Системные настройки> Учетные записи.

Это работает, но, к сожалению, он также выскакивает каждый том в новом окне Finder при загрузке. Проверка скрытия элементов скрывает только процессы, а не окно Finder от этих процессов. Решение, которое позволяет избежать этих всплывающих окон Finder, было бы замечательно.

Я хотел бы избежать любых сторонних приложений для достижения этой цели.


Ответы:


4

Я нашел этот скрипт на http://hints.macworld.com/article.php?story=20050215082247458 , но я воспроизведу его ниже.

  • Откройте редактор сценариев и вставьте:
    установите sfiles в «afp: // user: pass @ host / volume»  
    расскажите приложение "Искатель"  
        смонтировать том sfiles   
    конец сказать
  • Замените sfilesна соответствующие детали вашего объема AFP.
  • Добавьте соответствующие другие строки для других ваших серверов, как над, так и внутри tell
  • Сохраните этот скрипт в безопасном месте и добавьте его на панель элементов входа (вместо томов, которые у вас есть)

4

TL; DR

Используйте AppleScript, но не указывайте имя пользователя или пароль .


Фон

В моем случае ни одно из предложений, которые я нашел в Интернете, не сработало идеально.

У меня было несколько томов AFP, которые я хотел смонтировать автоматически. Следуя советам, данным здесь и в других местах, очевидным решением, похоже, был файл AppleScript с чем-то вроде этого:

tell application "Finder"
    try
        mount volume "afp://user@server/a"
        mount volume "afp://user@server/b"
        mount volume "afp://user@server/c"
    end try
end tell

Теперь это почти работает. С точки зрения Finder все выглядит так, как будто все тома правильно смонтированы. Однако, если вы используете терминал, вы можете увидеть проблему. Произошло следующее:

  • Объемы установлены в каталогах /Volumes/a, /Volumes/b-1и /Volumes/c-1.

  • Есть пустые каталоги /Volumes/bи /Volumes/c.

Забота ли вы об этом зависит от вашего предполагаемого использования, но мне нужно решение, в котором пути файловой системы более предсказуемы.

Потратив много времени, играя со всеми вариантами этого, кажется, что решающим моментом является следующее: если вы указываете имя пользователя и уже подключили несколько томов с того же сервера AFP, все идет не так.

Отсюда и следующее решение.


Решение

  1. Убедитесь, что все работает правильно, когда вы используете Finder: вы можете монтировать тома, нажимая на общий ресурс, и вам не нужно вводить какие-либо пароли. Если Finder запрашивает имя пользователя и пароль, попросите его запомнить пароль.

  2. Создайте приложение AppleScript следующим образом. Откройте редактор AppleScript. Напишите кусок кода, как это:

    tell application "Finder"
        try
            mount volume "afp://server/a"
            mount volume "afp://server/b"
            mount volume "afp://server/c"
        end try
    end tell
    

    Здесь «сервер» - это имя хоста сервера (если Finder отображает имя сервера «x», вы можете попробовать использовать имя хоста «x.local»). Замените «a», «b» и «c» на имена томов, которые вы хотите смонтировать. Убедитесь, что вы не пытаетесь указать какие-либо имена пользователей или пароли. Скомпилируйте и сохраните его, используя формат файла «Приложение» (вы получите расширение имени файла «.app» автоматически).

  3. Проверьте это, запустив приложение, которое вы только что создали. Скорее всего, он запрашивает имя пользователя и пароль; введите их и снова скажите, чтобы они запомнили пароль.

  4. Размонтируйте (используя Finder) и попробуйте снова. Это должно просто работать, ничего не спрашивая. Пути должны быть правильными (без -1суффиксов).

  5. Добавьте приложение к своим элементам входа в систему (Системные настройки; Пользователи и группы).

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.