Montando o File Storage for Classic no Red Hat Linux

Siga estas instruções para conectar uma instância do IBM Cloud® Compute baseada no Red Hat Enterprise Linux® a um compartilhamento do Network File System ( NFS ). Para obter mais informações sobre como solicitar o IBM Cloud® File Storage for Classic, consulte o tutorial Introdução.

Antes de começar, certifique-se de que o host que irá acessar o volume File Storage for Classic esteja autorizado. Para mais informações, veja Autorizando o host no console Autorizando o host da CLI Autorizando o host com Terraform.

Montando o compartilhamento do File Storage for Classic

  1. Instale as ferramentas necessárias.

    # dnf install nfs-utils
    
  2. Crie um diretório em sua instância.

    mkdir /mnt/test
    
  3. Obtenha as informações do ponto de montagem na página File Storage for Classic Details (Detalhes) no console, com uma chamada de API (SoftLayer_Network_Storage::getNetworkMountAddress()) ou examinando o recurso ibm_storage_file no Terraform.

  4. Monte o compartilhamento remoto.

    # mount -t nfs -o <options> <host:mount_point> /mnt
    

    Exemplo para volumes storage_as_a_service.

    #mount -t nfs -o nfsvers=3 fsf-wdc0403a-fz.service.softlayer.com:/IBM02SEV1414935_66/data01 /mnt
    

    Exemplo para volumes enterprise.

    # mount -t nfs -o nfsvers=3 nfshou0201d-fz.service.softlayer.com:/IBM01SEV1414935_2 /mnt
    

    Se você estiver usando o NFS 4.1, inclua sec=sys no comando de montagem para evitar problemas de propriedade do arquivo. Se você estiver usando NFSv3, NFS ou 4.1, adicione _netdev para aguardar a montagem do armazenamento após o início de todos os componentes de rede. Para obter mais informações sobre o comando mount e suas opções, consulte a página de manual do mount(8).

  5. Verifique se a montagem foi bem-sucedida usando o comando do sistema de arquivos de disco.

    # df -h
    Filesystem Size Used Avail Use% Mounted on
    /dev/xvda2  25G  1.4G  22G    6%   /
    /tmpfs     1.9G     0 1.9G    0%   /dev/shm
    /dev/xvda1 97M    51M  42M   55%
    
  6. Acesse o ponto de montagem e os arquivos de leitura/gravação.

    # touch /mnt/test
    # ls -la /mnt
    total 12
    drwxr-xr-x   2 nobody nobody 4096 Sep 8 15:52 .
    dr-xr-xr-x. 22 root   root   4096 Sep 8 14:30 ..
    -rw-r--r--   1 nobody nobody    0 Sep 8 15:52 test
    

    Os arquivos criados pela raiz têm a propriedade de nobody:nobody. Para exibir a propriedade corretamente, o arquivo idmapd.conf precisa ser atualizado com as configurações corretas do domínio. Para obter mais informações, consulte a seção “Implementação do no_root_squash para o NFS ”(opcional).

  7. Monte o compartilhamento remoto no início. Para concluir a configuração, edite a tabela de sistemas de arquivos (/etc/fstab) para incluir o compartilhamento remoto na lista de entradas montadas automaticamente na inicialização:

    (hostname):/(username) /mnt nfs_version options 0 0
    

    Consulte os exemplos a seguir.

    fsf-wdc0403a-fz.service.softlayer.com:/IBM02SEV1414935_66/data01 /mnt nfs nfsvers=3 0 0
    fsf-wdc0403a-fz.service.softlayer.com:/IBM02SEV1414935_66/data01 /mnt nfs options 0 0
    fsf-wdc0403a-fz.service.softlayer.com:/IBM02SEV1414935_66/data01 /mnt nfs4 options 0 0
    fsf-wdc0403a-fz.service.softlayer.com:/IBM02SEV1414935_66/data01 /mnt nfs _netdev,nfsvers=3 0 0
    

    Para obter mais informações, consulte Uma introdução ao arquivo Linux /etc/fstab.

  8. Verifique se o arquivo de configuração não tem erros.

    # mount -fav
    

    Se o comando for concluído sem erros, sua configuração estará completa.

Gerenciar as permissões de usuário para o conteúdo do compartilhamento de arquivos montado

Como administrador do sistema, você pode gerenciar o acesso aos dados no volume de armazenamento de arquivos montado. Depois que o compartilhamento de arquivos for montado, você poderá refinar o controle de acesso usando os comandos chown e chmod para atribuir permissões de leitura, gravação e execução a usuários e grupos individuais. Para obter mais informações, consulte o tutorial de Red Hat: Como gerenciar as permissões do Linux para usuários, grupos e outros.

Implementando no_root_squash para NFS (opcional)

Por padrão, o NFS faz downgrade de quaisquer arquivos que foram criados com as permissões raiz para o usuário nobody. Esse é um recurso de segurança que impede que os privilégios sejam compartilhados, a menos que solicitados.

A configuração de no_root_squash permite que os clientes raiz retenham permissões raiz no compartilhamento do NFS remoto.

  • No caso de NFSv3, os clientes não precisam fazer nada; o no_root_squash simplesmente funciona.
  • Para NFSv4.1, é necessário configurar o domínio nfsv4 para: slnfsv4.com e iniciar rpcidmapd ou um serviço semelhante usado por seu S.O.

Exemplo

  1. No servidor, defina a configuração do domínio em /etc/idmapd.conf.

    #vi /etc/idmapd.conf
    [General]
    #Verbosity = 0
    #The domain value should be set to the local NFSv4 domain name
    #The default is the host's DNS domain name.
    Domain = slnfsv4.com
    [Mapping]
    Nobody-User = nobody
    Nobody-Group = nobody
    
  2. Execute o nfsidmap -c.

  3. Inicie o rpcidmapd.

    systemctl start rpcidmapd
    systemctl enable rpcidmapd
    

Desmontando o sistema de arquivos

Para desmontar qualquer sistema de arquivos montado atualmente em seu host, execute o comando umount com o nome do disco ou o nome do ponto de montagem.

umount /dev/sdb
umount /mnt