O Linux tem compatibilidade limitada com o protocolo SMB. Recomendamos montar um sistema de arquivos SMB em um cliente Linux apenas quando for necessário compartilhar dados entre sistemas operacionais diferentes. Este tópico descreve como montar um sistema de arquivos SMB em uma instância ECS Linux para operações de leitura e escrita.
Pré-requisitos
-
Você deve ter uma instância ECS Linux disponível na mesma região do sistema de arquivos SMB. Para mais informações, consulte Crie uma instância ECS.
ImportantePara clientes Linux, recomendamos a montagem de sistemas de arquivos NFS. Devido à compatibilidade limitada do Linux com o protocolo SMB, monte um sistema de arquivos SMB em um cliente Linux somente quando precisar compartilhar dados entre sistemas operacionais distintos.
Os clientes SMB em algumas versões anteriores do Linux apresentam defeitos em determinados cenários. Se você utilizar uma versão do sistema operacional Linux sem suporte oficial, a Alibaba Cloud não poderá garantir a confiabilidade do sistema de arquivos SMB.
Este tópico aplica-se apenas às seguintes distribuições Linux com suporte oficial:
Sistema operacional
Versão
CentOS
CentOS 7.6 64 bits: 3.10.0-957.21.3.el7.x86_64 e posteriores
Alibaba Cloud Linux
Alibaba Cloud Linux 2.1903 64 bits: 4.19.43-13.2.al7.x86_64 e posteriores
Alibaba Cloud Linux 3.2104 64 bits: 5.10.23-4.al8.x86_64 e posteriores
Debian
Debian 9.10 64 bits: 4.9.0-9-amd64 e posteriores
Ubuntu
Ubuntu 18.04 64 bits: 4.15.0-52-generic e posteriores
openSUSE
openSUSE 42.3 64 bits: 4.4.90-28-default e posteriores
SUSE Linux
SUSE Linux Enterprise Server 12 SP2 64 bits: 4.4.74-92.35-default e posteriores
CoreOS
CoreOS 2079.4.0 64 bits: 4.19.43-coreos e posteriores
Você deve ter criado um sistema de arquivos SMB. Para mais informações, consulte Crie um sistema de arquivos NAS de uso geral.
Você deve ter criado um destino de montagem. Para mais informações, consulte Crie um destino de montagem.
-
A conectividade de rede deve estar estabelecida.
Certifique-se de que a instância ECS Linux e o sistema de arquivos SMB estejam na mesma VPC.
Verifique se o grupo de segurança associado ao sistema de arquivos permite que a instância ECS Linux acesse o sistema de arquivos SMB.
-
Certifique-se de que a porta TCP 445 esteja aberta. Os sistemas de arquivos SMB se comunicam pela porta TCP 445.
Se a porta 445 não estiver aberta, adicione uma regra ao grupo de segurança da instância ECS de destino para permitir o acesso a essa porta. Para mais informações, consulte Adicione uma regra de grupo de segurança.
Instale um cliente CIFS
Antes de montar um sistema de arquivos SMB em um cliente Linux, instale um cliente CIFS. Essa configuração é necessária apenas uma vez em cada servidor Linux.
Conecte-se à instância ECS Linux. Para mais informações, consulte Métodos de conexão.
-
Instale o cliente CIFS.
Ubuntu and Debian
Use a ferramenta de gerenciamento de pacotes apt-get.
sudo apt-get update sudo apt-get install cifs-utilsRHEL, CentOS, and Alibaba Cloud Linux
Use o gerenciador de pacotes yum.
sudo yum install cifs-utilsOpenSUSE and SLES12-SP2
Use a ferramenta zypper.
sudo zypper install cifs-utilsCoreOS
Use o método a seguir para instalar o cliente:
-
Configure o SELinux.
sed -i 's/SELINUXTYPE=mcs/SELINUXTYPE=targeted/' /etc/selinux/config -
Compile manualmente as ferramentas do cliente CIFS no CoreOS.
Siga estas etapas para iniciar um contêiner Fedora e compilar as ferramentas do cliente CIFS. Como alternativa, baixe o kit de ferramentas CIFS oficial da Alibaba Cloud para CoreOS e copie-o para o diretório /tmp/ ou /bin.
-
No CoreOS, inicie um contêiner Fedora para compilar o cifs-utils.
docker run -t -i -v /tmp:/cifs fedora /bin/bash -
No ambiente Docker, execute os comandos a seguir em sequência.
-
yum groupinstall -y "Development Tools" "Development Libraries" -
yum install -y bzip2 -
curl https://download.samba.org/pub/linux-cifs/cifs-utils/cifs-utils-6.9.tar.bz2 --output cifs-utils-6.9.tar.bz2; -
bunzip2 cifs-utils-6.9.tar.bz2 && tar xvf cifs-utils-6.9.tar -
cd cifs-utils-6.9; ./configure && make -
cp mount.cifs /cifs/ -
exit
-
-
-
Montar o sistema de arquivos SMB
No Linux, você pode montar um sistema de arquivos NAS SMB manual ou automaticamente. A montagem manual é temporária e deve ser repetida sempre que o servidor reiniciar. A montagem automática é persistente e não precisa ser refeita após a reinicialização. Para garantir que a montagem persista após a reinicialização, recomendamos configurar a montagem automática após montar o sistema de arquivos manualmente com sucesso.
Montagem manual
Para montar o sistema de arquivos NAS SMB em uma instância ECS Linux, use o endereço do destino de montagem.
Conecte-se à instância ECS Linux. Para mais informações, consulte Métodos de conexão.
-
Execute o comando a seguir para montar o sistema de arquivos.
sudo mount -t cifs //file-system-id.region.nas.aliyuncs.com/myshare /mnt -o vers=2.1,guest,uid=0,gid=0,dir_mode=0755,file_mode=0755,mfsymlinks,cache=strict,rsize=1048576,wsize=1048576A sintaxe do comando é:
sudo mount -t cifs //<mount-target-address>/myshare <mount-directory> -o <mount-options>Parâmetro
Descrição
Tipo de sistema de arquivos
Ao montar um sistema de arquivos SMB em um sistema operacional Linux, especifique o parâmetro
-t cifs.Endereço do destino de montagem
Endereço do destino de montagem gerado automaticamente ao criar um destino de montagem para o sistema de arquivos. Substitua o espaço reservado pelo valor real. Para obter o endereço do destino de montagem, faça login no NAS console, clique no ID do sistema de arquivos de destino, clique em Mount Targets e passe o mouse sobre o ícone
na coluna Mount Target.myshare
Nome do diretório compartilhado do sistema de arquivos SMB. Este nome não pode ser alterado.
Diretório de montagem
Diretório local onde você deseja montar o sistema de arquivos, como /mnt/sharepath.
Opções de montagem
Especifique as opções de montagem obrigatórias adicionando o parâmetro
-o:-
vers: Versão do protocolo SMB. As versões 2.1 e posteriores são suportadas.
-
guest: Habilita o acesso como convidado, que não requer senha. Esta opção é necessária para clientes que usam autenticação NTLM.
-
rsize: Tamanho máximo dos dados em bytes para cada solicitação de leitura. Recomendamos definir este valor como 1048576 (1 MB).
-
wsize: Tamanho máximo dos dados em bytes para cada solicitação de gravação. Recomendamos definir este valor como 1048576 (1 MB).
Especifique as opções de montagem opcionais adicionando o parâmetro
-o:-
uid: ID de usuário do proprietário do arquivo após a montagem do sistema de arquivos. Se esta opção não for especificada, o valor padrão será 0.
-
gid: ID de grupo do proprietário do arquivo após a montagem do sistema de arquivos. Se esta opção não for especificada, o valor padrão será 0.
-
dir_mode: Permissões para diretórios. O valor deve começar com 0, como 0755 ou 0644. Se esta opção não for especificada, o valor padrão será 0755.
-
file_mode: Permissões para arquivos regulares. O valor deve começar com 0, como 0755 ou 0644. Se esta opção não for especificada, o valor padrão será 0755.
-
mfsymlinks: Habilita o suporte a links simbólicos.
-
cache:
-
cache=strict: Habilita o cache no lado do cliente para o sistema de arquivos SMB. Esta é a configuração padrão caso a opção de cache não seja especificada.
-
cache=none: Desabilita o cache no lado do cliente para o sistema de arquivos SMB.
-
-
atime|relatime: Se o seu negócio não for altamente sensível aos horários de acesso aos arquivos, não utilize a opção atime. Por padrão, o sistema de arquivos é montado com a opção relatime.
Nota-
Um administrador autorizado tem controle total sobre o sistema de arquivos SMB.
-
Execute o comando
mount | grep cifspara consultar as informações do destino de montagem. -
Caso utilize uma distribuição Linux sem suporte, recomendamos fortemente o uso de uma versão do kernel 3.10.0-514 ou posterior. Se a versão do kernel Linux for 3,7 ou anterior, defina o parâmetro
cache=strictnas opções de montagem. Execute o comandouname -apara verificar a versão atual do kernel.
-
-
Execute o comando
mount -lpara verificar o resultado da montagem.Se a saída for semelhante à seguinte, a montagem foi bem-sucedida.
debugfs on /sys/kernel/debug type debugfs (rw,relatime) hugetlbfs on /dev/hugepages type hugetlbfs (rw,relatime) mqueue on /dev/mqueue type mqueue (rw,relatime) sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw,relatime) tmpfs on /run/user/0 type tmpfs (rw,nosuid,nodev,relatime,size=800928k,mode=700) //xxx-cn-hangzhou.nas.aliuncs.com/mushare on /mnt type cifs (rw,relatime,vers=2.1,sec=none,cache=strict,domain=,uid=0,noforceuid,gid=0,noforcegid,addr=xxx,file_mode=0755,dir_mode=0755,soft,nounix,serverino,mapposix,rsize=1048576,wsize=1048576,echo_interval=60,actimeo=1)Após uma montagem bem-sucedida, execute o comando
df -hpara visualizar as informações de capacidade do sistema de arquivos atual.Se a montagem falhar, solucione o problema. Para mais informações, consulte Solucione falhas de montagem SMB no Linux.
-
Após a montagem do sistema de arquivos, acesse-o a partir da instância ECS Linux para realizar operações de leitura ou escrita.
Acesse e utilize o sistema de arquivos NAS SMB como um diretório comum. Exemplo:
[root@ixxxx ~]# mkdir /mnt/dir1 [root@ixxxx ~]# mkdir /mnt/dir2 [root@ixxxx ~]# touch /mnt/file1 [root@ixxxx ~]# echo 'some file content' > /mnt/file2 [root@ixxxx ~]# ls /mnt dir1 dir2 file1 file2 tmp
(Opcional) Montagem automática
Configure o arquivo /etc/fstab na instância ECS Linux para montar automaticamente o sistema de arquivos SMB quando a instância reiniciar.
Antes de configurar a montagem automática, certifique-se de que a montagem manual foi bem-sucedida. Isso ajuda a evitar falhas na inicialização da instância ECS.
-
Abra o arquivo de configuração /etc/fstab e adicione a configuração de montagem automática.
Substitua <file-system-id.region.nas.aliyuncs.com> pelo endereço do destino de montagem real do sistema de arquivos NAS, por exemplo,
237*******-*****.cn-hangzhou.nas.aliyuncs.com.Substitua </mnt> pelo diretório de montagem local, por exemplo,
/mnt.
//file-system-id.region.nas.aliyuncs.com/myshare /mnt cifs vers=3,guest,uid=0,gid=0,dir_mode=0755,file_mode=0755,mfsymlinks,cache=strict,rsize=1048576,wsize=1048576 0 0Para obter uma descrição dos principais parâmetros do exemplo, consulte a tabela de parâmetros para o comando de montagem manual. Os demais parâmetros estão descritos a seguir.
Parâmetro
Descrição
0 (primeiro valor após wsize)
Um valor diferente de zero indica que o sistema de arquivos deve passar por backup pelo comando dump. Para um sistema de arquivos NAS, este valor deve ser 0.
0 (segundo valor após wsize)
Ordem em que o comando fsck verifica os sistemas de arquivos durante a inicialização. Para um sistema de arquivos NAS, este valor deve ser 0, indicando que o fsck não deve ser executado na inicialização.
-
Execute o comando
rebootpara reiniciar a instância ECS.ImportanteReiniciar a instância ECS interrompe seus serviços. Recomendamos realizar esta operação fora dos horários de pico.
-
Verifique se a montagem automática foi bem-sucedida.
NotaDentro de um minuto após a reinicialização da instância ECS, execute o comando
df -hpara confirmar que o sistema de arquivos NAS está montado.
Casos de uso
É possível configurar diferentes opções de montagem para diversos casos de uso, visando obter o desempenho ideal do sistema de arquivos. As seções a seguir descrevem casos de uso comuns e suas configurações de opções de montagem recomendadas.
Acesso compartilhado para Linux
Diretórios home multiusuário
Acesso compartilhado para servidores web
Acesso compartilhado para Windows e Linux
Controle de acesso
Os sistemas de arquivos SMB do Alibaba Cloud NAS suportam autenticação de usuário e controle de permissões no nível do sistema de arquivos com base em um domínio Active Directory (AD). Ao acessar um sistema de arquivos SMB como usuário de domínio, é possível implementar controle de acesso no nível de arquivos e diretórios.
Para mais informações sobre como implementar autenticação de usuário e controle de acesso no nível do sistema de arquivos com base em um sistema AD, consulte Associe um destino de montagem SMB a um domínio AD e Monte e use um sistema de arquivos SMB em um cliente Linux como usuário de domínio AD.
Documentos relacionados
Para fazer backup dos dados em um sistema de arquivos SMB, consulte Faça backup de um sistema de arquivos NAS de uso geral.
Também é possível ativar a lixeira. Caso exclua arquivos acidentalmente de um sistema de arquivos NAS de uso geral, utilize a lixeira para restaurar esses arquivos e seus metadados, como UIDs, GIDs e ACLs. Para mais informações, consulte Lixeira.
Para montar e acessar um sistema de arquivos SMB a partir de um servidor local ou data center on-premises, consulte Acesse um sistema de arquivos a partir de um data center on-premises.
Caso precise montar um sistema de arquivos entre VPCs, regiões ou contas diferentes, utilize a Cloud Enterprise Network (CEN). Para mais informações, consulte Use o CEN para montar um sistema de arquivos NAS em VPCs na mesma região ou Monte um sistema de arquivos NAS entre contas e regiões usando o CEN.