Pular para o conteúdo
Skillpedia
Diversos48 mil · #3690

nfs-storage

Ajuda seu agente a configurar servidores e clientes NFS para compartilhamento de arquivos em rede no Linux.

O que ela faz

Esta ferramenta ajuda a configurar computadores para compartilhar arquivos em uma rede. Ela permite que um computador atue como um 'servidor' que armazena arquivos e outros computadores ('clientes') acessem esses arquivos como se estivessem em seus próprios discos.

Quando usar

  • ✓Quando você precisa que vários computadores Linux acessem os mesmos arquivos.
  • ✓Para criar um espaço de armazenamento centralizado para dados de aplicativos ou pastas de usuários.
  • ✓Ao configurar sistemas que usam contêineres (como Kubernetes) e precisam de um local de armazenamento compartilhado.

Exemplo do que pedir para a IA

“Configure um servidor NFS para compartilhar a pasta /dados com acesso de leitura e escrita para a rede 192.168.1.0/24.”

Quer saber mais? Abra as seções abaixo.

Como usar

O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.

Link da skill

https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/nfs-storage/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/nfs-storage/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
Como funciona

Você instala o software NFS no servidor e nos clientes. Em seguida, configura quais pastas no servidor serão compartilhadas e como os clientes podem acessá-las, definindo permissões.

Instalação

Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.

No terminal (Claude Code, Codex, Cursor), na pasta do projeto:

npx skills add sickn33/agentic-awesome-skills --skill nfs-storage

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/nfs-storage/SKILL.md -o SKILL.md
Conteúdo técnico (SKILL.md)

Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.

Armazenamento NFS

Configure servidores e clientes NFS para compartilhamento de arquivos em rede entre sistemas Linux. Abrange configuração de servidor NFSv4, opções de exportação, montagem de cliente, autofs para montagens sob demanda, segurança Kerberos, ajuste de desempenho e integração com Kubernetes.

Quando Usar

  • Compartilhar diretórios entre múltiplos servidores Linux (fazendas web, clusters de compilação)
  • Fornecer armazenamento compartilhado para cargas de trabalho em contêineres (Kubernetes ReadWriteMany)
  • Centralizar diretórios home ou dados de aplicativos em uma frota
  • Configurar um ambiente de desenvolvimento com arquivos de projeto compartilhados
  • Migrar de armazenamento local para armazenamento conectado à rede

Pré-requisitos

  • Servidor NFS: nfs-kernel-server (Debian/Ubuntu) ou nfs-utils (RHEL/CentOS)
  • Cliente NFS: nfs-common (Debian/Ubuntu) ou nfs-utils (RHEL/CentOS)
  • Conectividade de rede entre servidor e clientes (TCP/UDP 2049 para NFSv4)
  • Regras de firewall permitindo tráfego NFS
  • Para NFSv4 Kerberos: krb5-user e um KDC funcionando

Configuração do Servidor NFS

Instalação

# Debian / Ubuntu
apt update && apt install -y nfs-kernel-server

# RHEL / CentOS
dnf install -y nfs-utils

# Enable and start the NFS server
systemctl enable --now nfs-server

# Verify NFS is running
systemctl status nfs-server
rpcinfo -p | grep nfs

Configuração de Exportação (/etc/exports)

# /etc/exports
# Syntax: <directory> <client-spec>(options)

# Share /data to a specific subnet with read-write access
/data 10.0.0.0/24(rw,sync,no_subtree_check,no_root_squash)

# Share /shared read-only to everyone
/shared *(ro,sync,no_subtree_check)

# Share /home to specific hosts
/home server01.example.com(rw,sync,no_subtree_check)
/home server02.example.com(rw,sync,no_subtree_check)

# Share /var/nfs/projects with root squash (default, map root to nobody)
/var/nfs/projects 10.0.0.0/24(rw,sync,no_subtree_check,root_squash)

