Eu exporto um diretório em uma caixa linux e posso montá-lo a partir de outra caixa linux usando
# mount -t nfs kurush:/media/lynk /mnt/kurush/
O mesmo comando falha no Mac OS X:
$ sudo mount -t nfs kurush:/media/lynk /Volumes/lynk
mount_nfs: can't mount /media/lynk from kurush onto /Volumes/lynk: Operation not permitted
Ao mesmo tempo, kurush:/var/logs/syslog
registra esta linha:
rpc.mountd[7943]: authenticated mount request from sds-MacBook-Pro.home:1009 for /media/lynk (/media/lynk)
Quando tento acessar a GUI (localizador-> conectar-se ao servidor-> nfs://kurush/media/lynk
-> conectar), recebo uma falha imediata (incapaz de conectar-se etc.) e o syslog do linux box registra o arquivo authenticated mount request
.
O problema é resolvido usando uma porta privilegiada :
Linha de comando:
sudo mount -o resvport -t nfs kurush:/media/lynk /Volumes/lynk
Para ativar a GUI:
sudo vifs
depois adicione uma linha
kurush:/media/lynk /Volumes/lynk nfs resvport,ro,user,noauto
As perguntas são :
Por que preciso usar uma porta privilegiada? É algo que eu faço no lado do linux? Lembro-me de que, uma vez, montei essa parte sem a mágica mencionada acima.
Como digo ao MacOSX para usar a porta privilegiada sem usar a linha de comando? Eu pensei que a Apple era para o público "não técnico", então deve ser possível!
Respostas:
Por que você precisa? Tradição, principalmente. Uma vez, restringir o NFS a portas privilegiadas (<1023) era considerado uma medida de segurança. Quando as pessoas usavam computadores mainframe, isso fazia com que o software NFS no lado do cliente fizesse parte do sistema operacional / aprovado pelo administrador, pois um programa só pode usar uma porta privilegiada se for executado pelo usuário raiz. Hoje, isso não faz sentido, porque qualquer pessoa pode possuir um computador e ter acesso root, portanto, isso não significa nada em termos de segurança.
Por padrão, muitos servidores NFS não permitem portas de origem não privilegiadas. Alguns clientes NFS (como o Ubuntu), usam como padrão uma porta de origem privilegiada, a menos que especificado de outra forma, e é por isso que seu cliente Linux funciona sem problemas. Claramente, o cliente OS X não faz isso. Não sei se isso foi uma escolha de design da Apple ou algo herdado do BSD. Eu sei que o Solaris também assume como padrão uma porta não privilegiada.
As duas maneiras de evitar esse problema são: instruir o cliente OS X a usar uma porta privilegiada, como você descobriu, ou configurar o servidor NFS para permitir portas não privilegiadas (consulte a documentação do servidor).
Como você faz com que o OS X use uma porta privilegiada usando uma GUI? Tanto quanto eu sei, você não pode nas versões> 10.6. Era possível montar compartilhamentos NFS no Disk Utility e digitar opções extras, mas isso foi removido. ( detalhes ) Nunca foi um botão simples ou algo assim. O NFS dificilmente é algo que a maioria das pessoas "não-tecidas" precisa, então eu acho que não era uma prioridade e há razões para usar rotineiramente portas privilegiadas não é uma boa idéia.
Eu não tentei, mas http://www.bresink.com/osx/NFSManager.html parece permitir a configuração dos recursos NFS do OS X sem a linha de comando.
fonte
insecure
opções/etc/exports
. Por exemplo:/media/sda3 192.168.1.0/24(rw,async,no_subtree_check,insecure)