制作出一个大文件,将其格式化后挂载,类似于一个额外的分区,使用这种方法可以解决分区不良的情况。
创建5120个1M的文件到/data/tmp中
dd if=/dev/zero of=/data/tmp bs=1M count=5120
使用mke2fs该指令,格式化成ext2格式。加上-j后,将ext2的文件系统转换为ext3文件系统。-t指定格式化成哪个文件系统, 如 ext2、ext3、ext4
mke2fs -t ext4 /data/tmp
备份
cp -ap /tmp /tmp.old
挂载
mount -o loop,noexec,nosuid,rw /data/tmp /tmp
loop:用来把一个文件当成硬盘分区挂接上系统
授权
chmod 1777 /tmp
复原原有的内容
cp -ap /tmp.old/* /tmp/
开机自动挂载
vi /etc/fstab
/data/tmp /tmp ext4 loop,nosuid,noexec,rw 0 0
mount -o remount /home # 重新挂载
mount -a # 加载/etc/fstab文件
-o 指定mount挂载扩展参数,常见的扩展参数指令有rw、remount、loop等
atime/noatime # 更新访问时间/不更新访问时间。访问分区时,是否更新文件的访问时间,默认更新
async/sync # 异步/同步 默认异步
auto/noauto # 自动/手动 mount -a命令执行时,是否会自动安装/etc/fstab 文件内容挂载,默认自动
defaults # 定义默认值,相当于rw、suid、dev、exec、auto、nouser、async这七个选择
exec/noexec # 执行/不执行,设定是否允许文件系统中执行可执行文件,默认是exec允许
remount # 重新挂载已经挂载的文件系统,一般用于修改特殊权限
rw/ro # 读写/只读,文件系统挂载时,是否有读写的权限,默认rw
suid/nosuid # 具有/不具有SUID权限,设定文件系统是否具有SUID权限,默认具有
user/nouser # 允许/不允许普通用户挂载,设定文件系统是否允许普通用户挂载,默认不允许,只有root可以挂载分区