Симлинк Google Диск

13

Я хочу синхронизировать папки на моем Mac с Google Drive, не перетаскивая папки в папку Google Drive и не сохраняя структуру папок на моем Mac.

Я предполагал, что для этого вам понадобится символическая ссылка (символическая ссылка).

Итак, я попытался в терминале:

cd /path/to/google/drive
ln -s /path/to/folder/

Папка появилась в моей папке на Google Диске, но она не хотела синхронизироваться.

Поэтому я тогда попробовал

ln -s “/path/to/folder”  “/path/to/google/drive/”

Все еще не работал. Поэтому я сослался на эту статью HowToGeek на эту тему, и там говорилось, что вы должны переместить исходную папку в папку на Google Диске и сделать символическую похожую на исходную родительскую папку.

Я бы хотел, чтобы оригинал отсутствовал в папке Google Drive. Есть ли бесплатная альтернатива символической ссылке? Я посмотрел на jdrivesync, но не смог установить (это будет другая проблема в другом обсуждении).

Спасибо за вашу помощь!

ThoughToo
источник
Есть ли альтернативный способ использовать символическую ссылку для синхронизации папок вне папки Google Диска? Я обновлю вопрос. @techraf
Хотя
Это никогда не говорит, что это невозможно. Может ли быть какой-либо способ, кроме использования символических ссылок, или может быть приложение? @techraf
Хотя и
Я никогда не просил другую команду символической ссылки или что-то еще, поскольку очевидно, что это не будет работать Есть ли приложение или другая команда, которая может достичь того, что я хочу сделать? Нет смысла спорить о том, что я сказал, мы здесь помогаем друг другу.
Хотя и

Ответы:

15

Вы можете использовать жесткую ссылку на каталог, но только в файловой системе HFS +. Вам понадобится GNU, lnчтобы использовать эту -dопцию. Это можно установить с помощью Homebrew :, brew install coreutilsзатем запустите:

sudo gln -d "/path/to/original" "/path/to/drive/folder"

Вам будет предложено ввести пароль. Эта команда создает жесткую ссылку на сам файл / папку, а не на то, как символическая ссылка ссылается на указатель на файл / dir. Поскольку папка ссылок по существу совпадает с исходной папкой, Google Диск синхронизирует ее правильно.

Чтобы отменить жесткую ссылку, используйте unlink "/path/to/drive/folder".

ВНИМАНИЕ: APFS (Apple File System) не поддерживает жесткие ссылки. Если вы планируете установить macOS High Sierra или более позднюю версию и хотите продолжать использовать жесткие ссылки на каталоги, вам потребуется поддерживать файловую систему HFS +. По умолчанию MacOS High Sierra Intaller на Mac с SSD (например, без HDD или Fusion Drive) автоматически преобразует файловую систему HFS + в APFS. Чтобы пропустить конвертацию во время обновления, вам нужно запустить установщик macOS следующим образом:

/Applications/Install\ macOS\ High\ Sierra.app/*/R*/startosinstall --converttoapfs NO

Если вы избежите последнего варианта, вы получите путаницу жестко связанных каталогов /.HFS+ Private Directory Dataпосле обновления.

Grg
источник
1
Спасибо за ответ. Я попытался это, и он сказал, что это был каталог, который я предполагаю, что «ln» сам по себе работает только для реальных файлов?
Хотя и
1
@Mekul К сожалению -d, для каталогов, см. Редактирование.
grg
1
Вы уверены? Просто набрали в Терминале и сказали, что это недопустимый вариант, даже напечатали "man ln", и не было такого понятия, как "-d". Все равно, спасибо за помощь!
Хотя и
1
@Mekul Все хорошо, это моя вина! Я делаю все это на моем телефоне из памяти, в следующий раз я просто подожду, пока я за компьютером! Я считаю, что он входит в пакет 'coreutils' и называется 'gln', чтобы не заменять существующий 'ln'.
grg
1
@Mekul Я имел в виду установить coreutils, а затем команда становится «sudo gln -d…», больше ничего устанавливать.
grg
0

