Primeiro de tudo: se você deseja compartilhar arquivos, existem vários protocolos de interesse diferentes: Samba (SMB), NFS, FTP, SSH / sFTP / SCP. O Samba é o mais fácil se um computador Windows estiver envolvido, mas você também pode usá-lo entre duas máquinas Ubuntu (e até Mac OS). O SSH é uma coisa boa para o Ubuntu, porque é uma ferramenta muito poderosa - por exemplo, Executar rsync
sobre SSH é um método de comando para manter dois diretórios sincronizados. Mas eu escolheria SMB porque você menciona o Windows e provavelmente a configuração de um protocolo / servidor é suficiente para o começo.
Apenas três dicas importantes para pesquisas adicionais sobre outros protocolos:
- Pense na criptografia - é necessário que o protocolo seja criptografado ou você deseja confiar na sua LAN? (FTP não é criptografado, SSH / sFTP / SCP é)
- Precisa transferir arquivos enormes? (SCP é muito lento em comparação com SMB em redes Gigabit! Benchmarks do Google, se você estiver interessado.)
- É necessário manter as permissões de arquivo dos arquivos transferidos?
Agora, suas perguntas:
1. Quando eu compartilho arquivos entre duas máquinas Ubuntu via LAN, eu preciso do Samba em ambas as máquinas?
Não, não é o servidor Samba. Haverá sempre um servidor e um cliente. Você pode acessar as pastas compartilhadas no servidor a partir do cliente - e não o contrário. Em outras palavras: a barra de progresso da cópia estará sempre no cliente, nunca no servidor. Mas com duas máquinas Ubuntu, ambas podem ser cliente e servidor ao mesmo tempo, se você quiser. O cliente é fornecido com o Ubuntu por padrão, o servidor é instalado automaticamente quando você compartilha uma pasta pela primeira vez com o Nautilus.
2. Sem a permissão Definir no computador 1, posso ver todos os arquivos em /
no computador 2. É possível impedir essa visibilidade?
Isso não é verdadeiro para o SMB / Samba. Existem determinadas pastas compartilhadas e somente elas são visíveis para os clientes. Verifique a pasta /var/lib/samba/usershares/
e o arquivo /etc/samba/smb.conf
, se o caminho /
for compartilhado. Provavelmente você está se conectando com o SSH e não com o SMB. Então você está certo, geralmente tudo é visível e você tem que definir as permissões de arquivo e diretório corretamente. Você pode encontrar mais detalhes sobre isso aqui: Simple & amp; maneira fácil de prender usuários
3. Qual usuário e senha eu tenho que usar ao acessar outras máquinas Ubuntu através do Samba?
Geralmente é simples: basta usar qualquer usuário e senha da outra máquina. Apenas em casos muito especiais, a senha normal do usuário é diferente da senha do Samba. Você pode alterar a senha do Samba separadamente com o comando smbpasswd
, mas você deve ter boas razões para usar duas senhas diferentes.
Você pode permitir compartilhamentos sem senha. Há muitas coisas a dizer sobre isso, mas provavelmente essa captura de tela do Nautilus ajuda no começo:
4. Como compartilhar arquivos sem GUI usando o terminal?
O caso de uso mais comum é SSH / SCP do que provavelmente. Basta digitar o seguinte no terminal do cliente para copiar /path/to/file1
no cliente para /path/to/file2
no servidor:
scp /path/to/file1 server:/path/to/file2
server
pode ser um endereço IP ou um nome de domínio. Ou outro método já mencionado em outras respostas com rsync
:
rsync /path/to/file1 server:/path/to/file2
Com o Samba, você provavelmente usaria smbmount (que não é fornecido com o Samba por padrão) para montar uma rede compartilhar no cliente. Então você pode usá-lo normalmente. Há muitas maneiras de montar um compartilhamento do Samba. Se você estiver usando o Gnome, gvfs-mount
pode ser o método mais fácil:
gvfs-mount smb://server/nameOfsharedFolder
cd ~/.gvfs/*
5. Por que o servidor não está aparecendo no Nautilus / Network no cliente?
Tanto quanto eu sei, a primeira vez que não aparece lá. Depois de se conectar a ele uma vez, você encontrará lá. A primeira vez, você terá que clicar em "Rede do Windows", depois em "Grupo de trabalho" e, em seguida, você verá o seu servidor - esperançosamente. Pelo menos esse foi o resultado dos meus testes.
6. Como encontrar o outro sistema sem saber o nome ou o IP do outro sistema na LAN?
Você pode usar nmap
no terminal, por exemplo:
nmap 192.168.0.*
se 192.168.0.0 for sua LAN. Isso imprimirá todos os clientes da rede na sua LAN (que podem ser descobertos). Às vezes isso pode ajudar, se outras máquinas não aparecerem em Rede .