linux shell命令之/dev/zero
/dev/zero是一种非常有用的伪设备,它可用于创建文件,
可以创建RAM文件
#dev1.sh脚本通过/dev/zero建立一个交换文件
cat dev1.sh
#!/bin/bash
#由于root用户的$UID为0, 所以这里设置ROOT_UID
ROOT_UID=0
FILE=/swap
#设置每个文件块的大小和文件块的最小值
BLOCKSIZE=1024
MINBLOCKS=40
#设置创建成功标志
SUCCESS=0
if [ "$UID" -ne "$ROOT_UID" ]
then
echo "Yor are not the user of root"
fi
#如果没在命令行上指定设置的文件块的个数,则默认设置为40块
if [ -n "$1" ]
then
blocks=$1
else
blocks=$MINBLOCKS
fi
#如果设置的文件块个数小于40,则将文件块个数设置为40
if [ "$blocks" -lt $MINBLOCKS ]
then
blocks=$MINBLOCKS
fi
#创建文件
echo "Creating swap file of size $blocks blocks (KB)."
#用0填写文件块
dd if=/dev/zero of=$FILE bs=$BLOCKSIZE count=$blocks
#将文件指定为交换文件
mkswap $FILE $blocks
#激活文件
swapon $FILE
echo "Swap file created and activated."
浙公网安备 33010602011771号