Диск Google кажется бесполезным, если вы не хотите реорганизовать свой диск.

Sugarsync разработан с учетом Windows. Это действительно элегантный и позволяет синхронизировать существующие папки, где бы они ни находились. Я использовал это некоторое время. У него есть клиент Mac, но это все мысли, которые они вкладывают в него. Он не может синхронизировать пакеты правильно. Пакеты - это структура UNIX, которую Mac использует для приложений и файлов данных. Так я избавился от Sugarsync.

Microsoft OneDrive не делает символические ссылки, и я не думаю, что они даже знают, что такое пакеты.

С другой стороны, Dropbox учитывает символические ссылки и правильно обрабатывает пакеты.

Кен Коллинз
источник
0

Hardlink традиционно работает только для файла, а не для каталога.

Хотя HFS + поддерживает жесткую ссылку на каталог, это скорее внутренняя функция, зарезервированная для Time Machine . Используйте это на свой страх и риск.

Вы можете посмотреть на SugarSync , который утверждает,

Резервное копирование и доступ к вашим файлам. Используя существующую структуру папок.

Личный опыт работы с жесткой ссылкой на каталог

  • Я уменьшаю, а затем увеличиваю диск Time Machine, который интенсивно использует жесткую ссылку на каталог
  • Тогда данные резервной копии испорчены
  • Я должен отформатировать раздел, теряя историю
amdyes
источник
-1

В macOS Sierra и с новым решением coreutils в предыдущем посте не работают должным образом.

1) Вам понадобится GNU Coreutils. Вы можете установить его с помощью доморощенного.

brew install coreutils

2) (необязательно) вы можете набрать, gln --helpчтобы получить руководство по использованию этой команды. Это выведет 4 способа:

  1. Использование: gln [ОПЦИЯ] ... [-T] TARGET LINK_NAME (1-я форма)
  2. или: gln [ОПЦИЯ] ... TARGET (2-я форма)
  3. или: gln [ОПЦИЯ] ... TARGET ... DIRECTORY (3-я форма)
  4. или: gln [ОПЦИЯ] ... -t ЦЕЛЬ СПРАВОЧНИКА ... (4-й класс)

    В первой форме создайте ссылку на TARGET с именем LINK_NAME.

    Во 2-й форме создайте ссылку на TARGET в текущем каталоге.

    В 3-й и 4-й формах создайте ссылки на каждый ЦЕЛЬ в СПРАВОЧНИКЕ.

3) Перейдите в google 'папка диска' (GD) или любую подпапку GD через командную строку:

3.a) Вы можете ввести тип терминала cd(пробел после 'd') и перетащить папку / каталог в окно терминала.

3.b) или просто введите свой путь к месту назначения, например, cd /Users/yourAccountName/Google\ Drive/sub/subSubFolder где «yourAccountName» - это имя вашей учетной записи в ОС, а «sub / subSubFolder» - структура вашей папки в GD. Обратите внимание, что вам нужно «экранировать» специальные символы в пути к файлу и имени с обратной косой чертой ('\'), как я это сделал с пробелом в имени папки «Google Drive», поэтому теперь он выглядит как «Google \ Drive».

4) И, как пояснил grgarside в своем посте, нужно использовать sudo и -dключ для выполнения связывания. Итак, просто введите:

sudo gln -d '/Users/yourAccountName/path/to/original/folder/with/your/stuff'
Руслан Зайцев
источник
-2

Два способа загрузить множество файлов / папок в Google Диск без изменения вашей файловой структуры:

  1. С установленным Google Drive для Mac: продублируйте соответствующие папки и перетащите их копии в папку Google Drive.

ИЛИ

  1. Использование Google Диска с Google Chrome: перетащите соответствующие папки в окно Google Диска в Chrome; они загрузят, и это не испортит вашу файловую структуру.

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

Я знаю, что ни один из них не является тем, о чем вы просили, но они оба должны делать эту работу. Комментарий ниже для всего остального.

owlswipe
источник