Symlink Google Drive

13

Quero sincronizar pastas que estão no meu Mac com o Google Drive, sem ter que arrastar as pastas para a pasta do Google Drive e preservar minha estrutura de pastas no Mac.

Supus que você precisaria ter um link simbólico (link simbólico) para que isso funcionasse.

Então eu tentei no Terminal:

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

A pasta apareceu na minha pasta do Google Drive, mas não queria sincronizar.

Então eu tentei

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

Ainda não funcionou. Então, consultei este artigo da HowToGeek sobre este tópico e ele disse que você deve mover a pasta original para a pasta do Google Drive e criar um simbólico semelhante à pasta pai original.

Eu gostaria que o original não estivesse na pasta do Google Drive. Existe uma alternativa gratuita ao link simbólico? Eu olhei para o jdrivesync, mas não conseguiu instalar (isso será outro problema em outra discussão).

Obrigado pela ajuda!

ThoughToo
fonte
Existe uma maneira alternativa de um link simbólico sincronizar pastas fora da minha pasta do Google Drive? Vou atualizar a pergunta. @techraf
ThoughToo
Nunca diz que é impossível. Poderia haver outra maneira além do uso de links simbólicos ou de um aplicativo? @techraf
ThoughToo
Eu nunca pedi outro comando de link simbólico ou qualquer outra coisa, obviamente, não funcionaria. Existe um aplicativo ou outro comando que possa alcançar o que eu quero fazer? Não faz sentido discutir sobre o que eu disse, nós nos ajudamos aqui.
ThoughToo

Respostas:

15

Você pode usar um link físico de diretório, mas apenas no sistema de arquivos HFS +. Você precisará do GNU lnpara usar a -dopção Isso pode ser instalado usando o Homebrew : e brew install coreutils, em seguida, execute:

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

Você será solicitado a sua senha. Este comando cria um link físico para o próprio arquivo / pasta, e não como um link simbólico é vinculado a um ponteiro para um arquivo / diretório. Como a pasta de link é essencialmente a mesma da pasta original, o Google Drive a sincroniza corretamente.

Para desvincular um link físico, use unlink "/path/to/drive/folder".

AVISO: O APFS (Apple File System) não suporta links físicos. Se você planeja instalar o macOS High Sierra ou posterior e deseja continuar usando os links físicos do diretório, precisará manter seu sistema de arquivos HFS +. Por padrão, o macOS High Sierra intaller em um mac com SSD (por exemplo, sem HDD ou Fusion Drive) converte automaticamente o sistema de arquivos HFS + em APFS. Para pular a conversão durante a atualização, você precisará executar o instalador do macOS da seguinte maneira:

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

Se você evitar a última opção, você terminará com uma bagunça de diretórios vinculados /.HFS+ Private Directory Dataapós a atualização.

grg
fonte
1
Obrigado por responder. Eu tentei isso e ele disse que era um diretório que eu estou assumindo que "ln" por si só funciona para arquivos reais?
ThoughToo
1
O @Mekul Oops -dé para diretórios, veja editar.
grg
1
Você tem certeza? Basta digitar o Terminal e dizer que é uma opção ilegal, digitar "man ln" e não haver "-d". Obrigado pela ajuda de qualquer maneira!
ThoughToo
1
@Mekul Está tudo bem, a culpa é minha! Estou fazendo tudo isso no meu telefone de memória, da próxima vez vou esperar até estar no meu computador! Eu acredito que faz parte do pacote 'coreutils' e é chamado 'gln' para não substituir o 'ln' existente.
grg
1
@Mekul, eu quis dizer instalar coreutils e, em seguida, o comando se torna 'sudo gln -d ... `, nada mais para instalar.
grg
0

O Google Drive parece inútil, a menos que você queira reorganizar seu disco.

Sugarsync foi projetado com o Windows em mente. É realmente sofisticado e permite sincronizar pastas existentes, onde quer que estejam. Eu usei por um tempo. Ele tem um cliente Mac, mas esse é todo o pensamento que eles colocam nele. Não é possível sincronizar os pacotes corretamente. Pacotes são uma estrutura UNIX que o Mac usa para aplicativos e arquivos de dados. Então me livrei do Sugarsync.

O OneDrive da Microsoft não cria links simbólicos e acho que eles nem sabem o que são pacotes.

O Dropbox, por outro lado, honra os links simbólicos e manipula os pacotes corretamente.

Ken Collins
fonte
0

Tradicionalmente, o hardlink funciona apenas para arquivos, não para diretórios.

Embora o HFS + suporte o hardlink do diretório, é um recurso interno reservado ao Time Machine . Use-o por sua conta e risco.

Você pode olhar para o SugarSync , que afirma

Faça backup e acesse seus arquivos. Usando sua estrutura de pastas existente.

Uma experiência pessoal com o link físico do diretório é que

  • Encolho e amplio o disco do Time Machine, que usa fortemente o link físico do diretório
  • Em seguida, os dados de backup são confusos
  • Eu tenho que formatar a partição, perdendo o histórico
amdyes
fonte
-1

No macOS Sierra e com a nova solução coreutils no post anterior, não funcionam conforme o esperado.

1) Você precisará de gnu coreutils. Você pode instalá-lo via homebrew.

brew install coreutils

2) (opcional) você pode digitar gln --helppara obter o manual de uso desse comando. Isso produzirá 4 maneiras:

  1. Uso: gln [OPTION] ... [-T] TARGET LINK_NAME (1º formulário)
  2. ou: gln [OPÇÃO] ... ALVO (2º formulário)
  3. ou: gln [OPÇÃO] ... ALVO ... DIRETÓRIO (3º formulário)
  4. ou: gln [OPÇÃO] ... -t ALVO DIRETÓRIO ... (4º formulário)

    No 1º formulário, crie um link para TARGET com o nome LINK_NAME.

    No segundo formulário, crie um link para TARGET no diretório atual.

    Nos 3º e 4º formulários, crie links para cada ALVO no DIRETÓRIO.

3) Acesse google 'drive folder' (GD) ou qualquer subpasta GD via linha de comando:

3.a) Você pode digitar o terminal cd(espaço após 'd') e arrastar a pasta / diretório para a janela do terminal

3.b) ou apenas digite seu caminho para o destino, como cd /Users/yourAccountName/Google\ Drive/sub/subSubFolder onde 'yourAccountName' é o nome da sua conta no sistema operacional e 'sub / subSubFolder' sua estrutura de pastas no GD. Observe que você precisa 'escapar' de símbolos especiais no caminho e no nome do arquivo com barra invertida ('\'), como fiz com o espaço no nome da pasta 'Google Drive', e agora parece 'Google \ Drive'.

4) E, como grgarside esclareceu em seu post, você precisa usar sudo e -dkey para realizar o link. Então, basta digitar:

sudo gln -d '/Users/yourAccountName/path/to/original/folder/with/your/stuff'
Ruslan Zaytsev
fonte
-2

Duas maneiras de colocar muitos arquivos / pastas no Google Drive sem alterar sua estrutura de arquivos:

  1. Com o Google Drive para Mac instalado: duplique as pastas relevantes e arraste as cópias para a pasta do Google Drive.

OU

  1. Usando o Google Drive com o Google Chrome: arraste as pastas relevantes para uma janela do Google Drive no Chrome; eles serão enviados e isso não atrapalhará sua estrutura de arquivos.

O uso de um desses métodos coloca suas pastas no Drive sem alterar a estrutura do arquivo.

Sei que nenhum deles foi o que você solicitou, mas ambos devem fazer o trabalho. Comente abaixo para qualquer outra coisa.

coruja
fonte