Como faço para montar automaticamente um disco rígido no samba usando o autofs?

1

Eu tenho um Raspberry Pi com o samba instalado. Eu olhei em autofs e vi o potencial de automontar um disco rígido externo ao acessá-lo através da rede pela minha máquina windows. / p>

Aparentemente, a configuração auto.smb fornecida destina-se a um aplicativo cliente samba, mas minha intenção é o contrário. Eu quero que o servidor para automount meu disco rígido sempre que eu acessá-lo através da rede e automaticamente desmontá-lo depois de 5 minutos ou mais. Além disso, o fstype deve ser definido como NTFS.

Da minha compreensão atual de autofs , o que preciso fazer é criar um arquivo de configuração, nomeie-o como auto.ntfs :

conteúdo de auto.ntfs :

driveA -uuid="UUID of my drive",fstype=ntfs,verbose=1 :/dev/sda1

Depois, preciso adicionar essa configuração ao auto.master , como PATH MAP -options

Para especificar, meu PATH é /share , então adicionaria /share /etc/auto.ntfs -t=60 em /etc/auto.master para automontar com êxito meu disco rígido externo nesse diretório toda vez que eu o acessasse pela rede.

Eu entendi como isso funciona corretamente e o que devo fazer com o arquivo de configuração? Há alguma coisa que eu preciso considerar para fazer isso? É possível?

Eu gostaria de ter essa possibilidade respondida. (não, eu não quero outras soluções além do samba e sim tem que ser NTFS)

UPDATE

Eu adicionei o arquivo de configuração. Meu problema agora é que o conteúdo da unidade não é mostrado como eu estou tentando acessar localmente a unidade para que ela seja montada automaticamente apenas para testar o recurso em si.

auto.master: /share /etc/auto.ntfs -t=60

auto.ntfs: /share -uuid=E820DC6120DC3870,fstype=ntfs :/dev/sda1

Isso não funciona. Quando entro no diretório / share, não consigo ver o conteúdo da unidade. Aqui está uma saída de $ service autofs status :

Jan 15 13:57:04 raspberrypi automount[529]: key ":" not found in map source(s). 
Jan 15 13:57:04 raspberrypi automount[529]: failed to mount /share/: 
Jan 15 13:57:04 raspberrypi automount[529]: re-reading map for /share

FIX para acima

Para as pessoas que estão interessadas nesta questão no futuro, o problema acima foi corrigido, verificando as mensagens relacionadas dmesg , que apontaram para a causa real do problema, em vez de apenas dizer que ele não funciona. Este comando pode ser útil para descobrir:

$ dmesg -w | grep ntfs (você pode buscar outros tipos de mensagens se isso for diferente para você)

O problema era que a opção -uuid não era suportada. Minha configuração final agora é assim:

auto.master: /- /etc/auto.ntfs -t=60

auto.ntfs: /sharing -fstype=ntfs :/dev/sda1

Após toda essa correção de bugs, chega ao tópico final: Samba

Atualmente, meu problema é que, sempre que a unidade é montada, ela altera as permissões de forma inadequada. Eu criei o diretório compartilhado usando nautilus-share , desde que eu possa simplesmente verificar as opções apropriadas lá.

Aqui está um snippet de $ stat sharing/ quando o autofs está desativado:

Access: (0777/drwxrwxrwx) Uid: ( 0/ root) Gid: ( 0/ root)

Aqui está um trecho do mesmo comando quando o autofs está ativado:

Access: (0500/dr-x------) Uid: ( 0/ root) Gid: ( 0/ root)

O acesso é editado no momento da montagem, de acordo com esta mensagem dmesg:

ntfs: (device sda1): load_system_files(): Volume is dirty. Mounting read-only. Run chkdsk and mount in Windows.

ntfs: (device sda1): load_system_files(): $LogFile is not clean. Will not be able to remount read-write. Mount in Windows.

Não sei o que fazer agora. Onde eu errei? Estou pensando que talvez precise configurar as permissões no arquivo de configuração do autofs, mas não tenho certeza devido à mensagem acima.

Eu estaria aberto a sugestões de alterar o formato da partição para algo mais apropriado se o ntfs NÃO for sugerido para ser usado como uma montagem compartilhada!

    
por HackXIt 12.01.2018 / 19:06

1 resposta

1

A SOLUÇÃO!

Eu descobri agora. As mensagens de erro me apontaram na direção certa (de novo) e vasculharam as pesquisas do google Eu encontrei o pacote ntfs-3g e também o pacote ntfs-config . O último fornece a capacidade write para unidades NTFS e, assim, a mensagem

Volume is dirty. Mounting read-only. Run chkdsk and mount in Windows.
não apareceu novamente. Acessar a unidade compartilhada da máquina do Windows funcionou depois disso como uma brisa também.

Outra grande ajuda foi o gerenciador de arquivos Nautilus , que facilitou muito o manuseio de permissões indo até o caminho do diretório e selecionando " clique com o botão direito - > < em> Propriedades "e simplesmente editando as opções Permissões e Compartilhar de lá. (Esta foi claramente a maneira mais fácil / iniciante possível para fazer isso)

Para referência futura, aqui estão todos os meus arquivos de configuração e também os passos que tomei na CLI:

auto.master: /- /etc/auto.ntfs -t=60

Linux Manual Page for auto.master

     

auto.ntfs:    /sharing -fstype=ntfs :/dev/sda1

     

Linux Manual Page for automounter maps

     

smb.conf:

     

Edite a configuração padrão e comente tudo o que você NÃO precisa com hashtag ou ponto-e-vírgula . Abaixo estão as coisas que eu editei.

     
[global]
workgroup = WORKGROUP # This was irrelevant for me but I left it activated
wins support = yes # Tells samba to act as WINS Server
#Recycle bin for mounted drive (useful feature, but not mandatory)
recycle:keeptree = yes
recycle:touch = yes
recycle:versions = y
recycle:maxsize = 0
#======================= Share Definitions =======================
#I've commented evverything here except the one I've created myself, 
#since I didn't want any of those default share definitions.
#Shared network drive
[share]
comment = Pi shared folder
path = /sharing
available = yes
browseable = yes
writeable = Yes
only guest = no
create mask = 0777
directory mask = 0777
force group = sambashare

Helpful Link regarding Server Types

Documenation of samba configuration file

     

CLI:

     
$ cd /
$ mkdir sharing

To show information regarding the created directory and it's permissions you can use the $ stat directory/file command

     

Abaixo estão os comandos para controlar os serviços autofs e samba . Você precisará reiniciá-los sempre que fizer alterações na configuração e quiser que elas sejam aplicadas

     
$ service autofs {start|forcestart|stop|restart|forcerestart|reload|force-reload|status}
$ /etc/init.d/samba {start|stop|reload|restart|force-reload|status}
     

Depois de criar o diretório, inicie o nautilus digitando $ nautilus e navegue até o diretório e edite as opções Permissões e Compartilhar, conforme mencionado acima (as caixas de seleção são muito auto-explicativas). Eu habilitei a leitura de escrita para usuários locais e do Windows.

    
por 18.01.2018 / 13:31