Como é que tenho uma montagem de partilha de rede no Mac OS X? persistir entre as reinicializações

6

Eu atualmente conecto a um compartilhamento do Windows (smb) através do Finder - > Vá - > Conecte-se ao servidor. Eu tenho que digitar o IP (embora eu tenha salvo as credenciais no meu chaveiro). Se eu reiniciar ou sair, preciso fazer isso novamente.

Eu gostaria que o compartilhamento SMB ao qual estou me conectando esteja sempre disponível assim que eu fizer o login. Como posso conseguir isso?

    
por mindless.panda 29.03.2010 / 04:15

7 respostas

9

Faça do ponto de compartilhamento um item de login e ele será automaticamente "aberto" (ou seja, conectado) sempre que você fizer logon. Vá para Preferências do Sistema - > Usuários & Grupos - > selecione sua conta na barra lateral - > Clique na guia Itens de login e arraste o ponto de compartilhamento montado (você pode obtê-lo na exibição do computador do Finder, disponível em seu menu Ir).

(Nota do histórico: o painel de preferências foi chamado de "Contas" no OS X 10.6, mas alterado para "Usuários e grupos" em 10.7 e posterior).

    
por 30.03.2010 / 07:21
4

Visão geral:

Crie um agente launchd (um script básico neste caso) para nos montar os compartilhamentos que gostarmos a cada dois minutos. Não é perfeito, mas funciona. Isso é para compartilhamentos do Samba, mas você pode modificá-lo para fazer outros tipos.

Feito com a ajuda de Dave Nicoll sobre o compartilhamento de bibliotecas do windows / x do iTunes.

Estou usando a placa sem fio do meu laptop para determinar se estou conectado ao SSID da minha casa. Você pode, claro, usar qualquer coisa que quiser para a execução condicional.

Se você vai usar o SSID como uma condição para a montagem, eu acho que você pode achar que é um bom alias o utilitário Airport que vem com o OS X para seu / usr / bin /. Se não pular para a próxima seção.

Abra o Terminal e execute:

sudo ln -s /System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport /usr/sbin/airport
Lembre-se da saída disso:
airport -I | grep '.* SSID:' | sed 's/^.* SSID: //'

O script:

Minhas condicionais verificam

  1. O compartilhamento ainda não está montado (linha 1-4)
  2. O SSID da nossa rede de cartões do aeroporto não é nulo (linha 5-8)
  3. O nosso SSID deve ser igual a um SSID predefinido, no meu caso "2600leagues" (linha 9)

Abra seu editor de texto favorito e inicie um novo arquivo, eu chamo o meu MountShares.sh

if [ -d '/Users/kyle/Music/iTunes/Podcasts/' ]; then
        #echo Nothing to do, share is mounted
        exit
