设置文件数配额
hdfs dfsadmin -setQuota <N> <directory>...<directory>
例如:设置目录下的文件总数为1000个hdfs dfsadmin -setQuota 1000 /p/work
清除配额
hdfs dfsadmin -clrQuota <directory>...<directory>
设置空间配额
hdfs dfsadmin -setSpaceQuota <N> <directory>...<directory>
例如:hdfs dfsadmin -setSpaceQuota 9T /p/work
清除目录大小配额
dfsadmin -clrSpaceQuota <directory>...<director>
查看目录占用情况
字段说明
字段 | 说明 |
QUOTA | 目录数+文件数的限制 |
REM_QUOTA | 可用的目录数+文件数 |
SPACE_QUOTA | 字节数限制 |
REM_SPACE_QUOTA | 可用字节数 |
DIR_COUNT | 目录数 |
FILE_COUNT | 文件数 |
CONTENT_SIZE | 当前文件大小 |
PATHNAME | HDFS路径 |
#!/bin/sh export HADOOP_CONF_DIR=/home/hdfs/balancer/hadoop-conf linesum=$(cat userquota.txt | wc -l) let linesum=linesum+1 if [ $linesum -gt 0 ] then for (( i = 1 ; i < $linesum ; i++ )) do size=$(sed -n "$i p" userquota.txt | awk '{print $4*3}')T dir=$(sed -n "$i p" userquota.txt| awk '{print $1}') hdfs dfsadmin -setSpaceQuota $size $dir done else echo "txt is nothing" fi