linux 扩展某个目录下空间大小,方法如下:
1)新建一个有足够空间的分区给你要搬移的目录,比如/home。
2 ) 新建一个目录。
$mkdir /mnt/newhome3)把新建的分区挂载到新建的目录下。
$sudo mount -t ext3 /dev/hda5 /mnt/newhome#这里假设新建的分区是ext3类型的,并且是在/dev/hda5
4)把整个/home都拷贝过去。
$cd /home/$find . -depth -print0 | cpio --null --sparse -pvd /mnt/newhome/
5)卸载 。
$sudo umount /mnt/newhome6)把原来的/home 改名。
$sudo mv /home /old_home7)新建一个/home。
sudo mkdir /home8 ) 把分区挂载过来。
$sudo mount /dev/hda5 /home9)在 “/etc/fstab” file里加上如下代码。
/dev/hda5 /home ext3 nodev,nosuid 0 2#让系统启动的时候就自动挂载。
10)把旧的home删除。
$sudo rm -r /old_homeyum install quota
制作文件系统,并以支持配额功能的方式挂载文件系统
mkfs.ext4 /dev/sdb1
mount /dev/sdb1 /tmp
mount -o remount,usrquota,grpquota /dev/sdb1
查看磁盘挂载时是否启用磁盘配额技术
mount
要想永久挂载(需在配置文件里,加入usrquota,grpquota这两个参数)
vim /etc/fstab
/dev/sdb1 /tmp ext4 defaults,usrquota,grpquota 0 0
检测磁盘配额并生成配额文件(若是出错,请关闭selinux)
quotacheck -cugv /tmp #此命令会在/tmp下生成两个文件
#解释:
-c 创建配额文件,
-u (-g) 扫描磁盘空间,计算每个用户(组)识别码所占用的目录和文件数,
-a 扫描在/etc/fstab文件里,有加入quota设置的分区,
-d 详细显示指令执行过程,便于排错。
-R 排除根目录所在分区
用户和组帐号的配额设置
useradd wsfnk #先创建一个用户,若有就不用创建了
edquota -u wsfnk #-g 表示 wsfnk组,在类似vim界面,编辑限制大小,
Disk quotas for user wsfnk (uid 1000):
Filesystem blocks soft hard inodes soft hard
/dev/sdb1 0 20 50 1 0 0
#对其中各字段解释如下:
#Filesystem下显示实现磁盘配额的分区;
#blocks下为当前已经使用的大小,不用修改;
#soft为软限制,超出后会给出警告,超出的部分默认会保存7天;
#hard为硬限制,不可超越的限制(软硬限制默认单位都是KB);
#后面的两个相同的soft、hard分别表示分区中这个用户可以创建的文件数目软硬限制;
#本例中设置,qingsword可以使用/dev/sdb1分区的软限制大小10KB,硬限制20KB,可创建的文件个数软限制是3个,硬限制5个;
edquota参数
-u :设置用户的quta,这是预设的参数
-g :设置群组的quota
-p 源用户名称 :将源用户的quota设置套用到其他用户或组
-t :设置宽限期限
激活磁盘配额
quotaon -ugv /tmp
注意:磁盘配额中的blocks,不是fdisk里看到的blocks,而是表示1k
测试是否限制会生效
写数据
mkdir /tmp/test
chmod 777 /tmp/test
切换用户wsfnk
su wsfnk
cd /tmp/test
dd if=/dev/zero of=wss.test bs=1k count=500
关闭磁盘配额
#关闭单个磁盘的磁盘配额
quotaoff /sdb1
#关闭所有已经开启的磁盘配额
quotaoff -a
#反之,开启所有磁盘配额
quotaon -a
#如果不再使用磁盘配额,可以将配置文件也删除
rm -rf /sdb1/aquota.*
#最后删除/etc/fstab中的自动挂载即可。 详情查看 网页链接
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)