CentOS挂载远程存储的技巧有哪些
导读:CentOS挂载远程存储的实用技巧 一、选型与准备 明确协议与场景:Linux 之间优先用 NFS(原生、高效);访问 Windows 共享用 SMB/CIFS;临时开发或跨公网环境可用 SSHFS;对象存储建议走专用客户端而非挂载;传统...
CentOS挂载远程存储的实用技巧
一、选型与准备
- 明确协议与场景:Linux 之间优先用 NFS(原生、高效);访问 Windows 共享用 SMB/CIFS;临时开发或跨公网环境可用 SSHFS;对象存储建议走专用客户端而非挂载;传统 FTP 可用 FUSE 工具挂载但功能受限。
- 安装客户端工具:NFS 用 nfs-utils,SMB 用 cifs-utils,SSHFS 用 fuse-sshfs,FTP 用 curlftpfs。
- 创建挂载点并规划权限:如 /mnt/nfs、/mnt/cifs;确保本地运行用户与远端共享的 UID/GID 一致,避免权限错乱。
- 网络与防火墙:确认网络连通;放行必要服务或端口(NFS 依赖 rpcbind 111/TCP、nfsd 2049/TCP,以及 mountd/statd/lockd 等;SMB 常用 445/TCP);生产环境建议启用 NFSv4 或 SMBv3 加密。
二、常用协议快速上手
- NFS(Linux→Linux)
- 安装与依赖:sudo yum install -y nfs-utils;systemctl enable --now rpcbind。
- 探测共享:showmount -e < nfs_server_ip> 。
- 手动挂载:sudo mount -t nfs :/path /mnt/nfs。
- 开机自动挂载:/etc/fstab 添加
:/path /mnt/nfs nfs defaults,_netdev,nofail 0 0
提示:用 mount -a 测试 fstab 语法是否正确。
- SMB/CIFS(访问 Windows 或 Samba)
- 安装:sudo yum install -y cifs-utils。
- 凭据文件(推荐):/etc/cifs-credentials
username=youruser
password=yourpass
domain=WORKGROUP - 手动挂载:sudo mount -t cifs //server/share /mnt/cifs -o credentials=/etc/cifs-credentials,iocharset=utf8
- 开机自动挂载:/etc/fstab
//server/share /mnt/cifs cifs credentials=/etc/cifs-credentials,iocharset=utf8 0 0
- SSHFS(基于 SSH 的 FUSE)
- 安装:sudo yum install -y fuse-sshfs。
- 手动挂载:sshfs user@host:/remote/dir /mnt/sshfs
- 开机自动挂载(需免密登录):/etc/fstab
sshfs#user@host:/remote/dir /mnt/sshfs fuse.sshfs defaults,_netdev 0 0
- FTP(FUSE,功能有限)
- 安装:sudo yum install -y curlftpfs(部分版本需 EPEL)。
- 手动挂载:curlftpfs ftp://user:pass@host /mnt/ftp
- 凭据文件:~/.netrc(machine host login user password pass)后可免参挂载。
- 卸载:fusermount -u /mnt/ftp 或 umount /mnt/ftp。
三、稳定性与安全加固
- 使用 _netdev(网络就绪后再挂载)与 nofail(启动阶段允许失败)提升开机稳健性。
- 防火墙:NFS 建议 firewall-cmd --permanent --add-service=nfs & & firewall-cmd --reload;或精细放行 111/TCP、2049/TCP 及 mountd/statd/lockd 端口。
- 权限与身份:NFS 服务端 /etc/exports 合理设置 rw/sync、root_squash/no_root_squash;客户端确保 UID/GID 一致;SMB 使用最小权限账号与凭据文件(权限 600)。
- 加密与版本:优先 NFSv4 或 SMBv3(含加密与完整性),避免明文传输。
- SELinux:遇到“权限被拒”时,先排查策略与布尔值,必要时临时 setenforce 0 验证,再恢复并配置正确策略。
- 凭据安全:SMB/CIFS 与 SSHFS 均建议使用凭据文件并设置 600 权限,禁止命令行明文密码。
四、性能调优与故障排查
- NFS 性能:根据网络与存储协商调整 rsize/wsize(如 8192/8192 或更高);生产常用 hard,intr 组合以兼顾一致性与可中断性;大文件顺序读写可适当增大块大小。
- 连接与连通性:先 ping、再 telnet/nc 到 2049(NFS)、445(SMB);NFS 可用 showmount -e 验证导出列表;必要时抓包或查看系统日志。
- 端口固定(NFSv3 环境):在 /etc/sysconfig/nfs 固定 LOCKD_TCPPORT/LOCKD_UDPPORT/MOUNTD_PORT/STATD_PORT,并在防火墙放行,便于审计与排障。
- 变更与卸载:变更前确认无进程占用挂载点(如 lsof/fuser),必要时 fuser -m -k 终止;再执行 umount。
- 验证:mount、df -h、ls 挂载点内容;fstab 修改后用 mount -a 验证,避免重启失败。
五、典型场景与命令清单
- Linux 集群共享目录(NFS)
- 安装:sudo yum install -y nfs-utils;systemctl enable --now rpcbind
- 探测:showmount -e 10.0.0.10
- 挂载:sudo mount -t nfs 10.0.0.10:/data /mnt/nfs
- 持久化:/etc/fstab 加 10.0.0.10:/data /mnt/nfs nfs defaults,_netdev,nofail 0 0
- 访问 Windows 共享(SMB/CIFS)
- 安装:sudo yum install -y cifs-utils
- 凭据:/etc/cifs-credentials(600)
- 挂载:sudo mount -t cifs //10.0.0.20/share /mnt/cifs -o credentials=/etc/cifs-credentials,iocharset=utf8
- 持久化:/etc/fstab 加 //10.0.0.20/share /mnt/cifs cifs credentials=/etc/cifs-credentials,iocharset=utf8 0 0
- 临时开发环境(SSHFS)
- 安装:sudo yum install -y fuse-sshfs
- 挂载:sshfs dev@10.0.0.30:/home/dev /mnt/sshfs
- 卸载:fusermount -u /mnt/sshfs
- 传统 FTP 只读场景(curlftpfs)
- 安装:sudo yum install -y curlftpfs
- 挂载:curlftpfs ftp://user:pass@10.0.0.40 /mnt/ftp
- 卸载:fusermount -u /mnt/ftp
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: CentOS挂载远程存储的技巧有哪些
本文地址: https://pptw.com/jishu/787834.html
