跳到主内容

利用回环设备实现NFS磁盘配额

利用回环设备实现NFS磁盘配额

嵌入式系统软件开发过程中经常会使用NFS(网络文件系统)共享文件, 如果多人使用,可能需要做配额管理。quota 当然可以,但有点杀机焉用牛刀的感觉。利用unix的回环设备(loop device) 做配额管理,简单、方便,并且不需要对原来的物理文件系统做任何修改。当然,性能上会有损失(没有评估)。

以Ubuntu12.04 为例, 配置过程如下:

  1. 生成回环文件

  • sudo dd if=/dev/zero of=tony.img bs=1G count=10

  1. 配置回环设备

  • sudo losetup /dev/loop1 ./tony.img

  1. 建立文件系统

  • sudo mkfs.ext4 /dev/loop1

  1. 解除回环设备的映射

  • sudo losetup -d /dev/loop1

  1. 开机自动mount回环设备

  • 编辑 /etc/fstab, 添加新的一行

    /media/sda6/share/tony.img /media/sda6/share/tony ext4 loop, 0 0

  • 挂载回环设备

    • sudo mount -a

  • 利用df命令查看当前文件系统信息, 如过设备被正常挂载, 会有类似信息:

    /dev/loop0 10G  435M  9.1G   5% /media/sda6/share/tony

  1. 编辑 /etc/exports 将回环设备添加到NFS共享目录

  • /media/sda6/share/tony *(rw,no_root_squash)

  • restart NFS server

    • sudo /etc/init.d/nfs-kernel-server restart

  1. 挂载NFS

  • sudo mount -t nfs 172.29.43.183:/media/sda6/share/tony /mnt

  • 利用df命令查看NFS的挂载信息

172.29.43.183:/media/sda6/share/tony   10G  434M  9.1G   5% /media/ipcam_share

评论