Como posso montar automaticamente volumes AFP na inicialização?


8

Comprei um NAS para armazenar meus arquivos de mídia e gostaria de montar automaticamente os volumes na inicialização. Atualmente, estou abrindo esses volumes como um item de login em Preferências do sistema> Contas.

Isso funciona, mas infelizmente também aparece cada volume em uma nova janela do Finder na inicialização. A verificação da ocultação nos itens oculta apenas os processos, e não a janela do Finder resultante desses processos. Uma solução que evite esses pop-ups do Finder seria ótima.

Gostaria de evitar aplicativos de terceiros para fazer isso também.


Respostas:


4

Encontrei esse script em http://hints.macworld.com/article.php?story=20050215082247458 , mas vou reproduzi-lo abaixo.

  • Abra o Editor de scripts e cole em:
    defina sfiles como "afp: // user: pass @ host / volume"  
    informe ao aplicativo "Finder"  
        montar arquivos de volume   
    fim de contar
  • Substitua sfilespelos detalhes apropriados do seu volume AFP.
  • Adicione outras linhas apropriadas para os outros servidores que você possui, acima e dentro do tell
  • Salve este script em algum lugar seguro e adicione-o ao painel de itens de login (em vez dos Volumes que você tem lá agora)

4

TL; DR

Use AppleScript, mas não especifique o nome de usuário ou a senha .


fundo

No meu caso, nenhuma das sugestões que encontrei online funcionou perfeitamente.

Eu tinha vários volumes AFP que queria montar automaticamente. Seguindo os conselhos fornecidos aqui e em outros lugares, a solução óbvia parecia ser um arquivo AppleScript com algo nesse sentido:

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

Agora, isso quase funciona. Da perspectiva do Finder, parece que todos os volumes estão montados corretamente. No entanto, se você usar o terminal, poderá ver o problema. Aconteceu o seguinte:

  • Os volumes são montados em diretórios /Volumes/a, /Volumes/b-1e /Volumes/c-1.

  • Existem diretórios vazios /Volumes/be /Volumes/c.

Se você se importa com isso depende do uso pretendido, mas eu precisava de uma solução na qual os caminhos do sistema de arquivos sejam mais previsíveis.

Depois de gastar muito tempo jogando com todas as variantes disso, parece que o crucial é o seguinte: Se você especificar o nome do usuário e já tiver montado alguns volumes do mesmo servidor AFP, as coisas darão errado.

Daí a seguinte solução.


Solução

  1. Certifique-se de que tudo funcione corretamente ao usar o Finder: você pode montar volumes clicando no compartilhamento e não precisa digitar nenhuma senha. Se o Finder solicitar um nome de usuário e senha, peça para lembrar a senha.

  2. Crie um aplicativo AppleScript da seguinte maneira. Abra o AppleScript Editor. Escreva um código como este:

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

    Aqui "servidor" é o nome do host do servidor (se o Finder exibir o nome do servidor "x", você pode tentar usar o nome do host "x.local"). Substitua "a", "b" e "c" pelos nomes dos volumes que você deseja montar. Certifique-se de não tentar especificar nomes de usuário ou senhas. Compile e salve-o usando o formato de arquivo "Aplicativo" (você receberá a extensão de nome de arquivo ".app" automaticamente).

  3. Teste-o executando o aplicativo que você acabou de criar. Provavelmente ele pede o nome de usuário e a senha; digite-os e diga novamente para lembrar a senha.

  4. Desmonte (usando o Finder) e tente novamente. Deve funcionar, sem perguntar nada. Os caminhos devem estar corretos (sem -1sufixos).

  5. Adicione o aplicativo aos seus itens de login (Preferências do Sistema; Usuários e Grupos).

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.