else 
    if [ -z 'airport -I | grep '.* SSID:' | sed 's/^.* SSID: //'' ]; then
       #echo SSID is Null, we're not connected with the Airport to any Network.
        exit
    else 
        if [ 'airport -I | grep '.* SSID:' | sed 's/^.* SSID: //'' == "2600leagues" ]; then
            #echo SSID is 2600leagues!
            /sbin/mount -o nodev,nosuid -t smbfs '//Kyle:[email protected]/media/Music' '/Users/kyle/Music/'
        fi
    fi
fi

Em seguida, precisamos editar a linha 11 para representar suas necessidades específicas. Você só precisa editar as partes negrito :

/sbin/mount -o nodev,nosuid -t smbfs '//User:Password@ServerIP_or_Name/Share' '/Where/You/Want/it_to_mount/'

Exemplo:

/sbin/mount -o nodev,nosuid -t smbfs '//Kyle:[email protected]/media/Music' '/Users/kyle/Music/'

Agora que temos nosso comando de montagem editado, tente executá-lo no Terminal . Se for bem sucedido, a sua parte deve estar disponível no local de montagem. (no meu exemplo /Users/kyle/Music/ )

Edite a linha 1 do script bash para refletir um arquivo ou diretório dentro do compartilhamento montado. Se você vai usar o SSID como uma condição que eu tenho, você vai querer mudar linha 5 substituindo 2600leagues pelo seu SSID.

Salve o script bash em um local conveniente. (Eu uso ~/Library/Scripts/NetworkMounts/MountShares.sh )

Agora você precisa tornar o script bash executável, usamos chmod para fazer isso.

No Terminal :

chmod 777 ~/Library/Scripts/NetworkMounts/MountShares.sh

Se o compartilhamento de rede ainda estiver montado, desmonte / ejete-o agora. ( Localizador funciona)

Tente executar o script por meio do Terminal :

~/Library/Scripts/NetworkMounts/MountShares.sh

Se tudo correr bem, a sua parte deve ser montada. Agora tudo o que resta a fazer é fazer com que o script seja executado de vez em quando. Normalmente, você usaria crontab para esse tipo de coisa, mas 10.6 o desaprovou. A Apple prefere que você use o serviço launchd .

Fazendo o launchd Agent

Para ajudar você a fazer um agente launchd, obtenha Lingon do sourceforge.

  1. Abrir o Lingon
  2. Crie um novo agente de usuário (meu agente)
  3. Dê um nome como com.kyle.MountShares
  4. Escolha ou digite o caminho para o bash roteiro %código%
  5. Especifique quando você gostaria que corre. (Eu tenho Run quando é carregado pelo sistema e * Run it every 10 minutos)
  6. Salvar
  7. Sair do Lingon

É isso

Deixe-me saber se isso ajuda; Eu digitei tudo isso o mais rápido possível.

    
por 27.05.2010 / 09:12
3

Com auto_fs, auto_master, etc., tente ler Autofs: Montando automaticamente compartilhamentos de arquivos de rede no Mac OS X (PDF) . É um pouco datado agora (2009) mas, usando os exemplos no documento, eu obtive todos os meus NFS & As ações de SMB são organizadas e montadas automaticamente com facilidade.

    
por 28.11.2011 / 11:27
1

Você já olhou para auto_master(5) ? De relance, parece possível, mas parece que pode ser muito trabalhoso para se preparar.

    
por 29.03.2010 / 06:38
0

System Preferences > Sharing > File Sharing > Option > Share Files and Folders Using SMB . Eu acho que pode reconhecer configurações de compartilhamento. Caso contrário, você pode adicionar o compartilhamento smb ao seu favorite server também.

Se você quiser adicioná-lo como um servidor favorito, pressione Apple+K enquanto estiver no Finder para exibir a caixa de diálogo Connect to Server . Digite o endereço e clique no + ao lado do endereço. Será então adicionado à área abaixo Favorite Servers .

    
por 29.03.2010 / 04:31
0

Minha solução é usar o Automator e criar um pequeno aplicativo que se conecta automaticamente e, em seguida, configurá-lo para iniciar no login.

Inicie o Automator e selecione Application e, na Biblioteca de Arquivos e Pastas, você verá Get Specified Server e Connect to Servers. Adicione os itens nessa ordem e adicione seu endereço IP e nome de compartilhamento (se aplicável).

Neste ponto, você pode salvá-lo como um aplicativo (~ / Applications é um bom lugar). Em seguida, adicione-o aos seus itens de login através das Preferências do Sistema > Usuários.

No entanto, adicionei no Automator uma Pausa de 30 segundos (da biblioteca Utilities) e quatro Loops de 1000 iterações. Isso deve mantê-lo em execução até eu sair ou reiniciar.

Observação: ele exibirá uma caixa de diálogo útil se não puder se conectar:

Connection failed

The server "x.x.x.x" may not exist or it is unavailable at this time. Check the server name or IP address, check your network connection, and then try again.

Nota: não verifica se já está conectado. Pode haver uma maneira de verificar a saída do Connect to Server

    
por 29.03.2010 / 06:08
0

Existem algumas soluções aqui , as mais simples dos quais (IMHO) vou repassar abaixo:

De um terminal:

sudo vifs

Se não estiver familiarizado com vi : pressione 'i' para inserir (modo de edição) e cole-o em uma nova linha:

smbserver:/share /Volumes/mount_point url automounted,soft,url==cifs://user:pass@smbserver/share

Acerte Esc e, em seguida, zz para salvar e sair.

Finalmente:

sudo automount -vc

Agora, ao atingir /Volumes/mount_point no console / finder / whatnot, o compartilhamento será mapeado automaticamente.

    
por 29.04.2014 / 23:38