Como montar uma partição de um computador remoto sem direitos de sudo

2

Eu quero que os usuários do meu grupo que não possuem direitos sudo possam montar uma partição que esteja em um computador remoto. Imagine que um usuário tenha uma conta em vários computadores, mas uma grande quantidade de dados está no disco rígido de um computador específico.

Existe uma maneira que ele pode montar esta partição em seu computador atual? Além disso, o usuário não deve receber direitos de sudo.

Posso fazer uma entrada em /etc/fstab que monta automaticamente a partição remota no caso de um usuário específico efetuar login no computador?

    
por mcExchange 02.08.2016 / 16:24

1 resposta

2

O mais fácil seria usar um compartilhamento NFS (na máquina "servidor") e o montador automático (autofs) nos "clientes".

Eu assumo que o NFS está instalado no servidor e no cliente de acordo com o primeiro comentário da Dorian.

Digamos que a partição para compartilhar esteja em / mydata, adicione uma entrada ao arquivo / etc / exports em seu servidor:

/mydata     *(rw,sync,no_subtree_check)

(as opções dependem dos seus requisitos). Depois de chamar sudo exportfs -a , a partição deve ser exportada (teste com showmount -e ). O mesmo deve ser verdade depois de cada reinicialização do servidor.

Em cada cliente, instale o autofs:

sudo apt-get install autofs

Edite o arquivo /etc/auto.master para remover o sinal de comentário da linha para / net:

#
# Sample auto.master file
# This is a 'master' automounter map and it has the following format:
# mount-point [map-type[,format]:]map [options]
# For details of the format look at auto.master(5).
#
#/misc  /etc/auto.misc
#
# NOTE: mounts done from a hosts map will be mounted with the
#   "nosuid" and "nodev" options unless the "suid" and "dev"
#   options are explicitly given.
#
/net    -hosts

Depois de reiniciar o serviço autofs ( sudo service autofs restart ), você poderá acessar o (s) sistema (s) de arquivos exportado (s) via

/net/<servername_or_ip>/<exportname>

Por exemplo, se o nome do seu servidor for "myserver" e o sistema de arquivos exportado for "/ mydata", você poderá digitar

ls /net/myserver/mydata

para ver o conteúdo do diretório.

Existem algumas vantagens em ter uma entrada estática em / etc / fstab:

  • O compartilhamento NFS é montado apenas quando acessado e será desmontado após algum tempo de inatividade. Isso economiza muitos recursos e largura de banda de rede.
  • Se você adicionar um segundo compartilhamento em seu servidor (por exemplo, "/ myotherdata"), não será necessário adicionar nenhuma entrada no cliente. Basta acessar o caminho /net/myserver/myotherdata
  • Se você adicionar um segundo servidor com outro compartilhamento (digamos "/ moredata" em "secondserver"), o caminho será /net/secondserver/moredata sem nenhuma ação no cliente
  • Você pode usar o mesmo caminho (/ net / ...) em cada cliente, mesmo no próprio servidor, se você instalou e configurou o autofs no servidor.

Se você não quiser sempre inserir / net / ...., basta adicionar um link em seu diretório pessoal:

ln -s /net/myserver/mydata .

Advertência:

O NFS corresponde usuários / grupos por meio do UID / GID. Portanto, o usuário "mesmo" precisa ter o mesmo UID em todos os computadores, o que também vale para os grupos (GID). Caso contrário, os direitos de acesso são mutilados / corrompidos. Não há problema se você tiver um gerenciamento de usuários centralizado.

    
por ridgy 03.08.2016 / 21:54