O que o Windows tem a ver com isso? Não estou tentando compartilhar com uma máquina Windows ...
Você está certo, isso pode ser confuso. Então, deixe-me tentar esclarecer os termos antes de tudo:
A maneira como o Windows compartilha arquivos e impressoras é chamada SMB . As pessoas do projeto SAMBA implementaram todos os protocolos e especificações da Microsoft para Linux. O Ubuntu, portanto, suporta o mesmo tipo de compartilhamento de arquivos que o Windows, chamado Samba.
Você pode usar o SAMBA para compartilhar arquivos entre máquinas Linux. Na verdade, você pode preferir, caso tenha, por exemplo, um amigo no computador com Windows.
Como alternativa, você pode usar a maneira Linux de compartilhar arquivos, que é o NFS (Network File System) - Esta resposta a uma pergunta anterior explica como fazê-lo. (mas é bastante técnico)
Portanto, quando a caixa de diálogo Opções de compartilhamento solicitar a instalação dos pacotes, você não está instalando nenhum software da Microsoft ou algo assim. Vá em frente e faça isso, é perfeitamente seguro.
Termo aditivo:
Você pode tentar ativar o compartilhamento antes de seguir as instruções de Salih Emin; se não funcionar, você receberá um aviso simples e poderá executar as etapas que Salih descreve, se necessário. Eu tentei em um sistema recém-instalado e atualizado, e eu realmente precisava fazer isso.
No momento, há um pequeno bug no Lucid listado na barra de ativação : bug # 536766 . Esse bug não solicita que o usuário instale os pacotes necessários para concluir a instalação do compartilhamento de arquivos. Até que isso seja resolvido, aqui está uma solução rápida.
Você precisa instalar o libapache2-mod-dnssd e reiniciar. Clique neste link para instalá-lo ou localize libapache2-mod-dnssd no Centro de Software.
Depois de instalá-lo, vá para Sistema → Preferências → Compartilhamento de arquivos pessoais e marque a caixa 'Compartilhar arquivos públicos na rede'.
Feito isso, você poderá visualizar todos os outros computadores da rede que permitiram o compartilhamento de arquivos públicos na pasta Pública. Basta clicar em Locais → Rede e você verá todos os computadores disponíveis e suas pastas públicas compartilhadas.
Clicar duas vezes no ícone do servidor montará a pasta pública relevante na sua área de trabalho.
Via texto do link
fonte
Você pode simplesmente executar um servidor simple HTTP na máquina Linux e acessar o mesmo na outra máquina.
Passos :
python -m SimpleHTTPServer
ifconfig
.Você obtém os arquivos necessários na pasta para download.
fonte
python3 -m http.server
Acredito que é nisso que os pacotes SAMBA estão listados ou são parte da descrição deles. Como alternativa, você pode tentar Preferências-> Compartilhamento de Arquivos, que acredito usar um mecanismo diferente. O samba é uma coisa útil para ter instalado.
fonte
Você pode instalar "qweborf". Ele compartilhará o diretório por HTTP e os outros hosts poderão acessar com um navegador.
Ele também pode ativar o webdav e permitir que o diretório seja montado como um sistema de arquivos de leitura / gravação (testado com davfs2, KDE, Gnome2, OsX).
fonte
Se você deseja uma integração perfeita no Ubuntu e não está interessado na compatibilidade do Windows, o SSH é o seu huckleberry.
Consulte Como posso compartilhar arquivos entre duas máquinas Linux pela LAN?
Pode ser necessário instalar o servidor SSH com:
No aplicativo gerenciador de arquivos do seu cliente, você pode acessar o servidor com:
Para acessar arquivos de um terminal ou programaticamente, use
sshfs
para criar um ponto de montagem no sistema de arquivos do cliente.fonte
scp
e (ainda melhor)rsync
.Para redes exclusivamente Linux, considero o SSHFS nativo, estável e extremamente rápido. Eu tenho duas máquinas Xubuntu (18.04) compartilhando / pastas domésticas sobre SSH.
Veja como configurar o sshfs e reconectar-se automaticamente após a reinicialização usando o fstab sem precisar fornecer uma senha. Um grande obrigado ao usuário serverfault kubanczyk por como se reconectar após uma suspensão / retomada remota.
Usarei "Local machine - surfbox" no computador do qual você está se conectando e "Remote machine - devbox" no computador ao qual você está se conectando.
Substitua "remoteuser" abaixo pelo nome de usuário com o qual você efetuou login na máquina remota e "localuser" pelo nome de usuário com o qual você efetuou login na máquina local. Para verificar nomes de usuário, digite o
echo $USER
terminal em máquinas remotas e locais.Além disso, verifique o seu userID e groupID, pois ambos devem ser 1000.
GroupID:
id -g localuser
UserID:id -u localuser
1. Obtenha endereços IP de suas máquinas locais e remotas.
Usarei 192.168.1.150 para Máquina Local ('surfbox') e 192.168.1.151 para Máquina Remota ('devbox')
2. Instale pacotes em máquinas locais e remotas
3. Crie um fusível de grupo e adicione um usuário local a ele
Criar grupo:
sudo groupadd fuse
Adicione localuser ao grupo:
sudo usermod -a -G fuse $user
4. Ative "allow_other" na configuração do fusível
Vamos precisar dessa opção ao montar no fstab
Edite
/etc/fuse.conf
com seu editor de linha de comando. Remova a hashtag antesuser_allow_other
e salve.5. Gere chaves SSH na máquina local
Não forneça uma senha quando solicitado . Basta pressionar Enter para deixar em branco.
ssh-keygen -t rsa -C [email protected]
As chaves são armazenadas na pasta /.ssh do diretório inicial da máquina local
6. Transfira sua chave SSH pública da máquina local para a máquina remota
ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected]
Você será solicitado a fornecer a senha do usuário remoto na máquina remota. A chave pública da máquina local agora é adicionada ao arquivo ~ / .ssh / allowed_keys na máquina remota.
7. Crie um diretório na pasta Local machine / mnt onde você montará a pasta Remote machine / home.
Escolha qualquer nome que faça sentido para sua máquina remota.
sudo mkdir /mnt/devboxhome
8. Monte o diretório remoto da máquina / home a partir do terminal
A sintaxe para sshfs é
sshfs [user@]host:[directory] mountpoint [options]
nós usamos
sudo sshfs [remoteuser]@192.168.1.151:/home/[remoteuser] /mnt/devboxhome -o allow_other,default_permissions -o identityfile=/home/[localuser]/.ssh/id_rsa
exemplo: supondo que "steve" seja o nome de usuário nas máquinas local e remota
sudo sshfs [email protected]:/home/steve /mnt/devboxhome -o allow_other,default_permissions -o identityfile=/home/steve/.ssh/id_rsa
Como você transferiu a chave pública RSA para a máquina remota, não deve ser solicitada a senha do usuário remoto.
Você receberá um aviso de que a máquina não é confiável e será solicitada se ela for adicionada. Adicione a máquina remota como confiável.
9. Verifique: Navegue no Diretório Remoto / Página Inicial da Máquina
No terminal na máquina local, agora você pode listar a máquina remota / diretório pessoal em / mnt / devboxhome
cd /mnt/devboxhome ls
ou use o Nautilus para navegar no diretório. Ótimo.
10. Habilite a reconexão após a reinicialização
Adicionaremos uma entrada no / etc / fstab para que isso aconteça. Você precisará da sua máquina local userid och groupid - veja a introdução se você perdeu isso. Edite / etc / fstab com seu editor de linha de comando e adicione essas duas linhas no final de / etc / fstab
# Mount devbox at boot [email protected]:/home/[remoteuser]/ /mnt/devboxhome fuse.sshfs default_permissions,user,delay_connect,reconnect,serversliveinterval=15,serveralivecountmax=3,allow_other,identityfile=/home/[localuser]/.ssh/id_rsa,idmap=user,uid=1000,gid=1000 0 0
ServerAliveCountMax
pings consecutivos falharem, reconecte.Um usuário que efetuasse login como steve em máquinas locais e remotas teria:
[email protected]:/home/steve/ /mnt/devboxhome fuse.sshfs default_permissions,user,delay_connect,reconnect,serversliveinterval=15,serveralivecountmax=3,allow_other,identityfile=/home/steve/.ssh/id_rsa,idmap=user,uid=1000,gid=1000 0 0
IMPORTANTE : uma barra após o diretório remoto: [email protected]: / home / steve /
salve / etc / fstab e ....
11. Reinicialização
Agora você deve conseguir acessar o diretório Remote machine / home na máquina Local / mnt / devboxhome No Nautilus, você pode arrastar esta pasta para a barra Places
12. Repita
Siga as mesmas etapas novamente na máquina remota para tornar o diretório / home da máquina local compartilhado.
fonte
Minha maneira de compartilhar arquivos:
Vá para a pasta que você deseja compartilhar, abra o terminal e execute este comando:
Você poderá acessar essa pasta em todas as máquinas da mesma rede no endereço IP mencionado pela saída desse comando.
fonte
zx81roadkill está certo, use "sshfs". Samba é uma porcaria, NFS é lixo. O Sshfs é totalmente utilizável do meu computador aqui na Califórnia, para um computador na Argentina. É totalmente seguro, é tão rápido quanto qualquer outra coisa (eu tenho uma linha de gibabit).
O Sshfs é relativamente novo, comparado ao Samba e ao NFS, mas é muito superior a ambos. Aqui está um exemplo de como executá-lo (supondo que você tenha todos os pacotes instalados)
Depois de inserir a senha, / tmp / my_mount conterá todos os arquivos de "nome de usuário" na "máquina". Não se preocupe em brincar com o Samba ou o NFS. Eles são apenas uma dor sem sentido na bunda para configurar ou configurar.
Para desmontar:
e se isso falhar (por qualquer motivo):
Todos os dados enviados pelo ponto de montagem são criptografados. Por que essa não é a maneira padrão e totalmente aceita de montar uma máquina remota é um mistério para mim. É muito superior a qualquer outro método em termos de simplicidade.
Se você precisar de velocidade bruta, talvez esse pedaço de lixo do Samba faça isso, ou NFS. Não sei, 100 MB / s + é bom o suficiente para mim.
fonte