# NFSv4 pseudo-root export (recommended for NFSv4)
/srv/nfs 10.0.0.0/24(rw,sync,fsid=0,crossmnt,no_subtree_check)
/srv/nfs/data 10.0.0.0/24(rw,sync,no_subtree_check,no_root_squash)
/srv/nfs/shared 10.0.0.0/24(ro,sync,no_subtree_check)

Opções de Exportação Explicadas

Opção Descrição
rw Acesso de leitura e gravação
ro Acesso somente leitura
sync Grava dados em disco antes de responder (seguro, mais lento)
async Responde antes que os dados sejam gravados em disco (rápido, risco de corrupção)
no_subtree_check Desabilita a verificação de subdiretório (melhora a confiabilidade)
root_squash Mapeia o root remoto (UID 0) para nobody (padrão, mais seguro)
no_root_squash Permite que o root remoto atue como root no servidor (use com cautela)
all_squash Mapeia todos os UIDs/GIDs remotos para nobody
anonuid=1000 Mapeia usuários anônimos para um UID específico
anongid=1000 Mapeia grupos anônimos para um GID específico
crossmnt Permite que os clientes naveguem para submontagens
fsid=0 Marca como pseudo-root do NFSv4

Aplicando Alterações de Exportação

# Apply changes to exports (no server restart needed)
exportfs -ra

# Show current exports
exportfs -v

# Export a new directory on the fly (temporary, not persistent)
exportfs -o rw,sync,no_subtree_check 10.0.0.0/24:/tmp/share

# Unexport a directory
exportfs -u 10.0.0.0/24:/tmp/share

Configuração do Firewall do Servidor

# UFW (Ubuntu)
ufw allow from 10.0.0.0/24 to any port nfs
ufw allow from 10.0.0.0/24 to any port 111   # rpcbind (NFSv3)

# firewalld (RHEL/CentOS)
firewall-cmd --permanent --add-service=nfs
firewall-cmd --permanent --add-service=rpc-bind
firewall-cmd --permanent --add-service=mountd
firewall-cmd --reload

# NFSv4 only needs TCP 2049 (no rpcbind or mountd)
firewall-cmd --permanent --add-port=2049/tcp
firewall-cmd --reload

Configuração do Cliente NFS

Montagem Manual

# Install NFS client
apt install -y nfs-common        # Debian/Ubuntu
dnf install -y nfs-utils         # RHEL/CentOS

# Discover exports from the server
showmount -e nfs-server.example.com

# Mount an NFS share manually
mkdir -p /mnt/data
mount -t nfs nfs-server.example.com:/data /mnt/data

# Mount with specific NFS version and options
mount -t nfs -o vers=4.2,tcp,hard,intr nfs-server.example.com:/data /mnt/data

# Verify the mount
mount | grep nfs
df -hT /mnt/data

# Unmount
umount /mnt/data

Montagens Persistentes via /etc/fstab

# Entradas /etc/fstab para NFS

# Montagem NFSv4 básica
nfs-server.example.com:/data  /mnt/data  nfs4  defaults,_netdev  0  0

# Montagem com opções de desempenho e confiabilidade

…
Perguntas frequentes

O que é NFS?

NFS significa Network File System. É um protocolo que permite que um computador acesse arquivos em outro computador pela rede como se fossem locais.

Qual a diferença entre servidor e cliente NFS?

O servidor é o computador que armazena e compartilha os arquivos. O cliente é o computador que acessa os arquivos compartilhados pelo servidor.

Posso compartilhar pastas com acesso somente leitura?

Sim, você pode configurar pastas para serem acessadas apenas para leitura, garantindo que os arquivos não sejam modificados pelos clientes.

Detalhes

Descrição original do autor

Configure NFS servers and clients. Implement network file sharing for Linux systems. Use when setting up shared storage.

repo: sickn33/agentic-awesome-skills

Popularidade

Estrelas no GitHub
48 mil
Posição no ranking
#3690
Licença
MIT
Atualizada em
15/10/2026

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas