linux创建一个目录并限制其大小

 

假设生成100MB的磁盘镜像 ,块大小为1024B

[根@ AMH〜]# dd if = / dev / zero of = / root / disk.img bs = 1024 count = 102400

记录了102400+0 的读入

记录了102400+0 的写出

104857600字节(105 兆字节)已复制,0.944818 秒,111 MB/秒

关联磁盘镜像与块设备(loop0到loop7均可使用)

[根@ AMH〜]# losttup / dev / loop0 /root/disk.img

格式化

[根@ AMH〜]# mkfs.ext4 / dev / loop0

mke2fs 1.41.12 (17-2010年5月)

丢弃设备块: 完成

文件系统标签=

操作系统:的Linux

块大小=1024 (log = 0)

分块大小=1024 (log = 0)

步幅= 0, 条纹宽度= 0块

25688 索引节点, 102400 块

5120 块 (5.00%) 保留给超级用户

第一个数据块=1

文件系统最大块数= 67371008

13 块组

8192 每组块, 8192 每组碎片

1976 每组inode

存储在块上的超级块备份:

8193, 24577, 40961, 57345, 73729

正在写入inode表: 完成

创建日记 (4096 块): 完成

编写超级块和文件系统记帐信息: 完成

该文件系统将在每个 32 坐骑或

180 天, 以先到者为准. 使用tune2fs -c或-i覆盖.

创建目录,并挂载

[根@ AMH〜]# mkdir -p / mnt / area0

[根@ AMH〜]# 挂载/ dev / loop0 / mnt / area0 /

检查创建目录的大小

[根@ AMH〜]# df -h

已使用的文件系统大小可用百分比已安装在

/dev / mapper / VolGroup-lv_root 28G 12G 15G 44% /

tmpfs 301M 16K 301M 1% /dev / shm

/dev / sda1 485M 35M 426M 8% /开机

/开发/循环0 97M 5.6M 87M 7% /mnt /面积0

拷一个大于100MB的文件

[root @ AMH选择]# ll -h web.tar.gz

-w–[R– 1 根根251M 3月 14 2016 web.tar.gz

[root @ AMH选择]# cp web.tar.gz / mnt / area0 /

cp: 正在写入”/mnt / area0 / web.tar.gz”: 设备上没有空间

[root @ AMH选择]# df -h

已使用的文件系统大小可用百分比已安装在

/dev / mapper / VolGroup-lv_root 28G 12G 15G 44% /

tmpfs 301M 16K 301M 1% /dev / shm

/dev / sda1 485M 35M 426M 8% /开机

/开发/循环0 97M 95M 0 100% /mnt /面积0

拷一个小于100M的文件

[root @ AMH选择]# cp cloud.sql / mnt / area0

[root @ AMH选择]# ll /mnt/area0/cloud.sql

-w–[R– 1 根根 5610502 4月 1 10:43 /mnt / area0 / cloud.sql

[root @ AMH选择]# ll -h /mnt/area0/cloud.sql

-w–[R– 1 根根5.4M 4月 1 10:43 /mnt / area0 / cloud.sql

 

系统重启后,目录的内容会丢失,需要重新关联镜像和循环设备,并挂载到原路径,

挂载不需要指定磁盘格式,因为之前已经格式化过.

[根@ AMH〜]# cd / mnt / area0

[root @ AMH区域0]# ls

[root @ AMH区域0]# 光盘 ..

[root @ AMH mnt]# 挂载/ dev / loop0 / mnt / area0

山: 您必须指定文件系统类型

[root @ AMH mnt]# 挂载-t ext4 / dev / loop0 / mnt / area0

山: 错误的fs类型, 不好的选择, / dev / loop0上的错误超级块,

缺少代码页或帮助程序, 或其他错误

(这可能是您实际上使用的IDE设备吗?

ide-scsi,因此需要sr0或sda?)

在某些情况下,可以在syslog中找到有用的信息 – 尝试

dmesg | 尾巴左右

[root @ AMH mnt]# 挂载/ dev / loop0 / mnt / area0

山: 您必须指定文件系统类型

[root @ AMH mnt]# losttup / dev / loop0 /root/disk.img

[root @ AMH mnt]# 挂载/ dev / loop0 / mnt / area0

[root @ AMH mnt]# cd / mnt / area0

[root @ AMH区域0]# ls

cloud.sql丢失+找到

[root @ AMH区域0]# df -h

已使用的文件系统大小可用百分比已安装在

/dev / mapper / VolGroup-lv_root 28G 12G 15G 44% /

tmpfs 301M 16K 301M 1% /dev / shm

/dev / sda1 485M 35M 426M 8% /开机

/dev / loop0 97M 11M 81M 12% /mnt /面积0

开机自动挂载

vim /bin/mount_fs.sh

#!/垃圾桶

losttup / dev / loop0 /root/disk.img

挂载/ dev / loop0 / mnt / area0

chmod + x /bin/mount_fs.sh

vim /etc/rc.local

/bin / mount_fs.sh

若有多个设备需要挂载到不同目录汇总,都可以写入mout_fs.sh中

还有一种方法是通过 磁盘配额实现, 没有该方法简单.

但该方法在开始创建目录时就占用了一定空间.

发表评论